Skip to main content
Glama
coderclub-team

Google Sheets Todos MCP Server

Google Sheets MCP Server

An MCP server that stores todos and stock data in a Google Sheet and exposes CRUD tools.

Features

Todo tools:

  • todo_list

  • todo_get

  • todo_create

  • todo_update

  • todo_delete

Stock tools:

  • stock_list

  • stock_get

  • stock_update

Related MCP server: Todo MCP

1) Google setup

  1. Create a Google Cloud project.

  2. Enable the Google Sheets API.

  3. Create a service account and download its JSON key.

  4. Create a Google Sheet and copy its Spreadsheet ID from the URL.

  5. Share the sheet with the service account email as Editor.

2) Local setup

npm install
cp .env.example .env

Then edit .env with your values.

3) Run

Development:

npm run dev

The server listens on http://localhost:8080/mcp by default.

Build and run:

npm run build
npm start

4) Cloud Run deployment

One command deployment:

npm run deploy:cloudrun -- --project PROJECT_ID --region REGION

The deploy script uses .env by default and will:

  • Build the image with cloudbuild.yaml

  • Deploy to Cloud Run

  • Print the final MCP endpoint URL

You can also override the env file:

npm run deploy:cloudrun -- --project PROJECT_ID --env-file .env.production

Build and submit the container image:

gcloud builds submit --tag gcr.io/PROJECT_ID/firstmcp

Deploy to Cloud Run:

gcloud run deploy firstmcp \
  --image gcr.io/PROJECT_ID/firstmcp \
  --platform managed \
  --region REGION \
  --allow-unauthenticated \
  --set-env-vars GOOGLE_SHEETS_SPREADSHEET_ID=your_spreadsheet_id,GOOGLE_SHEETS_TODO_SHEET_NAME=todos,GOOGLE_SERVICE_ACCOUNT_EMAIL=your-service-account@project.iam.gserviceaccount.com,GOOGLE_SERVICE_ACCOUNT_PRIVATE_KEY='-----BEGIN PRIVATE KEY-----\\n...\\n-----END PRIVATE KEY-----\\n'

Cloud Run will inject the PORT environment variable automatically. The MCP HTTP endpoint will be available at /mcp on the service URL.

Files added for deployment:

  • cloudbuild.yaml

  • scripts/deploy-cloud-run.sh

  • .gcloudignore

5) MCP client config example

For an HTTP-capable MCP client, point it at the deployed endpoint:

{
  "mcpServers": {
    "google-sheets-todos": {
      "url": "https://YOUR_CLOUD_RUN_URL/mcp"
    }
  }
}

For local testing, use:

{
  "mcpServers": {
    "google-sheets-todos": {
      "url": "http://localhost:8080/mcp"
    }
  }
}

6) Sheet format

The server uses 5 columns in the target sheet:

  • id

  • title

  • completed

  • createdAt

  • updatedAt

The header row is created automatically if missing.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/coderclub-team/firstMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server