LabscoMCP early access ↗
cnosukeMCP SERVER

MCP Gemini Grounded Search

One tool: ask a question, get an answer with the sources it came from, grounded through Gemini's search.

by cnosuke ↗Web Search EnginesCommunity

LABSCO SUMMARY

Answers arrive with their sources attached, not as unattributed prose.

The groundings array is the whole point: each answer carries the pages behind it, so a claim can be opened and checked instead of trusted. Two knobs decide cost and latency — the thinking level, settable per call, and the token cap — and every HTTP setting can come from the environment, so no secret has to sit in config.yml.

What it is

A Go server that turns Gemini's grounded search into a single MCP tool. The response is not just text — it carries the source titles, domains and URLs the answer was built from, so a claim can be checked rather than taken on faith.

What you get

  • search takes a natural-language question and returns generated text plus a groundings list of title, domain and URL
  • max_token caps the response size for one call and thinking_level overrides the reasoning depth per call
  • Two transports: stdio for Claude Desktop and Claude Code, and Streamable HTTP via the httpserver subcommand
  • In HTTP mode, /health is unauthenticated for liveness checks while the MCP endpoint requires a bearer token

Requirements

A Gemini API key in GEMINI_API_KEY. Docker is the recommended path: docker pull cnosuke/mcp-gemini-grounded-search:latest and run it with server as the argument. To build from source you need Go 1.24 or later. GEMINI_MODEL_NAME defaults to gemini-3.6-flash, GEMINI_MAX_TOKENS to 5000, and GEMINI_THINKING_LEVEL accepts MINIMAL, LOW, MEDIUM or HIGH. For HTTP mode, HTTP_AUTH_TOKEN is the bearer token, HTTP_PORT defaults to 8080 and HTTP_ENDPOINT_PATH to /mcp.

Setup effort

One command plus a key — docker pull cnosuke/mcp-gemini-grounded-search:latest, then supply credentials