MCP server that integrates with Google Drive and Google Sheets to enable creating and modifying spreadsheets
Server has 5 tools with basic schemas and descriptions, but significant gaps limit production readiness. Tool names follow verb_noun convention (get_, update_, search_, fetch). Descriptions exist but are generic (avg ~120 chars, below 194-char baseline). Input schemas are present with type definitions, but parameter descriptions are minimal or missing context. No output schemas documented. Error handling is absent, no recovery guidance, retryability classification, or actionable error messages. Missing idempotency hints for write operations. No tool annotations (readOnlyHint/destructiveHint). Composition is reasonable (single responsibility per tool), but chaining support is weak, responses don't consistently include IDs needed for downstream calls.
Retrieve complete spreadsheet content by ID for detailed analysis. This tool fetches the full spreadsheet content from Google Sheets API. Use this after finding relevant spreadsheets with the search tool to get complete information for analysis and proper citation.
Get data from a specific sheet in a Google Spreadsheet.
Get formulas from a specific sheet in a Google Spreadsheet.
Search for spreadsheets and sheets using Google Sheets API. This tool searches through your Google Drive to find spreadsheets that match the query. Returns a list of search results with basic information. Use the fetch tool to get complete spreadsheet content.
Update cells in a Google Spreadsheet.
No output schemas documented. LLMs cannot predict response structure, forcing them to guess field names and types for downstream tool calls. This breaks tool chaining.
No error handling guidance. Tools lack recovery hints, retryability classification, or actionable error messages. A failed API call returns nothing to guide the LLM's next step.
Missing tool annotations. update_cells is destructive but lacks destructiveHint. get_sheet_data is read-only but lacks readOnlyHint. Agents cannot distinguish safe from risky operations.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
Parameter descriptions are minimal. 'range' is described as 'Optional cell range in A1 notation (e.g., A1:C10)', no mention of what happens if omitted, or constraints on size. LLMs cannot infer valid ranges.
No pagination support. search and fetch lack limit/offset parameters and result count fields. Large result sets will blow context windows; no guidance on handling truncation.