
mcp-google-sheets
Your AI assistant's gateway to Google Sheets — read, write, format, and chart spreadsheets via MCP.
Add to your client
Copy the config for your MCP client and paste it into its config file.
uvx mcp-google-sheets@latestPaste into ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-google-sheets": {
"command": "uvx",
"args": [
"mcp-google-sheets@latest"
],
"env": {
"SERVICE_ACCOUNT_PATH": "/full/path/to/your/service-account-key.json",
"DRIVE_FOLDER_ID": "your_shared_folder_id_here"
}
}
}
}Requires `uv` (the Python package runner). Install it from https://docs.astral.sh/uv/ if `uvx` is not found.
Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf
Before you start
- A Google Cloud Platform project with the Google Sheets API and Google Drive API enabled
- Google credentials: a Service Account JSON key (recommended), OAuth 2.0 client credentials, or Application Default Credentials
- uv / uvx installed (fast Python package installer), or Python with the package installed
- For Service Account use: a Google Drive folder shared with the service account email (DRIVE_FOLDER_ID)
About mcp-google-sheets
An MCP server that connects MCP-compatible clients to the Google Sheets and Google Drive APIs, exposing 19 tools for reading, writing, formatting, charting, and managing spreadsheets through natural language. Runs via uvx with no install step, supports Service Account / OAuth 2.0 / Base64 credential injection / ADC authentication, and can optionally run as a Docker container over SSE.
Tools & capabilities (20)
list_spreadsheetsLists spreadsheets in the configured Drive folder (Service Account) or accessible by the user (OAuth); optional folder_id.
create_spreadsheetCreates a new spreadsheet with a given title and optional target Drive folder; returns spreadsheetId, title, and folder.
get_sheet_dataReads data from a range in a sheet/tab (A1 notation); can return values only or full grid data with formatting/metadata.
get_sheet_formulasReads cell formulas from a range in a sheet/tab as a 2D array.
update_cellsWrites a 2D array of values to a specific A1-notation range, overwriting existing data.
batch_update_cellsUpdates multiple ranges in a single API call via a map of range strings to 2D value arrays.
add_rowsInserts empty rows into a sheet/tab at a specified 0-based start index.
add_columnsInserts empty columns into a sheet/tab at a specified 0-based start index.
list_sheetsLists all sheet/tab names within a spreadsheet.
create_sheetAdds a new sheet/tab to a spreadsheet and returns its properties.
get_multiple_sheet_dataFetches data from multiple ranges across potentially different spreadsheets in one call.
get_multiple_spreadsheet_summaryGets titles, sheet/tab names, headers, and the first few rows for multiple spreadsheets.
share_spreadsheetShares a spreadsheet with specified users/emails and roles (reader, commenter, writer), with optional notifications.
copy_sheetDuplicates a sheet/tab from one spreadsheet to another, optionally renaming it.
rename_sheetRenames an existing sheet/tab within a spreadsheet.
add_chartCreates a chart (COLUMN, BAR, LINE, AREA, PIE, SCATTER, COMBO, HISTOGRAM) from a data range, with title, axis labels, position, and size options.
batch_updateApplies multiple low-level spreadsheet update operations in one batchUpdate request.
find_in_spreadsheetFinds matching content within a spreadsheet.
search_spreadsheetsSearches for spreadsheets accessible to the configured account.
list_foldersLists Google Drive folders.
What this server can do
mcp-google-sheets provides tools for these capabilities — tap one to see every MCP server that does the same:
When to use it
- Listing and creating Google Spreadsheets from natural-language requests
- Reading and writing cell ranges, including batch updates across multiple ranges
- Summarizing or previewing data across several spreadsheets at once
- Managing sheet/tab structure: adding, renaming, copying sheets and inserting rows/columns
- Sharing spreadsheets with collaborators at specific access levels
- Generating charts (column, bar, line, pie, etc.) directly from spreadsheet data
Security notes
Requires Google Cloud credentials with access to the Google Sheets and Google Drive APIs. A Service Account is recommended; store its JSON key file securely and share only the intended Drive folder with the service account's email. For container/CI environments, prefer injecting Base64-encoded credentials via the CREDENTIALS_CONFIG env var rather than mounting key files. OAuth tokens are written to TOKEN_PATH, which must be writable. Granting the service account broad roles (e.g. Editor) gives the server wide access to your spreadsheets, so scope permissions appropriately.
mcp-google-sheets FAQ
How do I run the server?
Install uv, set your Google credential environment variables, then run `uvx mcp-google-sheets@latest`. Most MCP clients (e.g. Claude Desktop) can launch the server for you via the config block.
Which authentication methods are supported?
Four: Service Account (recommended, via SERVICE_ACCOUNT_PATH), OAuth 2.0 (interactive, via CREDENTIALS_PATH/TOKEN_PATH), direct Base64 credential injection (CREDENTIALS_CONFIG, ideal for Docker/CI), and Application Default Credentials (ADC). The server checks them in priority order.
Can I reduce the context tokens it consumes?
Yes. By default all 19 tools are enabled (~13K tokens). Use the `--include-tools` command-line flag or the `ENABLED_TOOLS` environment variable with a comma-separated list to expose only the tools you need.
Does it support HTTP/SSE transport?
Yes. The included Dockerfile starts the server with `--transport sse` on HOST/PORT (default port 8000); point your MCP client at http://localhost:8000 using SSE. The default uvx/Claude Desktop usage is over stdio.
Is this an official Google project?
No. It is a community open-source project (MIT licensed) by xing5, built with FastMCP and the Google API Python Client libraries.
Alternatives to mcp-google-sheets
Compare all alternatives →Self-hosted MCP server for Jira and Confluence Cloud and Server/Data Center.
Create, read, and modify Excel workbooks with your AI agent — no Microsoft Excel required.
Official Notion server to read, search, create, and update pages and databases in your workspace.