MCP Tools Reference: docsmcp.googleapis.com

الأداة: update_doc

تعدّل هذه الطريقة مستندًا باستخدام طلبات التعديل المجمّعة. يقبل هذا الإجراء طلب documents.batchUpdate (بتنسيق JSON).

يتوافق مع documents.batchUpdate في REST API.

في ما يلي قائمة بالتحديثات المحتملة:

  • replaceAllText: تستبدل جميع مثيلات النص المحدّد.
  • insertText: لإدراج نص في الموقع الجغرافي المحدّد
  • updateTextStyle: تعدّل نمط النص في النطاق المحدّد.
  • createParagraphBullets: لإنشاء نقاط تعداد للفقرات
  • deleteParagraphBullets: لحذف النقاط من الفقرات
  • createNamedRange: لإنشاء نطاق مُعنوَن
  • deleteNamedRange: لحذف نطاق مُعنوَن
  • updateParagraphStyle: تعدّل نمط الفقرة في النطاق المحدّد.
  • deleteContentRange: لحذف محتوى من المستند
  • insertInlineImage: تُدرج هذه السمة صورة مضمّنة في الموقع الجغرافي المحدّد.
  • insertTable: لإدراج جدول في الموقع المحدّد
  • insertTableRow: لإدراج صف فارغ في جدول
  • insertTableColumn: لإدراج عمود فارغ في جدول
  • deleteTableRow: لحذف صف من جدول
  • deleteTableColumn: لحذف عمود من جدول
  • insertPageBreak: تُدرج هذه السمة فاصل صفحات في الموقع الجغرافي المحدّد.
  • deletePositionedObject: تحذف هذه الطريقة عنصرًا تم وضعه من المستند.
  • updateTableColumnProperties: تعدّل خصائص الأعمدة في جدول.
  • updateTableCellStyle: تعدّل هذه السمة نمط خلايا الجدول.
  • updateTableRowStyle: تعدّل نمط الصف في جدول.
  • replaceImage: استبدال صورة في المستند
  • updateDocumentStyle: تعدّل هذه السمة نمط المستند.
  • insertInlineSheetsChart: لإدراج رسم بياني مضمّن من "جداول بيانات Google" في الموقع الجغرافي المحدّد
  • mergeTableCells: لدمج الخلايا في جدول
  • unmergeTableCells: لإلغاء دمج الخلايا في جدول
  • refreshSheetsChart: يعيد تحميل رسم بياني في "جداول بيانات Google".
  • createHeader: لإنشاء عنوان
  • createFooter: لإنشاء تذييل
  • createFootnote: لإنشاء حاشية سفلية
  • replaceNamedRangeContent: تستبدل المحتوى في نطاق مسمّى.
  • updateEmbeddedObject: تعدّل هذه السمة خصائص عنصر مضمّن.
  • updateSectionStyle: تعدّل هذه السمة نمط القسم للنطاق المحدّد.
  • insertSectionBreak: تُدرج هذه السمة فاصل أقسام في الموقع المحدّد.
  • deleteHeader: لحذف رأس من المستند
  • deleteFooter: لحذف تذييل من المستند
  • pinTableHeaderRows: تعدّل عدد صفوف العناوين المثبَّتة في جدول.
  • addDocumentTab: إضافة علامة تبويب مستند
  • deleteTab: لحذف علامة تبويب في مستند
  • updateDocumentTabProperties: تعدّل هذه الطريقة خصائص علامة تبويب المستند.
  • insertPerson: لإدراج إشارة إلى شخص
  • updateNamedStyle: تعدّل نمطًا مسمّى.
  • insertRichLink: إدراج رابط غني بصريًا
  • insertDate: لإدراج تاريخ
  • insertComment: تُدرج هذه الطريقة CommentThread في المستند.
  • addCommentReply: يضيف ردًا إلى CommentThread أو SuggestionThread.
  • updateCommentPost: تعدّل منشورًا حاليًا (منشور رئيسي أو ردّ) ضمن CommentThread أو SuggestionThread.
  • deleteComment: تحذف هذه الطريقة كائن CommentThread.
  • deleteCommentReply: تحذف هذه الطريقة مشاركة ردّ من CommentThread أو SuggestionThread.
  • acceptSuggestion: لقبول اقتراح
  • rejectSuggestion: لرفض اقتراح
  • deleteSuggestion: لحذف اقتراح

يوضّح المثال التالي كيفية استخدام curl لاستدعاء أداة update_doc MCP.

طلب Curl
curl --location 'https://docsmcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_doc",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

مخطط الإدخال

UpdateDocRequest

تمثيل JSON
{
  "documentId": string,
  "requests": [
    {
      object
    }
  ]
}
الحقول
documentId

string

الحقل مطلوب. رقم تعريف المستند المطلوب تعديله. وهو مطابق لـ file_id من أدوات Drive.

requests[]

object (Struct format)

قائمة بالتعديلات التي سيتم تطبيقها على المستند. يجب أن يكون كل طلب كائنًا صالحًا من نوع documents.batchUpdate Request، باستخدام المخطط الموضّح في: https://developers.google.com/workspace/docs/api/reference/rest/v1/documents/request سيتم تطبيق الطلبات بالترتيب الذي تم تحديده. إذا كان أي طلب غير صالح، لن يتم تطبيق أي طلبات.

بنية

تمثيل JSON
{
  "fields": {
    string: value,
    ...
  }
}
الحقول
fields

map (key: string, value: value (Value format))

خريطة غير مرتبة للقيم ذات الأنواع الديناميكية

عنصر يحتوي على قائمة بأزواج "key": value مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

تمثيل JSON
{
  "key": string,
  "value": value
}
الحقول
key

string

value

value (Value format)

القيمة

تمثيل JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
الحقول
حقل الربط kind نوع القيمة يمكن أن يكون التعليق kind إحدى القيم التالية فقط:
nullValue

null

تمثّل هذه السمة null بتنسيق JSON.

numberValue

number

تمثّل رقم JSON. يجب ألا يكون NaN أو Infinity أو -Infinity، لأنّ هذه القيم غير متاحة في JSON. لا يمكن أن يمثّل هذا النوع أيضًا قيم Int64 كبيرة، لأنّ تنسيق JSON لا يتيحها بشكل عام في نوع الأرقام.

stringValue

string

تمثّل سلسلة JSON.

boolValue

boolean

تمثّل قيمة منطقية بتنسيق JSON (القيمة الثابتة true أو false في JSON).

structValue

object (Struct format)

تمثّل هذه السمة عنصر JSON.

listValue

array (ListValue format)

تمثّل مصفوفة JSON.

ListValue

تمثيل JSON
{
  "values": [
    value
  ]
}
الحقول
values[]

value (Value format)

حقل متكرّر للقيم ذات الأنواع الديناميكية

NullValue

تمثّل هذه السمة null بتنسيق JSON.

NullValue هو عنصر فاصل، ويستخدم تعدادًا بقيمة واحدة فقط لتمثيل القيمة الفارغة لاتحاد النوع Value.

يُعدّ الحقل من النوع NullValue غير صالح إذا كانت قيمته أي قيمة أخرى غير 0. ستُصدر معظم أدوات التسلسل ProtoJSON Value مع ضبط null_value كـ null JSON بغض النظر عن قيمة العدد الصحيح، وبالتالي ستُجري رحلة ذهاب وعودة إلى قيمة 0.

عمليات التعداد
NULL_VALUE قيمة فارغة

مخطط النتائج

UpdateDocResponse

تمثيل JSON
{
  "replies": [
    {
      object
    }
  ]
}
الحقول
replies[]

object (Struct format)

الردود من تنفيذ طلبات التعديل المجمّع تتضمّن هذه البيانات الأخطاء والتحذيرات وردود واجهة برمجة التطبيقات الأولية لمساعدة النموذج في إجراء التعديلات. تستخدم الردود غير المعالَجة لواجهة برمجة التطبيقات المخطط الموضّح في: https://developers.google.com/workspace/docs/api/reference/rest/v1/documents/response

بنية

تمثيل JSON
{
  "fields": {
    string: value,
    ...
  }
}
الحقول
fields

map (key: string, value: value (Value format))

خريطة غير مرتبة للقيم ذات الأنواع الديناميكية

عنصر يحتوي على قائمة بأزواج "key": value مثال: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

تمثيل JSON
{
  "key": string,
  "value": value
}
الحقول
key

string

value

value (Value format)

القيمة

تمثيل JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
الحقول
حقل الربط kind نوع القيمة يمكن أن يكون التعليق kind إحدى القيم التالية فقط:
nullValue

null

تمثّل هذه السمة null بتنسيق JSON.

numberValue

number

تمثّل رقم JSON. يجب ألا يكون NaN أو Infinity أو -Infinity، لأنّ هذه القيم غير متاحة في JSON. لا يمكن أن يمثّل هذا النوع أيضًا قيم Int64 كبيرة، لأنّ تنسيق JSON لا يتيحها بشكل عام في نوع الأرقام.

stringValue

string

تمثّل سلسلة JSON.

boolValue

boolean

تمثّل قيمة منطقية بتنسيق JSON (القيمة الثابتة true أو false في JSON).

structValue

object (Struct format)

تمثّل هذه السمة عنصر JSON.

listValue

array (ListValue format)

تمثّل مصفوفة JSON.

ListValue

تمثيل JSON
{
  "values": [
    value
  ]
}
الحقول
values[]

value (Value format)

حقل متكرّر للقيم ذات الأنواع الديناميكية

NullValue

تمثّل هذه السمة null بتنسيق JSON.

NullValue هو عنصر فاصل، ويستخدم تعدادًا بقيمة واحدة فقط لتمثيل القيمة الفارغة لاتحاد النوع Value.

يُعدّ الحقل من النوع NullValue غير صالح إذا كانت قيمته أي قيمة أخرى غير 0. ستُصدر معظم أدوات التسلسل ProtoJSON Value مع ضبط null_value كـ null JSON بغض النظر عن قيمة العدد الصحيح، وبالتالي ستُجري رحلة ذهاب وعودة إلى قيمة 0.

عمليات التعداد
NULL_VALUE قيمة فارغة

تعليقات توضيحية للأدوات

Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ✅