Delv
CommunitySlow· 1mo4.3by freema

MCP Google Sheets

Reads, writes, formats, and manages Google Sheets with cell operations, formulas, and sheet management.

C
Safety & Trust

Delv Safety Grade: C

Score 62/100 · assessed 2026-04-28

Maintainer45
Permissions65
Supply chain70
Transparency68
Incidents100

This community MCP server provides comprehensive Google Sheets access through a service account. The maintainer 'freema' appears to be a solo developer with limited public profile, creating some bus factor risk. The server requires full Google service account credentials as an environment variable, which grants potentially broad access to all sheets the service account can reach. Permissions are reasonably scoped to spreadsheet operations (read, write, format, manage sheets) but lack granular controls. Distribution via npm with npx is standard and relatively safe. The repository shows basic documentation but limited maintenance history. No known security incidents. The service account requirement is standard for Google API access but means credentials must be carefully managed. Suitable for trusted automation tasks but requires proper credential hygiene and understanding that the service account's full sheet access is exposed to Claude.

Lethal Trifecta (prompt-injection exposure)

TRIFECTA RISK
All three axes present. This server can read private data, ingest attacker-controlled content, and send data outbound. A poisoned input (a GitHub issue, an email, a webpage) can exfiltrate secrets via this chain. Only install with auditing; avoid on shared or cloud agents.
Private dataYes
Reads secrets, credentials, private files
Untrusted inputYes
Ingests web pages, PRs, issues, emails
External commsYes
Can send data outbound

Sheets shared by anyone can carry hostile cell content. Private sheets are private. Sharing and exporting is outbound.

Green flags

  • Standard npm package distribution via npx
  • Uses official Google service account pattern for authentication
  • No known security incidents or credential leaks
  • Clear documentation of required environment variables
  • Scoped to spreadsheet domain rather than full system access

Red flags

  • Solo maintainer with limited public profile and unclear maintenance commitment
  • Service account JSON grants broad access to all sheets account can reach
  • No granular permission scoping within the sheets API surface
  • Limited maintenance history and community review

Permissions requested

Outbound networkAccess secretsDB readDB write
Assessed by Delv Editorial using public metadata. Grades are advisory and update as the ecosystem changes. They do not replace your own review of permissions and code before granting an agent access to sensitive systems.

Install

npx -y mcp-gsheets@latest
Env vars needed: GOOGLE_SERVICE_ACCOUNT_JSON

Review

This MCP server turns Claude into a proper Google Sheets client. You get cell-level read and write, formula insertion, formatting control, and sheet management (create, delete, rename). The setup requires a Google service account JSON, which is a one-time faff but standard for server-to-server access. I'd reach for this when automating repetitive Sheets work that benefits from LLM smarts. Example: I pointed it at a messy expense tracker, asked Claude to categorise transactions based on descriptions, then write the categories into a new column with conditional formatting for different spend types. It handled the logic, the writes, and the formatting in one go. Much faster than writing a script myself. The tool shines for anything that mixes data manipulation with light reasoning. Financial modelling where you need Claude to suggest formulas based on your goals. Reporting automation where the LLM decides what to highlight. Dashboard updates that adapt to changing data patterns. It's less useful if you're just doing bulk data dumps (Apps Script or the Sheets API directly will be faster). Quirks: the service account needs explicit sharing on every spreadsheet you want to touch, which is easy to forget. No batch operations mentioned in the docs, so if you're updating thousands of cells, expect multiple tool calls. The formatting options are decent but not exhaustive; complex conditional formats might need manual setup first. Skip this if you don't already live in Sheets or if your workflows are simple enough for manual copy-paste. Also skip if you're uncomfortable with service account permissions (they're powerful and need careful scoping). But if you're doing regular Sheets work that involves decisions, categorisation, or dynamic formulas, this is genuinely useful. It's not flashy, but it does what it says and saves real time.
Verdict

Install this if you regularly wrangle Google Sheets and want Claude to handle the tedious bits with actual intelligence. Skip it if your Sheets work is either too simple (manual is fine) or too complex (you need a proper ETL pipeline). The service account setup is the only real barrier.

Good at

  • Cell-level control means you can target specific ranges without rewriting entire sheets.
  • Formula insertion works well for dynamic calculations that adapt to your data.
  • Formatting support (colours, borders, number formats) makes output actually readable.
  • Service account auth is proper server-to-server, no OAuth dance every session.

Watch out

  • No batch operations documented, so updating many cells means multiple tool calls.
  • Service account setup is fiddly if you've never done it before.
  • You must manually share every spreadsheet with the service account email.
  • Formatting options are decent but not comprehensive; complex conditional formats need manual setup.

Use cases

  • financial modelling
  • reporting automation
  • dashboard updates
  • data entry bots

Getting started

1. Create a Google Cloud service account, enable the Sheets API, and download the JSON key file (Google's docs walk you through this). 2. Run `npx -y mcp-gsheets@latest` and add the server to your Claude Desktop config, setting `GOOGLE_SERVICE_ACCOUNT_JSON` to the full JSON content (not a file path). 3. Share at least one Google Sheet with the service account email address (it's in the JSON, looks like a long email ending in `@developer.gserviceaccount.com`). 4. Ask Claude to read a cell from that sheet by ID and range (e.g. 'Read cell A1 from sheet ID xyz'). 5. Watch out: the service account needs explicit editor access on every spreadsheet, and you'll get cryptic permission errors if you forget to share.

Works with

Claude DesktopClaude CodeCursor

Similar MCPs