Skip to main content

Google Sheets & Forms MCP Server

A simple MCP server that provides tools, resources, and prompts for working with Google Sheets and Google Forms.

Features

Tools

  • list_spreadsheets - List your Google Spreadsheets
  • read_sheet - Read data from a Google Sheet
  • write_sheet - Write data to a Google Sheet
  • append_sheet - Append data to a Google Sheet
  • create_spreadsheet - Create a new spreadsheet
  • create_form - Create a new Google Form

Resources

  • sheet://{spreadsheet_id}/{range_name} - Access sheet data as a resource

Prompts

  • analyze_sheet_data - Template for analyzing sheet data
  • create_report_template - Template for creating report spreadsheets
  • form_to_sheet - Template for form-to-sheet workflow

Setup

1. Create virtual environment

cd gsheets-mcp-server
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

2. Install dependencies

pip install -r requirements.txt

3. Get Google API Credentials

  1. Go to Google Cloud Console
  2. Create a new project or select existing one
  3. Enable the following APIs:
    • Google Sheets API
    • Google Forms API
    • Google Drive API
  4. Go to "Credentials" → "Create Credentials" → "OAuth client ID"
  5. Choose "Desktop app" as application type
  6. Download the credentials JSON file
  7. Save it as credentials.json in this directory

4. Test the server with MCP Inspector

npx @modelcontextprotocol/inspector python gsheets_server.py

Claude Desktop Configuration

Add this to your Claude Desktop config file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "gsheets": {
      "command": "python",
      "args": [
        "/FULL/PATH/TO/gsheets-mcp-server/gsheets_server.py"
      ],
      "env": {
        "GOOGLE_CREDENTIALS_PATH": "/FULL/PATH/TO/gsheets-mcp-server/credentials.json"
      }
    }
  }
}

Important: Replace /FULL/PATH/TO/ with the actual absolute path to this directory.

First Run

On first run, the server will open a browser window for Google authentication. After you authorize the app, a token.pickle file will be created to store your credentials for future use.

Example Usage in Claude Desktop

Once configured, you can ask Claude:

  • "List my spreadsheets"
  • "Read the data from spreadsheet ID 'abc123' in range 'Sheet1!A1:C10'"
  • "Create a new spreadsheet called 'Q1 Report'"
  • "Append this data to my sheet: [['Name', 'Email'], ['John', 'john@example.com']]"
  • "Use the analyze_sheet_data prompt"
  • "Show me the sheet resource for spreadsheet 'abc123'"

Getting Spreadsheet IDs

The spreadsheet ID is in the URL:

https://docs.google.com/spreadsheets/d/SPREADSHEET_ID_HERE/edit

Troubleshooting

  • Authentication fails: Delete token.pickle and run again
  • Permission denied: Check that you've enabled the APIs in Google Cloud Console
  • Module not found: Make sure virtual environment is activated and dependencies are installed

Metadata

Release files for iflow-mcp-hellotinah-mcp 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp-hellotinah-mcp 1.0.0
File Size Uploaded
iflow_mcp_hellotinah_mcp-1.0.0.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp-hellotinah-mcp 1.0.0
File Interpreter ABI Platform
iflow_mcp_hellotinah_mcp-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 19.0 kB

Release files / iflow_mcp_hellotinah_mcp-1.0.0.tar.gz

Download URL iflow_mcp_hellotinah_mcp-1.0.0.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
e511d93f70328a9f8b7658a942ffd36c8f42b227403d044db23c6ae78e3df9c6
BLAKE2b-256 checksum
How to use checksums
50320b35edb24eaf9b66200991f43a7746f63ae02a10313cf414a2b0b5823beb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_hellotinah_mcp-1.0.0-py3-none-any.whl

Download URL iflow_mcp_hellotinah_mcp-1.0.0-py3-none-any.whl
Size 12.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1a935328dc19861c921d1850871cef3b290d01f3fed977c366dc5d3bd70fa121
BLAKE2b-256 checksum
How to use checksums
1b9eebd189f6ebec327216b9d376dc54cdbdc36124c72c3d4c04486df25cadab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page