SarthakS97/sheetsdb-mcp-server
3.1
If you are the rightful owner of sheetsdb-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
SheetsDB MCP Server enables interaction with Google Sheets through the SheetsDB API, facilitating data management tasks.
Tools
6
Resources
0
Prompts
0
SheetsDB MCP Server
A Model Context Protocol (MCP) server that enables Claude to interact with Google Sheets through the SheetsDB API.
Features
- Smart Data Addition - Automatically detects empty vs existing sheets
- Header Management - Uses SheetsDB's
/keysendpoint for reliable header detection - CRUD Operations - Read, import, update, and delete sheet data
- Simple & Reliable - Just 6 focused tools, ~150 lines of code
Tools Available
get_keys- Get column headers from sheetsmart_add_data- Intelligently add data (import_json for empty sheets, create for existing)read_sheet- Read data from sheetimport_json- Import JSON data to empty sheetsupdate_row- Update specific rowsdelete_rows- Delete rows by criteria
Quick Start
Prerequisites
- Node.js 18+
- SheetsDB account and API endpoint
- Claude Desktop or compatible MCP client
Installation
-
Clone this repository:
git clone https://github.com/yourusername/sheetsdb-mcp-server.git cd sheetsdb-mcp-server -
Install dependencies:
npm install -
Test the server:
npm start
Local Claude Desktop Setup
Add to your claude_desktop_config.json:
{
"mcpServers": {
"sheetsdb": {
"command": "node",
"args": ["/path/to/your/sheetsdb-mcp-server/server.js"]
}
}
}
Deploy with Smithery.ai
-
Push to GitHub:
git add . git commit -m "Initial commit" git push origin main -
Deploy on Smithery.ai:
- Go to Smithery.ai
- Click "Deploy MCP with GitHub"
- Select this repository
- The
mcp-config.jsonwill be automatically detected
-
Use in Claude:
- Get your Smithery deployment URL
- Add to Claude Desktop config or use directly
Usage Examples
Adding Meal Data
User: "Add chicken dinner (340 calories, 25g protein) to my calorie tracker: https://sheetdb.io/api/v1/your-id"
Claude will:
1. Call get_keys to check headers
2. Call smart_add_data with proper mapping
3. Either create headers (first time) or add to existing sheet
Reading Data
User: "Show me my last 5 meals"
Claude: [Uses read_sheet with limit=5]
Updating Entries
User: "Update yesterday's breakfast calories to 350"
Claude: [Uses update_row to find and modify the entry]
Configuration
The server expects SheetsDB endpoints in this format:
https://sheetdb.io/api/v1/YOUR_SHEET_ID
No additional configuration required - just provide the endpoint when using tools.
Security Notes
- Endpoints are validated to ensure they're legitimate SheetsDB URLs
- No API keys stored in the server (SheetsDB handles auth via URL)
- All requests go directly to SheetsDB's secure endpoints
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
License
MIT License - see LICENSE file for details
Support
- Create an issue for bugs or feature requests
- Check SheetsDB documentation for API-specific questions
- See MCP documentation for protocol details