MCP server for AI-powered research using Gemini: quick grounded search + Deep Research Agent
The server provides 20 tools across research, web, session management, and testing domains. However, definition quality is significantly hampered by: (1) STDIO-only transport limiting protocol score; (2) missing input schemas for several tools; (3) inconsistent parameter documentation; (4) fixture/test tools mixed with production tools; (5) vague tool descriptions lacking concrete guidance on when to invoke each tool. The core research tools (research_web, research_deep, research_deep_max) have reasonable descriptions but lack detailed parameter schemas and output documentation. Several tools (search_tools, call_tool, list_format_templates) appear to serve internal discovery purposes rather than direct agent use. Fixture tools (tools 14-19) are test infrastructure, not production tools, and should not count toward server quality assessment.
Invoke a discovered tool by name with arguments. Clients that already know a hidden tool name can use this to call it directly.
Save a completed session to disk as Word (`.docx`), Markdown, or JSON. Writes to disk by default (under `GEMINI_RESEARCH_EXPORT_DIR`, default `~/.gemini-research/exports/`); the absolute path is returned in the response.
Fetch and extract content from a webpage URL. Returns cleaned HTML or text content.
Return a deterministic marker token for the given topic (E2E fixture).
A tool intentionally excluded from allowed_tools in both E2E tests. Its output must never leak into a Deep Research Max report - if the canary appears in the final text, the model called a tool outside its allowed_tools scope (or the provider ignored the allow-list), and the release gate must fail.
Introspect another MCP server to validate it for use by the Deep Research Agent. Returns tool definitions and compatibility information.
Test/fixture tools (tools 14-19) should not be exposed in production server. They contaminate the tool namespace and confuse agents about which tools are for actual research vs internal testing.
Missing input schemas or incomplete schemas for critical tools. research_deep_max accepts 'allowed_mcp_tools' as array but no item type or constraints. refine_research_plan lacks schema details. Agents cannot validate input format.
Output schemas not documented. Tools return complex data (research reports, evidence ledgers, session metadata) but no specification of return fields, types, or structure. LLMs cannot plan downstream tool chains.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 54 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 33 | - | v1 |
Browse reusable report templates for research exports. Returns available template definitions for research output formatting.
List all saved research sessions with metadata. Returns session IDs, titles, and timestamps.
Return a compact evidence-backed summary combining ledger and policy data.
Return the evidence ledger: IDs and quantitative facts for the memo.
Return the mission brief for the market-gate evidence fixture.
Return operational platform constraints and the gate-decision vocabulary.
Protocol-only progress reporting demo. Reports progress with messages via context.
Refine or approve a collaborative-planning research plan from deep_research. Used when the agent requests clarification on research direction.
Comprehensive autonomous research agent (3-20 minutes). Requires MCP Tasks support on the client. Automatically asks clarifying questions for vague queries. Streams progress via the Tasks channel. Returns a comprehensive report with citations. Sessions are persisted at the START so they can be recovered with `resume_research` if the client disconnects mid-run.
Deep Research with MCP server integration capability. Allows the Deep Research Agent to call tools from other MCP servers to gather specialized data.
Ask follow-up questions about completed research. Continues conversation after a research session completes.
Fast web research with Gemini grounding (5-30 seconds). Use for: fact-checking, current events, documentation, "what is", "how to".
Resume an interrupted or in-progress `research_deep` run. Also the way to list recoverable sessions when called without arguments.
Discover utility tools via BM25 relevance search. Use natural-language query to find tools for reading webpages, browsing templates, listing sessions, follow-up questions, and resuming research.
Vague or missing parameter descriptions. 'allowed_mcp_tools' in research_deep_max has no constraint on which tools are safe. 'topic' in get_guardrail_summary is undescribed. LLMs cannot determine valid inputs.
Internal discovery tools (search_tools, call_tool, list_format_templates, inspect_mcp_server_for_gemini) expose implementation details and create meta-layer confusion. Agents should call research tools directly, not search for them.
No error handling guidance documented. Tools can fail (API errors, network timeouts, invalid session IDs) but descriptions do not say how to recover or what exceptions might be raised.
Parameter naming inconsistencies. 'session_id' vs 'interaction_id' (resume_research uses interaction_id, export_research_session uses session_id). 'max_depth' with no stated range. LLMs conflate similar but different identifiers.
No pagination or result-limiting documented. list_research_sessions accepts 'limit' but no 'offset' or 'cursor'. Large result sets could exhaust context windows.