MCP Tools Reference: sheetsmcp.googleapis.com

Narzędzie: insert_dimension

Wstawia wiersze lub kolumny w arkuszu w określonym indeksie.

Odpowiada żądaniu InsertDimensionRequest w interfejsie API REST spreadsheets.batchUpdate: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/request

Schemat: - spreadsheet_id (ciąg znaków, wymagany): identyfikator arkusza kalkulacyjnego, który ma zostać zaktualizowany. - sheet_id (liczba całkowita, wymagana): identyfikator arkusza, do którego chcesz wstawić dane. - dimension (ciąg znaków, wymagany): "ROWS" lub "COLUMNS". - start_index (liczba całkowita, wymagana): indeks początkowy wstawienia (liczony od 0, włącznie). - end_index (liczba całkowita, wymagana): indeks końcowy wstawienia (wykluczając najwyższą wartość) rozpoczynający się od 0. - inherit_from_before (wartość logiczna, opcjonalna): określa, czy właściwości wymiaru powinny być rozszerzone z wymiarów przed (true) czy po (false).

Poniższy przykładowy kod pokazuje, jak używać curl do wywoływania narzędzia MCP insert_dimension.

Żądanie 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
}'

Schemat wejściowy

InsertDimensionRequest

Zapis JSON
{
  "spreadsheetId": string,
  "sheetId": integer,
  "dimension": enum (Dimension),
  "startIndex": integer,
  "endIndex": integer,
  "inheritFromBefore": boolean
}
Pola
spreadsheetId

string

Wymagane. Identyfikator arkusza kalkulacyjnego, który chcesz zaktualizować.

sheetId

integer

Wymagane. Identyfikator arkusza, do którego chcesz wstawić dane.

dimension

enum (Dimension)

Wymagane. Wymiar do wstawienia.

startIndex

integer

Wymagane. Indeks początkowy wstawienia (włącznie) rozpoczynający się od 0.

endIndex

integer

Wymagane. Indeks końcowy wstawienia (wykluczając najwyższą wartość) rozpoczynający się od 0.

inheritFromBefore

boolean

Określa, czy właściwości wymiarów mają być rozszerzane z wymiarów przed nowo wstawionymi wymiarami czy po nich. Wartość „Prawda” oznacza dziedziczenie z wymiarów przed (w tym przypadku indeks początkowy musi być większy niż 0), a wartość „Fałsz” oznacza dziedziczenie z wymiarów po.

Wymiar

Wskazuje, do którego wymiaru ma być stosowana operacja.

Wartości w polu enum
DIMENSION_UNSPECIFIED Wartość domyślna, nie używaj.
COLUMNS Działa na kolumnach arkusza.
ROWS Działa na wierszach arkusza.

Schemat wyjściowy

InsertDimensionResponse

Zapis JSON
{
  "content": {
    object
  }
}
Pola
content

object (Struct format)

Odpowiedź spreadsheets.batchUpdate w formacie JSON interfejsu Sheets API oraz pole status.

Struct

Zapis JSON
{
  "fields": {
    string: value,
    ...
  }
}
Pola
fields

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

Nieuporządkowana mapa wartości o typie dynamicznym.

Obiekt zawierający listę par "key": value. Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" }

FieldsEntry

Zapis JSON
{
  "key": string,
  "value": value
}
Pola
key

string

value

value (Value format)

Wartość

Zapis JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Pola
Pole zbiorcze kind. Rodzaj wartości. kind może mieć tylko jedną z tych wartości:
nullValue

null

Reprezentuje obiekt JSON null.

numberValue

number

Reprezentuje liczbę JSON. Nie może to być NaN, Infinity ani -Infinity, ponieważ te wartości nie są obsługiwane w formacie JSON. Nie może też reprezentować dużych wartości Int64, ponieważ format JSON zwykle nie obsługuje ich w swoim typie liczbowym.

stringValue

string

Reprezentuje ciąg JSON.

boolValue

boolean

Reprezentuje wartość logiczną JSON (literał true lub false w JSON).

structValue

object (Struct format)

Reprezentuje obiekt JSON.

listValue

array (ListValue format)

Reprezentuje tablicę JSON.

ListValue

Zapis JSON
{
  "values": [
    value
  ]
}
Pola
values[]

value (Value format)

Pole powtarzane wartości wpisywanych dynamicznie.

NullValue

Reprezentuje obiekt JSON null.

NullValue to wartownik, który używa typu wyliczeniowego z tylko jedną wartością do reprezentowania wartości null dla unii typu Value.

Pole typu NullValue z dowolną wartością inną niż 0 jest uznawane za nieprawidłowe. Większość serializatorów ProtoJSON będzie emitować Value z ustawionym null_value jako JSON null niezależnie od wartości liczby całkowitej, więc będzie to wartość 0.

Wartości w polu enum
NULL_VALUE Wartość null.

Adnotacje dotyczące narzędzi

Adnotacje narzędzi są wysyłane do klientów MCP, aby opisać podstawowe ryzyko związane z danym narzędziem. Większość klientów traktuje te wskazówki jako niezaufane, ale można ich użyć do określenia, kiedy wysłać użytkownikowi prośbę o potwierdzenie.

Oprócz ciągu tytułu zdefiniowane są te wskazówki logiczne:

  • readOnlyHint: jeśli ma wartość „true”, narzędzie nie modyfikuje swojego środowiska. Wartość domyślna: false.
  • destructiveHint: jeśli ma wartość „true”, narzędzie może wykonywać działania destrukcyjne. Jeśli ma wartość false, narzędzie może wykonywać tylko działania dodawania. Wartość domyślna: true.
  • idempotentHint: jeśli ma wartość „true”, wielokrotne wywoływanie narzędzia z tymi samymi argumentami nie będzie miało dodatkowego wpływu na jego środowisko. Wartość domyślna: false.
  • openWorldHint: jeśli ma wartość true, narzędzie może wchodzić w interakcje z „otwartym światem” elementów zewnętrznych. Jeśli ma wartość false, narzędzie może wchodzić w interakcje tylko z elementami wewnętrznymi. Na przykład narzędzie do wyszukiwania w internecie jest narzędziem typu Otwarty świat, ale narzędzie do zapamiętywania już nie.

Wskazówka dotycząca destrukcyjności: ❌ | Wskazówka dotycząca idempotencji: ❌ | Wskazówka dotycząca tylko do odczytu: ❌ | Wskazówka dotycząca otwartego świata: ✅

Zakresy autoryzacji

Wymaga jednego z tych zakresów OAuth:

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