MCP Tools Reference: sheetsmcp.googleapis.com

টুল: insert_dimension

কোনও শিটে নির্দিষ্ট ইন্ডেক্সে সারি বা কলাম যোগ করে।

স্প্রেডশিটের batchUpdate REST API-তে InsertDimensionRequest-এর সাথে সম্পর্কিত: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request

স্কিমা: - spreadsheet_id (স্ট্রিং, প্রয়োজনীয়): আপডেট করার জন্য স্প্রেডশিটের আইডি। - sheet_id (পূর্ণসংখ্যা, প্রয়োজনীয়): যে শিটে ডেটা যোগ করতে হবে তার আইডি। - dimension (স্ট্রিং, প্রয়োজনীয়): "ROWS" অথবা "COLUMNS". - start_index (পূর্ণসংখ্যা, প্রয়োজনীয়): ইনসার্শনের ০-ভিত্তিক শুরুর ইন্ডেক্স (অন্তর্ভুক্ত)। - end_index (পূর্ণসংখ্যা, প্রয়োজনীয়): ইনসার্শনের ০-ভিত্তিক শেষ ইনডেক্স (এক্সক্লুসিভ)। - inherit_from_before (বুলিয়ান, ঐচ্ছিক): ডাইমেনশন প্রপার্টি আগের (true) বা পরের (false) ডাইমেনশন থেকে এক্সটেন্ড করা উচিত কিনা।

insert_dimension MCP টুল কল করার জন্য কীভাবে curl ব্যবহার করতে হয় তা নিম্নলিখিত কোড স্যাম্পেল থেকে জানতে পারবেন।

কার্ল করার অনুরোধ
curl --location 'https://sheetsmcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "insert_dimension",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

ইনপুট স্কিমা

InsertDimensionRequest

JSON উপস্থাপনা
{
  "spreadsheetId": string,
  "sheetId": integer,
  "dimension": enum (Dimension),
  "startIndex": integer,
  "endIndex": integer,
  "inheritFromBefore": boolean
}
ফিল্ড
spreadsheetId

string

প্রয়োজনীয়। যে স্প্রেডশিট আপডেট করতে হবে তার আইডি।

sheetId

integer

প্রয়োজনীয়। যে শিটে ডেটা যোগ করতে হবে তার আইডি।

dimension

enum (Dimension)

প্রয়োজনীয়। যে ডাইমেনশন যোগ করতে হবে।

startIndex

integer

প্রয়োজনীয়। ইনসার্শনের ০-ভিত্তিক শুরুর ইন্ডেক্স (অন্তর্ভুক্ত)।

endIndex

integer

প্রয়োজনীয়। ইনসার্শনের ০-ভিত্তিক শেষ ইনডেক্স (এক্সক্লুসিভ)।

inheritFromBefore

boolean

নতুন যোগ করা ডাইমেনশনের আগে বা পরে ডাইমেনশন প্রপার্টি এক্সটেন্ড করা উচিত কিনা। আগের ডাইমেনশন থেকে ইনহেরিট করতে হলে 'ট্রু' (এই ক্ষেত্রে শুরুর ইনডেক্স অবশ্যই ০-এর থেকে বড় হতে হবে) এবং পরের ডাইমেনশন থেকে ইনহেরিট করতে হলে 'ফলস'।

আকার

কোনও অপারেশন কোন ডাইমেনশনে প্রয়োগ করা উচিত তা নির্দেশ করে।

Enums
DIMENSION_UNSPECIFIED ডিফল্ট ভ্যালু, ব্যবহার করবেন না।
COLUMNS কোনও শিটের কলামে কাজ করে।
ROWS কোনও শিটের সারিতে কাজ করে।

আউটপুট স্কিমা

JSON অবজেক্টের প্রতিনিধিত্ব করে।

JSON অবজেক্টের শব্দার্থ সঠিকভাবে ক্যাপচার করার উদ্দেশ্যে তৈরি করা কী-ভ্যালু ম্যাপের কোনও নির্দিষ্ট ক্রম নেই। এটি ProtoJSON ফর্ম্যাটে মেসেজ ফিল্ড হিসেবে যেকোনও নির্বিচারে JSON পেলোড পার্স করার সুবিধা দেয়।

এটি ইন্টারঅপারেবল JSON-এর জন্য RFC 8259 নির্দেশিকা মেনে চলে: উল্লেখযোগ্যভাবে, এই ধরনের ডেটা বড় Int64 ভ্যালু বা NaN/Infinity নম্বরকে উপস্থাপন করতে পারে না, কারণ JSON ফর্ম্যাট সাধারণত এর নম্বর ধরনের মধ্যে সেইসব ভ্যালুকে সাপোর্ট করে না।

আপনি যদি নিজের মেসেজে কোনও JSON পার্স করতে না চান, তাহলে এই ধরনের মেসেজ ব্যবহার করার পরিবর্তে কাস্টম টাইপ করা মেসেজ ব্যবহার করা উচিত।

Struct

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

JSON null-এর প্রতিনিধিত্ব করে।

numberValue

number

JSON নম্বর বোঝায়। NaN, Infinity বা -Infinity হলে চলবে না, কারণ JSON-এ এগুলি কাজ করে না। এছাড়াও, এটি বড় Int64 মানকে উপস্থাপন করতে পারে না, কারণ JSON ফর্ম্যাট সাধারণত এর সংখ্যাসূচক ধরনের মধ্যে সেগুলিকে সমর্থন করে না।

stringValue

string

JSON স্ট্রিং বোঝায়।

boolValue

boolean

JSON বুলিয়ান (JSON-এ true বা false লিটেরাল) বোঝায়।

structValue

object (Struct format)

JSON অবজেক্টের প্রতিনিধিত্ব করে।

listValue

array (ListValue format)

JSON অ্যারের প্রতিনিধিত্ব করে।

ListValue

JSON উপস্থাপনা
{
  "values": [
    value
  ]
}
ফিল্ড
values[]

value (Value format)

ডায়নামিক টাইপ করা ভ্যালুর রিপিট করা ফিল্ড।

NullValue

JSON null-এর প্রতিনিধিত্ব করে।

NullValue হল একটি সেন্টিনেল, যা Value টাইপ ইউনিয়নের জন্য নাল ভ্যালু বোঝাতে শুধুমাত্র একটি ভ্যালু সহ একটি এনুম ব্যবহার করে।

0 ছাড়া অন্য কোনও ভ্যালু সহ NullValue ধরনের ফিল্ডকে ভুল বলে বিবেচনা করা হয়। বেশিরভাগ ProtoJSON সিরিয়ালাইজার, পূর্ণসংখ্যা ভ্যালু যাই হোক না কেন, JSON null হিসেবে সেট করা null_value সহ Value এমিট করবে এবং তাই 0 ভ্যালুতে রাউন্ড ট্রিপ করবে।

Enums
NULL_VALUE নাল ভ্যালু।

টুল অ্যানোটেশন

কোনও টুলের প্রাথমিক ঝুঁকি বর্ণনা করতে MCP ক্লায়েন্টদের কাছে টুল অ্যানোটেশন পাঠানো হয়। বেশিরভাগ ক্লায়েন্ট এই ধরনের ইঙ্গিতকে অবিশ্বস্ত হিসেবে বিবেচনা করে, তবে ব্যবহারকারীকে কখন কনফার্মেশন প্রম্পট পাঠানো হতে পারে তা নির্ধারণ করতে এগুলি ব্যবহার করা যেতে পারে।

টাইটেল স্ট্রিংয়ের সাথে, নিম্নলিখিত বুলিয়ান হিন্টকে এইভাবে সংজ্ঞায়িত করা হয়:

  • readOnlyHint: সত্য হলে, টুলটি তার এনভায়রনমেন্ট পরিবর্তন করে না। ডিফল্ট: false.
  • destructiveHint: মান 'সত্য' হলে, টুলটি ডেটা মুছে দেওয়ার মতো অ্যাকশন পারফর্ম করতে পারবে। এটি মিথ্যা হলে, টুলটি শুধুমাত্র যোগাত্মক অ্যাকশন পারফর্ম করতে পারবে। ডিফল্ট: true.
  • idempotentHint: true হলে, একই আর্গুমেন্ট সহ টুলটি বারবার কল করলে এর এনভায়রনমেন্টের উপর কোনও অতিরিক্ত প্রভাব পড়বে না। ডিফল্ট: false.
  • openWorldHint: এটি সত্য হলে, টুলটি এক্সটার্নাল এন্টিটির 'ওপেন ওয়ার্ল্ড' ইন্টার‍্যাক্ট করতে পারবে। ফলস হলে, টুলটি শুধুমাত্র ইন্টার্নাল এন্টিটির সাথে ইন্টার‍্যাক্ট করতে পারবে। যেমন, ওয়েব সার্চ টুল হল ওপেন ওয়ার্ল্ড, কিন্তু মেমরি টুল ওপেন ওয়ার্ল্ড নয়।

ধ্বংসাত্মক ইঙ্গিত: ❌ | আইডেমপোটেন্ট ইঙ্গিত: ❌ | শুধুমাত্র পড়ার ইঙ্গিত: ❌ | ওপেন ওয়ার্ল্ড ইঙ্গিত: ✅

অনুমোদনের স্কোপ

নিম্নলিখিত OAuth স্কোপের মধ্যে একটি প্রয়োজন:

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/spreadsheets