Skip to content

Latest commit

Β 

History

History
83 lines (53 loc) Β· 2.18 KB

File metadata and controls

83 lines (53 loc) Β· 2.18 KB

Google Sheets Server

guMCP server implementation for interacting with Google Sheets.


πŸ“¦ Prerequisites

  • Python 3.11+
  • A Google Cloud project with the Google Sheets API enabled
  • OAuth 2.0 credentials configured for desktop application access

πŸ” Local Authentication

Local authentication uses a Google OAuth Configuration JSON file located at:

local_auth/oauth_configs/gsheets/oauth.json

This file can be obtained when you are creating an oauth client from google cloud applciation in the GCP console.

To authenticate and save credentials for local testing, run:

python src/servers/gsheets/main.py auth

After successful authentication, your credentials will be stored securely for reuse.


πŸ› οΈ Supported Tools

This server exposes the following tools for interacting with Google Sheets:

  • create-sheet – Create a new spreadsheet
  • get-spreadsheet-info – Retrieve spreadsheet metadata
  • get-sheet-names – List sheet/tab names
  • batch-get – Read values from multiple ranges
  • batch-update – Write values to multiple ranges
  • append-values – Append new rows to a sheet
  • lookup-row – Search for a row by value
  • clear-values – Clear a given sheet range
  • copy-sheet – Copy a sheet from one spreadsheet to another

▢️ Run

Local Development

You can launch the server for local development using:

./start_sse_dev_server.sh

This will start the MCP server and make it available for integration and testing.

You can also start the local client using the following -

python RemoteMCPTestClient.py --endpoint http://localhost:8000/gsheets/local

πŸ“Ž Notes

  • Ensure your OAuth app has Sheets API access enabled in the Google Cloud console.
  • If you're testing with multiple users or environments, use different user_id values.
  • This server is designed to integrate with guMCP agents for tool-based LLM workflows.
  • Make sure you have mentioned the anthropic API key in the .env file.

πŸ“š Resources