MCP server that provides access to Google Gemini with built-in Google Search and URL context capabilities
Single tool 'ask_gemini' has a reasonable name starting with a verb, but the implementation has significant gaps in schema completeness, parameter descriptions, and output documentation. The tool accepts only one parameter ('prompt') with a moderately detailed description (123 characters, within baseline range of 34-392), but lacks comprehensive output schema documentation and error handling guidance. No tool annotations present. The server structure is clean but offers minimal composability or advanced features.
Generate comprehensive responses using Google Gemini with built-in Google Search and URL context capabilities. Include URLs directly in your prompt text for the AI to automatically search and analyze them along with other relevant information.
Output schema not documented. Tool description states it generates 'comprehensive responses' but the actual response structure (fields, types, pagination, metadata) is not specified in any visible schema. LLMs cannot plan downstream operations or extract structured data reliably.
Single parameter 'prompt' lacks type constraints and detailed format guidance. Description mentions 'include URLs directly in your prompt text' but does not specify format (comma-separated, newline-separated, URL validity regex, max length). Unbounded string invites LLM to pass oversized or malformed input.
Error handling lacks recovery guidance. CallToolRequestSchema handler returns 'Error: <message>' text but does not categorize errors (retryable vs fatal) or suggest next steps. LLM receives no actionable recovery path on failure.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 47 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 46 | - | v1 |
No tool annotations. Tool performs a READ_ONLY query to Gemini API but lacks readOnlyHint annotation in schema. Missing idempotentHint makes retry safety unclear to agents. Protocol 2026-07-28 supports tool annotations; server does not use them.
Prompt feature advertised but not implemented. Server declares 'prompts: {}' in capabilities but ListPromptsRequestSchema returns empty array and GetPromptRequestSchema throws 'not available'. Misleading to clients expecting prompt support.
API key validation happens at startup only. If GEMINI_API_KEY is invalid or expires, server starts but tool calls fail silently with unclear error. No per-call credential validation or graceful degradation.
GeminiClient.generate() constructs tools array with 'googleSearch: {}' and 'urlContext: {}' as cast-to-unknown Tool[]. Type comment 'Types don't yet include these MCP tools' suggests incomplete API surface understanding. No validation of tool availability or error handling if Gemini API rejects them.