{
  "markdown": "<p align=\"center\">\n  <a href=\"https://groundroute.ai\">\n    <img src=\"./assets/banner.svg\" alt=\"GroundRoute, web search MCP server\" width=\"100%\"/>\n  </a>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://glama.ai/mcp/servers/PROJECT-B-26/groundroute-mcp\"><img src=\"https://glama.ai/mcp/servers/PROJECT-B-26/groundroute-mcp/badges/score.svg\" alt=\"Glama score\"/></a>\n  <a href=\"LICENSE\"><img src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"License: MIT\"/></a>\n  <a href=\"https://www.python.org/\"><img src=\"https://img.shields.io/badge/python-3.12%2B-blue.svg\" alt=\"Python 3.12+\"/></a>\n  <a href=\"https://modelcontextprotocol.io\"><img src=\"https://img.shields.io/badge/MCP-compatible-success.svg\" alt=\"MCP compatible\"/></a>\n  <a href=\"https://smithery.ai/servers/groundroute-ai/web-search\"><img src=\"https://smithery.ai/badge/groundroute-ai/web-search\" alt=\"Smithery\"/></a>\n</p>\n\n> Give your AI agent **web search across 6 engines** through **one** MCP `search` tool. Hosted. Routed. Cached.\n\n## Why GroundRoute\n\n- **One tool, six engines.** Serper, Brave, Exa, Tavily, Firecrawl, Perplexity, behind a single `search` call. Stop wiring up six APIs, six SDKs, six billing portals.\n- **Never more than going direct.** Gain-share pricing: you keep ~half of every cache saving, GroundRoute keeps ~half. On a miss, you just pay the engine. BYOK supported.\n- **Routing, caching, failover, on by default.** Each query goes to the cheapest engine that clears a quality bar. Repeats serve from cache. If an engine degrades, we fall back automatically. No agent code changes.\n\n## See it work (5 seconds)\n\nA call to the `search` tool:\n```json\n{\n  \"name\": \"search\",\n  \"arguments\": { \"query\": \"what is RAGflow\", \"max_results\": 3 }\n}\n```\n\nThe response (trimmed):\n```json\n{\n  \"results\": [\n    {\n      \"url\": \"https://ragflow.io/docs/\",\n      \"title\": \"Quickstart - RAGFlow\",\n      \"snippet\": \"RAGFlow is an open-source RAG engine based on deep document understanding...\",\n      \"source_engine\": \"serper\"\n    },\n    {\n      \"url\": \"https://github.com/infiniflow/ragflow\",\n      \"title\": \"RAGFlow is a leading open-source Retrieval-Augmented Generation engine\",\n      \"snippet\": \"RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine...\",\n      \"source_engine\": \"serper\"\n    }\n  ],\n  \"meta\": {\n    \"request_id\": \"req_abc123\",\n    \"cache_tier\": \"miss\",\n    \"degraded\": false,\n    \"cost_usd\": 0.0021\n  }\n}\n```\n\n`source_engine` tells you which engine answered. `meta` exposes the cache tier and billed cost per call.\n\n## Benchmarked, not just shipped\n\nWe ran **170 real agent queries across all 6 engines**, judged by an LLM, to map cost vs. quality per query class. Full methodology and per-engine results: [State of AI Search](https://groundroute.ai/state-of-ai-search).\n\n---\n\n## Install\n\nThe hosted endpoint is `https://api.groundroute.ai/mcp` (streamable-HTTP). Get an API key at [groundroute.ai/keys](https://groundroute.ai/keys).\n\n**Claude Desktop / Claude Code**, add to your MCP config:\n```json\n{\n  \"mcpServers\": {\n    \"groundroute\": {\n      \"type\": \"http\",\n      \"url\": \"https://api.groundroute.ai/mcp\",\n      \"headers\": { \"Authorization\": \"Bearer gr_YOUR_KEY\" }\n    }\n  }\n}\n```\n\n**Cursor**, `~/.cursor/mcp.json`:\n```json\n{ \"mcpServers\": { \"groundroute\": { \"url\": \"https://api.groundroute.ai/mcp\",\n  \"headers\": { \"Authorization\": \"Bearer gr_YOUR_KEY\" } } } }\n```\n\n**VS Code** (native MCP / Continue), `.vscode/mcp.json`:\n```json\n{ \"servers\": { \"groundroute\": { \"type\": \"http\", \"url\": \"https://api.groundroute.ai/mcp\",\n  \"headers\": { \"Authorization\": \"Bearer gr_YOUR_KEY\" } } } }\n```\n\n**Local / stdio-only clients**, bridge stdio to HTTP with `mcp-remote`:\n```json\n{ \"mcpServers\": { \"groundroute\": {\n  \"command\": \"npx\",\n  \"args\": [\"-y\", \"mcp-remote\", \"https://api.groundroute.ai/mcp\", \"--header\", \"Authorization:Bearer gr_YOUR_KEY\"]\n} } }\n```\n\n## Run this repo's stdio server (optional)\n\nThis repo also ships a small native **stdio** MCP server (`server.py`) that forwards to the hosted API, useful for stdio-only clients or containerized runs.\n\n```bash\npip install -r requirements.txt\nGROUNDROUTE_API_KEY=gr_YOUR_KEY python server.py\n```\n\nOr with Docker:\n\n```bash\ndocker build -t groundroute-mcp .\ndocker run -i -e GROUNDROUTE_API_KEY=gr_YOUR_KEY groundroute-mcp\n```\n\nIntrospection (tool discovery) works with no key; running a search requires `GROUNDROUTE_API_KEY` (get one at https://groundroute.ai/keys).\n\n## The `search` tool\n| Param | Type | Notes |\n|---|---|---|\n| `query` | string | required |\n| `mode` | enum | `auto` (default), `web`, `news`, `academic`, `answer`, `page` |\n| `max_results` | integer | default 10, max 50 |\n| `freshness` | enum | `fresh`, `semi`, `static`; omit to auto-detect |\n| `domains` | string[] | include-only domain filter, e.g. `[\"arxiv.org\"]` |\n| `lang` | string | ISO 639-1 language code, e.g. `en` |\n| `country` | string | ISO 3166-1 alpha-2 country code, e.g. `us` |\n\nReturns a **structured result**: ranked `results` (url / title / snippet / content / source_engine / published_at), an optional synthesized `answer` with `citations` (answer mode), and `meta` (request_id / cache_tier / degraded / cost_usd). Routed, cached, and reliable.\n\n## How it works\nOne endpoint in front of many search engines, with price-led routing, caching, failover, and usage governance. See the [docs](https://groundroute.ai/docs/mcp-server) and the [State of AI Search benchmark](https://groundroute.ai/state-of-ai-search) (170 real agent queries across all 6 engines).\n\n## Links\n- Homepage: https://groundroute.ai\n- Get a key: https://groundroute.ai/keys\n- Playground (try without installing): https://groundroute.ai/playground\n- Docs: https://groundroute.ai/docs/mcp-server\n\n`registry-manifest.json` in this repo is the listing manifest for MCP registries.\n",
  "bytes": 5793,
  "sha": "d4d320faeaccdd8a783dafb840cd919acfcc25ff6c2a18af88d02a03c87c43bc",
  "repo_slug": "project-b-26/groundroute-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_ai_groundroute_web_search_0e5bebc1/readme"
}