{"schemaVersion":"2024-11-05","name":"groundroute-web-search","displayName":"GroundRoute Search","description":"Web search for AI agents across multiple engines (Brave, Serper, Exa, Tavily, Firecrawl, Perplexity) with price-led routing and caching. Returns ranked results, an optional synthesized answer, and citations.","version":"0.3.0","transport":"streamable-http","endpoint":"https://api.groundroute.ai/mcp","documentation":"https://groundroute.ai/docs/mcp","authentication":{"type":"http","scheme":"bearer","description":"GroundRoute API key (gr_...) sent as an HTTP Bearer token. Create one at https://groundroute.ai/overview. No OAuth."},"capabilities":{"tools":{"listChanged":false}},"tools":[{"name":"search","title":"Web Search","description":"Search the web via GroundRoute. Routes the query to the best-value engine across Brave, Serper, Exa, Tavily, Firecrawl, and Perplexity (price-led), serving cache hits when available. Returns ranked results, an optional synthesized answer, and citations.","inputSchema":{"type":"object","required":["query"],"properties":{"query":{"type":"string","description":"The search query."},"mode":{"type":"string","default":"auto","enum":["auto","web","news","academic","answer","page"],"description":"Search mode: 'auto' (GroundRoute classifies and picks), or force one of 'web', 'news', 'academic', 'answer', 'page'."},"max_results":{"type":"integer","default":10,"minimum":1,"maximum":50,"description":"Maximum number of results to return."},"freshness":{"type":"string","enum":["fresh","semi","static"],"description":"Recency filter: 'fresh', 'semi', or 'static'. Omit to auto-detect."},"domains":{"type":"array","items":{"type":"string"},"description":"Restrict results to these domains (include-only)."},"lang":{"type":"string","description":"ISO 639-1 language code, e.g. 'en'."},"country":{"type":"string","description":"ISO 3166-1 alpha-2 country code, e.g. 'us'."}}},"annotations":{"title":"Web Search","readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true},"outputSchema":{"$defs":{"SearchCitation":{"description":"A source backing the synthesized answer.","properties":{"url":{"description":"Cited source URL.","title":"Url","type":"string"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Cited source title.","title":"Title"},"index":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Citation index referenced in the answer.","title":"Index"}},"required":["url"],"title":"SearchCitation","type":"object"},"SearchHit":{"description":"A single ranked search result.","properties":{"url":{"description":"Result URL.","title":"Url","type":"string"},"title":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Result title.","title":"Title"},"snippet":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Short highlighted extract from the page.","title":"Snippet"},"content":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Full page body / extract when the engine provides it (page mode → Firecrawl markdown, academic → Exa text); null for link-only engines. Use this for full-text reading.","title":"Content"},"source_engine":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"The search engine GroundRoute routed this result to.","title":"Source Engine"},"published_at":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"ISO-8601 publish timestamp, when the engine reports one.","title":"Published At"}},"required":["url"],"title":"SearchHit","type":"object"},"SearchToolMeta":{"description":"Routing, cache, and billing metadata for the call.","properties":{"request_id":{"description":"GroundRoute request id — quote it when reporting issues.","title":"Request Id","type":"string"},"cache_tier":{"description":"Tier that served the query: miss, exact_private, exact_pooled, or semantic.","title":"Cache Tier","type":"string"},"degraded":{"description":"True if a fallback/degraded path was used.","title":"Degraded","type":"boolean"},"cost_usd":{"description":"Amount billed for this call, in USD.","title":"Cost Usd","type":"number"}},"required":["request_id","cache_tier","degraded","cost_usd"],"title":"SearchToolMeta","type":"object"}},"description":"The `search` tool's structured result.","properties":{"results":{"description":"Ranked search results.","items":{"$ref":"#/$defs/SearchHit"},"title":"Results","type":"array"},"answer":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Synthesized answer when the query warrants one; else null.","title":"Answer"},"citations":{"description":"Sources backing the answer.","items":{"$ref":"#/$defs/SearchCitation"},"title":"Citations","type":"array"},"meta":{"$ref":"#/$defs/SearchToolMeta","description":"Routing/cache/billing metadata for the call."}},"required":["results","meta"],"title":"SearchToolResult","type":"object"}}]}