MCP Tools Reference: sheetsmcp.googleapis.com

Herramienta: get_spreadsheet

Devuelve el contenido de la hoja de cálculo especificada. Devuelve títulos, nombres de hojas, propiedades de cuadrícula y otros metadatos para el ID de hoja de cálculo determinado. También devuelve datos de cuadrícula completos si se solicitan.

Corresponde a spreadsheets.get en la API de REST: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets/get

Esquema: - spreadsheet_id (cadena, obligatorio): Es el ID de la hoja de cálculo que se solicitará. - include_grid_data (booleano, opcional): Es verdadero si se deben devolver los datos de la cuadrícula. La configuración predeterminada es "false". - fields (array de cadenas, opcional): Máscaras de campo que especifican qué propiedades se deben mostrar (p.ej., ["sheets.properties.sheetId", "sheets.properties.title"]). - comments_included (booleano, opcional): Si es verdadero, se incluirán los comentarios en la respuesta. La configuración predeterminada es "false". - ranges (array de cadenas, opcional): Son los rangos A1 o R1C1 que se recuperarán de la hoja de cálculo. Si no se especifica, se devuelve toda la hoja de cálculo.

En la siguiente muestra de código, se indica cómo usar curl para llamar a la herramienta de MCP get_spreadsheet.

Solicitud de 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": "get_spreadsheet",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

GetContentRequest

Representación JSON
{
  "spreadsheetId": string,
  "includeGridData": boolean,
  "fields": [
    string
  ],
  "ranges": [
    string
  ],

  "commentsIncluded": boolean
}
Campos
spreadsheetId

string

Obligatorio. Es el ID de la hoja de cálculo que se solicitará.

includeGridData

boolean

Es verdadero si se deben devolver los datos de la cuadrícula.

fields[]

string

Opcional. Una máscara de campo para especificar qué propiedades se deben devolver de la API de Spreadsheets. Consulta https://developers.google.com/workspace/sheets/api/guides/field-masks para obtener más información sobre cómo usar las máscaras de campo. IMPORTANTE: Usa rutas jerárquicas basadas en la estructura JSON de respuesta de la API de Sheets. - Por ejemplo, para obtener el título y el ID de la hoja, usa "sheets.properties.sheetId" y "sheets.properties.title" en lugar de "title,sheetId". - Incluye solo los campos que necesitas. - Para obtener tablas, usa "sheets.tables" o "sheets.properties". - Para obtener los títulos y los IDs de las hojas, usa: 'sheets.properties.sheetId' y 'sheets.properties.title'.

ranges[]

string

Opcional. La notación A1 o notación R1C1 de los rangos que se recuperarán de la hoja de cálculo. Si no se especifica, se devuelve toda la hoja de cálculo.

Campo de unión _comments_included.

_comments_included puede ser una de las siguientes opciones:

commentsIncluded

boolean

Opcional. Si se establece como verdadero, se incluirán los comentarios en la respuesta. De forma predeterminada, no se incluyen los comentarios.

Esquema de salida

GetContentResponse

Representación JSON
{
  "content": {
    object
  }
}
Campos
content

object (Struct format)

La hoja de cálculo, en el formato JSON del recurso Spreadsheet de la API de Sheets.

Struct

Representación JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

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

Es un mapa sin ordenar de valores con tipo dinámico.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representación JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

Valor

Representación JSON
{

  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
}
Campos
Campo de unión kind. Es el tipo de valor. kind puede ser solo uno de los parámetros siguientes:
nullValue

null

Representa un null JSON.

numberValue

number

Representa un número JSON. No debe ser NaN, Infinity ni -Infinity, ya que no se admiten en JSON. Tampoco puede representar valores Int64 grandes, ya que el formato JSON, por lo general, no los admite en su tipo de número.

stringValue

string

Representa una cadena JSON.

boolValue

boolean

Representa un booleano JSON (literal true o false en JSON).

structValue

object (Struct format)

Representa un objeto JSON.

listValue

array (ListValue format)

Representa un array JSON.

ListValue

Representación JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Es un campo repetido de valores con tipo dinámico.

NullValue

Representa un null JSON.

NullValue es un centinela que usa una enumeración con un solo valor para representar el valor nulo de la unión de tipos Value.

Un campo de tipo NullValue con cualquier valor que no sea 0 se considera no válido. La mayoría de los serializadores de ProtoJSON emitirán un Value con un null_value establecido como un null de JSON, independientemente del valor entero, por lo que se realizará un recorrido de ida y vuelta a un valor 0.

Enums
NULL_VALUE Valor nulo.

Anotaciones de herramientas

Las anotaciones de herramientas se envían a los clientes de MCP para describir el riesgo básico de una herramienta determinada. La mayoría de los clientes tratan estas sugerencias como no confiables, pero se pueden usar para decidir cuándo se puede enviar un mensaje de confirmación a un usuario.

Junto con la cadena de título, las siguientes sugerencias booleanas se definen de la siguiente manera:

  • readOnlyHint: Si es verdadero, la herramienta no modifica su entorno. Valor predeterminado: false.
  • destructiveHint: Si es verdadero, la herramienta puede realizar acciones destructivas. Si es falso, la herramienta solo puede realizar acciones aditivas. Valor predeterminado: true.
  • idempotentHint: Si es verdadero, llamar a la herramienta de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.
  • openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.

Sugerencia de destructivo: ❌ | Sugerencia de idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ✅

Alcances de la autorización

Se necesita uno de los siguientes alcances de OAuth:

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