Ferramenta: update_values
Define valores em um intervalo de uma planilha.
Corresponde a spreadsheets.values.update na API REST: https://developers.google.com/workspace/sheets/api/reference/rest/v4/spreadsheets.values/update
Esquema: - spreadsheet_id (string, obrigatório): o ID da planilha a ser atualizada. - range (string, obrigatório): a notação A1 dos valores a serem atualizados (por exemplo, "Sheet1!A1:B2"). - values (matriz de matrizes, obrigatório): matriz 2D de valores de células. Os tipos de valor compatível são: booleano, string e número (float/int).
O exemplo de código abaixo mostra como usar curl para chamar a ferramenta MCP update_values.
| Solicitação 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": "update_values", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Esquema de entrada
UpdateValuesRequest
| Representação JSON |
|---|
{ "spreadsheetId": string, "range": string, "values": [ array ] } |
| Campos | |
|---|---|
spreadsheetId |
Obrigatório. O ID da planilha que será atualizada. |
range |
Obrigatório. A notação A1 dos valores a serem atualizados. |
values[] |
Obrigatório. Os dados que foram lidos ou que serão gravados. Essa é uma matriz de matrizes, em que a matriz externa representa todos os dados e cada matriz interna representa uma linha. Cada item na matriz interna corresponde a uma célula. Os tipos de valor compatíveis são: bool, string e double. Os valores nulos serão ignorados. Para definir uma célula como um valor vazio, defina o valor da string como uma string vazia. |
ListValue
| Representação JSON |
|---|
{ "values": [ value ] } |
| Campos | |
|---|---|
values[] |
Campo repetido de valores digitados dinamicamente. |
Valor
| Representação JSON |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| Campos | |
|---|---|
Campo de união kind. O tipo de valor. kind pode ser apenas de um dos tipos a seguir: |
|
nullValue |
Representa um |
numberValue |
Representa um número JSON. Não pode ser |
stringValue |
Representa uma string JSON. |
boolValue |
Representa um booleano JSON (literal |
structValue |
Representa um objeto JSON. |
listValue |
Representa uma matriz JSON. |
Struct
| Representação JSON |
|---|
{ "fields": { string: value, ... } } |
| Campos | |
|---|---|
fields |
Mapa não ordenado de valores digitados dinamicamente. Um objeto com uma lista de pares |
FieldsEntry
| Representação JSON |
|---|
{ "key": string, "value": value } |
| Campos | |
|---|---|
key |
|
value |
|
NullValue
Representa um null JSON.
NullValue é um sentinela, que usa um tipo enumerado com apenas um valor para representar o valor nulo da união de tipos Value.
Um campo do tipo NullValue com qualquer valor diferente de 0 é considerado inválido. A maioria dos serializadores ProtoJSON emite um Value com um null_value definido como um null JSON, independentemente do valor inteiro, e, portanto, faz uma ida e volta para um valor 0.
| Tipos enumerados | |
|---|---|
NULL_VALUE |
Valor nulo. |
Esquema de saída
UpdateValuesResponse
| Representação JSON |
|---|
{ "content": { object } } |
| Campos | |
|---|---|
content |
A resposta |
Struct
| Representação JSON |
|---|
{ "fields": { string: value, ... } } |
| Campos | |
|---|---|
fields |
Mapa não ordenado de valores digitados dinamicamente. Um objeto com uma lista de pares |
FieldsEntry
| Representação JSON |
|---|
{ "key": string, "value": value } |
| Campos | |
|---|---|
key |
|
value |
|
Valor
| Representação JSON |
|---|
{ "nullValue": null, "numberValue": number, "stringValue": string, "boolValue": boolean, "structValue": { object }, "listValue": array } |
| Campos | |
|---|---|
Campo de união kind. O tipo de valor. kind pode ser apenas de um dos tipos a seguir: |
|
nullValue |
Representa um |
numberValue |
Representa um número JSON. Não pode ser |
stringValue |
Representa uma string JSON. |
boolValue |
Representa um booleano JSON (literal |
structValue |
Representa um objeto JSON. |
listValue |
Representa uma matriz JSON. |
ListValue
| Representação JSON |
|---|
{ "values": [ value ] } |
| Campos | |
|---|---|
values[] |
Campo repetido de valores digitados dinamicamente. |
NullValue
Representa um null JSON.
NullValue é um sentinela, que usa um tipo enumerado com apenas um valor para representar o valor nulo da união de tipos Value.
Um campo do tipo NullValue com qualquer valor diferente de 0 é considerado inválido. A maioria dos serializadores ProtoJSON emite um Value com um null_value definido como um null JSON, independentemente do valor inteiro, e, portanto, faz uma ida e volta para um valor 0.
| Tipos enumerados | |
|---|---|
NULL_VALUE |
Valor nulo. |
Anotações de ferramentas
As anotações de ferramentas são enviadas aos clientes do MCP para descrever o risco básico de uma determinada ferramenta. A maioria dos clientes trata essas dicas como não confiáveis, mas elas podem ser usadas para decidir quando um pedido de confirmação pode ser enviado a um usuário.
Além da string de título, as seguintes dicas booleanas são definidas:
readOnlyHint: se for verdadeiro, a ferramenta não modifica o ambiente. (Padrão: falso).destructiveHint: se for verdadeiro, a ferramenta poderá realizar ações destrutivas. Se for falso, a ferramenta só poderá realizar ações aditivas. Padrão: verdadeiro.idempotentHint: se for verdadeiro, chamar a ferramenta repetidamente com os mesmos argumentos não terá efeito adicional no ambiente. (Padrão: falso).openWorldHint: se for verdadeiro, a ferramenta poderá interagir com um "mundo aberto" de entidades externas. Se for falso, a ferramenta só poderá interagir com entidades internas. Por exemplo, uma ferramenta de pesquisa na Web seria de mundo aberto, enquanto uma ferramenta de memória não seria.
Dica destrutiva: ❌ | Dica idempotente: ❌ | Dica somente leitura: ❌ | Dica de jogos de mundo aberto: ✅
Escopos de autorização
Requer um dos seguintes escopos do OAuth:
https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/drive.filehttps://www.googleapis.com/auth/spreadsheets