google-sheets-mcp
Provides tools for reading and editing Google Sheets, including managing spreadsheet metadata, reading and writing cell ranges, formatting, and performing structural operations like adding or deleting sheets and rows.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@google-sheets-mcpShow me the data from the Editorial Calendar"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
google-sheets-mcp
MCP server to read and edit Google Sheets. Built for editorial calendars, task trackers and any agency-style spreadsheet workflow.
Tools (50)
Reading
Tool | What it does |
| Structural X-ray of a tab: header row, first data row, first free row, allowed dropdown values per column, merged cells, protected ranges and conditional-format rules. Call this before writing to any tab you don't already know |
| Title, tabs and dimensions of the spreadsheet |
| All data of a tab as an array of rows |
| Read a specific A1 range |
| Read several ranges in a single API call — more efficient than calling |
| Extract hyperlink URLs from cells in a range — useful when a cell displays text that links elsewhere |
Writing
Tool | What it does |
| Write data into a range (overwrites) |
| Update a single cell |
| Update multiple individual cells in a single API call |
| Append rows at the end of a tab — the safe way to add data, never overwrites |
| Find and replace text across the whole spreadsheet |
| Clear a range |
Rows and columns
Tool | What it does |
| Insert N blank rows starting at a given row, pushing existing content down |
| Delete a range of rows |
| Move rows to another position keeping their values, format, dropdowns and notes — a real move, not a copy+delete |
| Insert blank columns, pushing the rest to the right |
| Delete columns |
| Sort a range by a column (ascending or descending) |
| Auto-fit column widths to content |
Tabs and spreadsheets
Tool | What it does |
| Create a new tab |
| Rename a tab |
| Duplicate a tab within the same spreadsheet |
| Delete an entire tab |
| Create a new empty spreadsheet |
| Clone an entire spreadsheet (all tabs and data) |
Task-sheet blocks (months, sections)
Tool | What it does |
| Create a new block (e.g. a month section) copying the look of existing ones — separator row, repeated header and blank rows ready to fill |
Data validation and conditional formatting
Tool | What it does |
| Create a dropdown on a range: the cell only accepts the given values |
| Auto-color cells that match a condition (e.g. green for DONE) |
| Remove a conditional-format rule by index |
Borders, merging, banding
Tool | What it does |
| Add borders (outer and/or inner) to a range |
| Merge cells, e.g. for a block title spanning several columns |
| Undo merged cells in a range |
| Apply alternating row colors ("zebra stripes") |
Data cleanup
Tool | What it does |
| Remove duplicate rows from a range, keeping the first occurrence |
| Strip leading/trailing/extra whitespace from cells — a stray space breaks exact-match dropdowns and formulas |
| Split a text column into several by a separator |
| Continue a series automatically (dates, numbers, formulas), like dragging the corner handle |
Organization
Tool | What it does |
| Group rows so they can be collapsed/expanded with the +/- in the margin |
| Undo a row grouping |
| Hide or show rows |
| Fix the width of one or more columns, in pixels |
| Freeze the top N rows |
| Turn on the header filter (the funnel icons for sort/filter) |
| Remove the filter from a tab |
Protection, ranges, cell operations
Tool | What it does |
| Protect a range from accidental edits |
| Remove a protection |
| Name a range so it can be referenced in formulas without breaking when rows move |
| Copy a range to another location, choosing what to copy (values, format, or both) |
| Move a range of cells (cut from source, paste into destination, with formatting) |
Related MCP server: @node2flow/google-sheets-mcp
Semantic colors for format_range
Name | Use |
| Light green — task done |
| Light yellow — in progress |
| Light grey — pending |
| Light red — high priority |
| Light yellow — medium priority |
| Light blue — low priority |
| Steel blue — table header |
| Basic colors |
| Direct hex |
Safety
Every tool carries MCP Tool Annotations from the spec (
readOnlyHint,destructiveHint,idempotentHint,openWorldHint) so a client can tell read-only calls from destructive ones without guessing from the name.Execution errors propagate as real MCP protocol errors (
isError=true) — never as a JSON payload that looks like a success.Risky writes carry a
confirmed: bool = Falseparameter. Without it, the tool returns a preview of what it would do (and why it's flagged) instead of executing:write_range,update_cell,append_rows,clear_range,delete_rows,insert_block,move_rows,delete_duplicates,cut_paste_range,delete_sheet,delete_columns. What's considered risky: overwriting cells that already have content, touching frozen header rows, merged or protected cells, or writing a value outside a column's dropdown (which silently breaks its conditional-format color). Filling empty cells and appending to the end run without friction — they can't destroy anything.
These sheets are treated as visual documents, not databases: headers aren't necessarily in row
1, cells can be merged, and color often comes from conditional formatting that triggers on exact
values. Call describe_sheet before writing to a tab you don't already know its structure — it
tells you where the header and first free row are, and which values each dropdown column accepts.
Setup
Create a Google Cloud project (or reuse one) and enable the Google Sheets API, Google Docs API and Google Drive API (the token scopes cover all three, so you can reuse it with the sibling
google-docs-mcpserver if you want).Create an OAuth 2.0 Client ID of type "Desktop app" and download it as
client_secret.json.If the app is in "Testing" mode, add your Google account as a test user.
Install dependencies:
python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txtRun the OAuth flow once:
CLIENT_SECRET_PATH=~/.config/google-sheets-mcp/client_secret.json \ python3 setup_auth.pyThis opens a browser — log in and grant access.
MCP client configuration
{
"mcpServers": {
"google-sheets": {
"command": "/path/to/.venv/bin/python3",
"args": ["/path/to/google-sheets-mcp/server.py"],
"env": {
"GOOGLE_WORKSPACE_TOKEN_PATH": "~/.config/google-workspace-mcp/token.json"
}
}
}
}Env var | Default | Purpose |
|
| Path to the OAuth token |
Suggested task-sheet structure
Standard columns (row 1 = header):
OWNER | START | END | TASK | TOPIC | STATUS | PRIORITY | DETAILS
Suggested status values: TODO, IN PROGRESS, DONE
Suggested priorities: HIGH, MEDIUM, LOW
License
MIT — see LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP server that enables interaction with Google Sheets through natural language, allowing users to create, read, update, and manage spreadsheet data via the Google Sheets API v4.
- AlicenseNot gradedqualityDmaintenanceMCP server for managing Google Sheets via 23 tools, enabling read/write, formatting, sheet management, and data operations through natural language.161MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for interacting with Google Sheets, providing tools to list sheets, read data from cell ranges, and write data to cell ranges.3MIT
- AlicenseNot gradedqualityBmaintenanceMCP server for Google Sheets operations, enabling spreadsheet management including reading, writing, appending, creating, and searching sheets via natural language.MIT
Related MCP Connectors
Streamable HTTP MCP server for Google Calendar and Sheets with OAuth login.
Google Docs MCP Pack — read, create, and edit Google Docs via OAuth.
Google Ads, Meta Ads & GA4 MCP server - 250+ tools for campaigns, creatives, audiences & reports.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/YerayRodri/google-sheets-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server