Google Sheets
About
A server for comprehensive Google Sheets integration, requiring Google OAuth credentials.
Details
- Author
- prajapdh
- Categories
- Productivity, Security, Other
Jump to
Setup
Install Google Sheets in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/prajapdh/sheets-mcp-server
Follow the installation instructions in the repository README, then restart your MCP client.
A Model Context Protocol (MCP) server that provides comprehensive Google Sheets integration. This server enables you to create, read, update, and manage Google Sheets spreadsheets programmatically.
- Createnew Google Sheets spreadsheets with custom sheet names
- Readdata from any range in a spreadsheet
- Writedata to specific ranges
- Appendnew rows to existing data
- Clearranges of data
- Getspreadsheet information and metadata
- Batch updatemultiple ranges efficiently
- Creates a new Google Sheets spreadsheet
- Input:title(required),sheet_names(optional array)
- Returns: Spreadsheet ID, URL, and created sheet names
- Reads data from a specific range
- Input:spreadsheet_id,range_name(e.g., 'Sheet1!A1:C10')
- Returns: 2D array of cell values
- Writes data to a specific range (overwrites existing data)
- Input:spreadsheet_id,range_name,values(2D array)
- Returns: Update statistics
- Appends rows to the end of a range
- Input:spreadsheet_id,range_name,values(2D array)
- Returns: Update statistics
- Clears all data from a specified range
- Input:spreadsheet_id,range_name
- Returns: Confirmation of cleared range
- Gets metadata about a spreadsheet
- Input:spreadsheet_id
- Returns: Title, URL, sheet information, dimensions
- Performs multiple range updates in a single request
- Input:spreadsheet_id,updates(array of range/values pairs)
- Returns: Total update statistics
- manage-sheets: General Google Sheets management prompt for AI assistants
- Create a Google Cloud projector use an existing one
- Enable the Google Sheets API
- Configure an OAuth consent screen
- Select "External" for testing purposes
- Add your email as a test user
On first run, the server will launch a browser for OAuth authentication. Access tokens will be saved to the specified--token-pathfor future use.
uv run sheets \ --creds-file-path /path/to/your/credentials.json \ --token-path /path/to/your/tokens.json
Add to yourclaude_desktop_config.json:
{ "mcpServers": { "google-sheets": { "command": "uv", "args": [ "--directory", "/absolute/path/to/sheets-mcp-server", "run", "sheets", "--creds-file-path", "/path/to/your/credentials.json", "--token-path", "/path/to/your/tokens.json" ] } } }
This server follows the standard MCP protocol and can be integrated with any MCP-compatible client.
{ "tool": "create-spreadsheet", "arguments": { "title": "My Data Analysis", "sheet_names": ["Data", "Analysis", "Charts"] } }
{ "tool": "read-range", "arguments": { "spreadsheet_id": "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms", "range_name": "Sheet1!A1:E10" } }
{ "tool": "write-range", "arguments": { "spreadsheet_id": "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms", "range_name": "Sheet1!A1:C3", "values": [ ["Name", "Age", "City"], ["Alice", "30", "New York"], ["Bob", "25", "San Francisco"] ] } }
{ "tool": "append-rows", "arguments": { "spreadsheet_id": "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms", "range_name": "Sheet1!A:C", "values": [ ["Charlie", "35", "Chicago"], ["Diana", "28", "Boston"] ] } }
{ "tool": "batch-update", "arguments": { "spreadsheet_id": "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms", "updates": [ { "range": "Sheet1!A1:B2", "values": [["Header1", "Header2"], ["Data1", "Data2"]] }, { "range": "Sheet1!D1:E2", "values": [["Header3", "Header4"], ["Data3", "Data4"]] } ] } }
npx @modelcontextprotocol/inspector uv run sheets \ --creds-file-path /path/to/credentials.json \ --token-path /path/to/tokens.json
- Create a test spreadsheet
- Read some datato verify connectivity
- Write test datato ensure write permissions work
- Try different range formats(A1 notation, named ranges, etc.)
1. Create spreadsheet for analysis 2. Import raw data via append-rows 3. Read data for processing 4. Write calculated results back 5. Generate reports and summaries
1. Create content tracking spreadsheet 2. Append new content entries 3. Update status and metadata 4. Generate content reports
1. Create project tracking sheet 2. Add tasks and milestones 3. Update progress and status 4. Generate project dashboards
1. Read data from external systems 2. Transform and validate data 3. Write to Google Sheets for sharing 4. Keep data synchronized across platforms
- A1 notation:Sheet1!A1:C10
- Named ranges:MyNamedRange
- Entire columns:Sheet1!A:C
- Entire rows:Sheet1!1:5
- Open-ended ranges:Sheet1!A1:C
The server includes comprehensive error handling for:
- Authentication failures and token refresh
- Network timeouts and connectivity issues
- Invalid spreadsheet IDs or range names
- Permission errors
- API quota limits
- Malformed data inputs
- Usesasyncio.to_threadfor non-blocking API calls
- Supports batch operations for efficiency
- Handles Google Sheets API rate limits gracefully
- Optimized for both small and large data operations
- https://www.googleapis.com/auth/spreadsheets- Full access to Google Sheets
- Store credentials securely
- Use environment variables for sensitive paths
- Implement proper access controls
- Regularly rotate access tokens
- Monitor API usage and quotas
This server is designed to be easily extensible. Common enhancements:
- Formatting operations(bold, colors, borders)
- Formula supportfor calculated cells
- Chart creationand management
- Conditional formattingrules
- Data validationconstraints
- Pivot tablesand summaries
- Database connectorsfor data import/export
- CSV/Excel fileimport/export
- Real-time collaborationfeatures
- Webhook notificationsfor changes
- Advanced searchand filtering
- Caching strategiesfor frequently accessed data
- Streaming supportfor large datasets
- Parallel processingfor bulk operations
- Connection poolingfor high-throughput scenarios
- 100 requests per 100 seconds per user
- 1000 requests per 100 seconds(total quota)
- Maximum 10 million cellsper spreadsheet
- Maximum 200 sheetsper spreadsheet
All tools return structured responses with:
- Status indicators(success/error)
- Detailed error messageswhen applicable
- Update statisticsfor write operations
- Structured datafor read operations
- Verify credentials file path
- Check OAuth consent screen configuration
- Ensure correct scopes are configured
- Verify spreadsheet sharing permissions
- Check if spreadsheet exists
- Ensure account has edit access
- Validate A1 notation format
- Check sheet names for typos
- Verify range bounds
- Implement request throttling
- Use batch operations when possible
- Monitor usage in Google Cloud Console
Ready to supercharge your Google Sheets workflows with automated operations!🚀
The 1Password MCP server creates a bridge that allows MCP clients such as Codex and Kiro to manage your 1Password Environments with secure authorization prompts.
Browser automation framework with savable auth profiles and compliance options viable to enterprise developments.
Hosted notes MCP server: full-text and semantic search, tags, folders, note CRUD, and spaced-repetition review over your notes, bookmarks, and feeds (OAuth 2.1, remote endpoint https://mcp.dexi.net/mcp).
Integrate with Google Sheets to read, write, and manage spreadsheet data.
A server that connects to the Google Sheets API, enabling AI-driven spreadsheet automation and data manipulation.
Interact with Google Sheets using a Python-based MCP server and Google Apps Script.
A server for interacting with Google Sheets, allowing you to read, write, and manage spreadsheet data.
Full Google Sheets integration - read, write, format cells, create charts, use formulas, and manage spreadsheets.
24 AI-callable tools for API mocking, chaos engineering, security scanning, SSL checks, CORS debugging, OpenAPI validation, JWT decoding, HAR analysis, distributed tracing, webhook capture, automation workflows, and uptime monitoring. Supports OAuth2 and Bearer token auth.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




