Google Sheets MCP Server
by guigatrotta
README.md
# Building a Remote MCP Server on Cloudflare (Without Auth)
This example allows you to deploy a remote MCP server that doesn't require authentication on Cloudflare Workers.
## Get started:
[](https://deploy.workers.cloudflare.com/?url=https://github.com/cloudflare/ai/tree/main/demos/remote-mcp-authless)
This will deploy your MCP server to a URL like: `remote-mcp-server-authless.<your-account>.workers.dev/mcp`
Alternatively, you can use the command line below to get the remote MCP Server created on your local machine:
```bash
npm create cloudflare@latest -- my-mcp-server --template=cloudflare/ai/demos/remote-mcp-authless
```
## Customizing your MCP Server
To add your own [tools](https://developers.cloudflare.com/agents/model-context-protocol/tools/) to the MCP server, define each tool inside the `init()` method of `src/index.ts` using `this.server.tool(...)`.
## Google Sheets: secrets no Cloudflare Worker
Este projeto lê planilhas com **API key** e/ou **service account**; **escrever** (`update_cell`) usa **somente** service account.
| Nome do secret / variável | Uso |
|---------------------------|-----|
| `GOOGLE_API_KEY` | Opcional: leitura pública (`read_sheet`) com chave de API. |
| `GOOGLE_SERVICE_ACCOUNT_JSON` | **Obrigatório para escrita:** JSON completo da conta de serviço Google (projeto GCP → IAM → service account → chaves JSON). |
**No dashboard Cloudflare:** Workers & Pages → seu worker → **Settings** → **Variables and Secrets** → **Add** → **Secret** → nome **`GOOGLE_SERVICE_ACCOUNT_JSON`** → colar o JSON (idealmente minificado em uma linha).
**CLI:** `npx wrangler secret put GOOGLE_SERVICE_ACCOUNT_JSON` (o comando pede o valor de forma segura).
No Google Sheets, compartilhe a planilha com o endereço **`client_email`** do JSON (permissão de editor) para a service account conseguir gravar.
## Connect to Cloudflare AI Playground
You can connect to your MCP server from the Cloudflare AI Playground, which is a remote MCP client:
1. Go to https://playground.ai.cloudflare.com/
2. Enter your deployed MCP server URL (`remote-mcp-server-authless.<your-account>.workers.dev/mcp`)
3. You can now use your MCP tools directly from the playground!
## Connect Claude Desktop to your MCP server
You can also connect to your remote MCP server from local MCP clients, by using the [mcp-remote proxy](https://www.npmjs.com/package/mcp-remote).
To connect to your MCP server from Claude Desktop, follow [Anthropic's Quickstart](https://modelcontextprotocol.io/quickstart/user) and within Claude Desktop go to Settings > Developer > Edit Config.
Update with this configuration:
```json
{
"mcpServers": {
"calculator": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8787/mcp" // or remote-mcp-server-authless.your-account.workers.dev/mcp
]
}
}
}
```
Restart Claude and you should see the tools become available.
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues