{
  "markdown": "# mcp-omnisearch\n\n[![built with vite+](https://img.shields.io/badge/built%20with-Vite+-646CFF?logo=vite&logoColor=white)](https://viteplus.dev)\n[![tested with vitest](https://img.shields.io/badge/tested%20with-Vitest-6E9F18?logo=vitest&logoColor=white)](https://vitest.dev)\n\nA Model Context Protocol (MCP) server that provides unified access to\nTavily, Brave, Kagi, Exa AI, GitHub, Linkup, and Firecrawl through\nfour consolidated tools.\n\n<a href=\"https://glama.ai/mcp/servers/gz5wgmptd8\">\n  <img width=\"380\" height=\"200\" src=\"https://glama.ai/mcp/servers/gz5wgmptd8/badge\" alt=\"Glama badge\" />\n</a>\n\n## Quick start\n\nInstall the published server with\n[MCPick](https://github.com/spences10/mcpick):\n\n```bash\nnpx mcpick add \\\n  --name mcp-omnisearch \\\n  --command npx \\\n  --args=-y,mcp-omnisearch\n```\n\nMCPick defaults to Claude Code. Use `--client` and `--scope` to target\nanother client or add the server to the current repository:\n\n```bash\nnpx mcpick add \\\n  --name mcp-omnisearch \\\n  --command npx \\\n  --args=-y,mcp-omnisearch \\\n  --client vscode \\\n  --scope project\n```\n\nSee [Deployment](docs/deployment.md#install-with-mcpick) for\nsecret-safe provider-key setup and the supported clients.\n\nTo run from source instead:\n\n```bash\npnpm install\npnpm run build\nnode ./dist/index.js\n```\n\nYou can also configure the server manually with whichever provider\nkeys you have. Providers without keys are skipped and the rest keep\nworking.\n\n```json\n{\n\t\"mcpServers\": {\n\t\t\"mcp-omnisearch\": {\n\t\t\t\"command\": \"node\",\n\t\t\t\"args\": [\"/path/to/mcp-omnisearch/dist/index.js\"],\n\t\t\t\"env\": {\n\t\t\t\t\"TAVILY_API_KEY\": \"your-tavily-key\",\n\t\t\t\t\"KAGI_API_KEY\": \"your-kagi-key\",\n\t\t\t\t\"BRAVE_API_KEY\": \"your-brave-key\",\n\t\t\t\t\"GITHUB_API_KEY\": \"your-github-token\",\n\t\t\t\t\"EXA_API_KEY\": \"your-exa-key\",\n\t\t\t\t\"LINKUP_API_KEY\": \"your-linkup-key\",\n\t\t\t\t\"FIRECRAWL_API_KEY\": \"your-firecrawl-key\"\n\t\t\t}\n\t\t}\n\t}\n}\n```\n\n## Tools\n\n### `web_search`\n\nSearch the web with Tavily, Brave, Kagi, Exa, or Kagi Enrichment.\n\n```json\n{\n\t\"query\": \"latest SvelteKit releases\",\n\t\"provider\": \"tavily\",\n\t\"limit\": 10,\n\t\"search_depth\": \"advanced\",\n\t\"topic\": \"news\",\n\t\"time_range\": \"month\",\n\t\"safe_search\": true,\n\t\"include_raw_content\": false,\n\t\"auto_parameters\": false\n}\n```\n\nSearch controls apply when supported by the selected provider.\n\n### `ai_search`\n\nGet sourced AI answers with Kagi FastGPT, Exa Answer, Linkup, or\nTavily Research. Tavily Research returns a task ID first; pass it back\nas `research_id` to retrieve the report.\n\n```json\n{\n\t\"query\": \"Explain the differences between REST and GraphQL\",\n\t\"provider\": \"kagi_fastgpt\"\n}\n```\n\n### `github_search`\n\nSearch GitHub code, repositories, or users.\n\n```json\n{\n\t\"query\": \"filename:remote.ts @sveltejs/kit\",\n\t\"search_type\": \"code\",\n\t\"limit\": 5\n}\n```\n\n### `web_extract`\n\nExtract, crawl, scrape, summarize, or find similar content with\nTavily, Kagi, Firecrawl, or Exa.\n\n```json\n{\n\t\"url\": \"https://example.com/long-article\",\n\t\"provider\": \"tavily\",\n\t\"mode\": \"extract\",\n\t\"extract_depth\": \"advanced\",\n\t\"query\": \"installation requirements\",\n\t\"chunks_per_source\": 3,\n\t\"format\": \"markdown\"\n}\n```\n\n## Documentation\n\n- [Provider selection](docs/provider-selection.md) — choose providers\n  by task, key, mode, and capability.\n- [Search operators](docs/search-operators.md) — operator support\n  matrix and tested examples.\n- [Large results](docs/large-results.md) — inline vs file response\n  behavior and remote deployment caveats.\n- [Deployment](docs/deployment.md) — MCP client, WSL, and Firecrawl\n  setup.\n- [Troubleshooting](docs/troubleshooting.md) — keys, access,\n  validation, rate limits, and common failures.\n\n## Environment variables\n\n- `TAVILY_API_KEY`\n- `KAGI_API_KEY`\n- `BRAVE_API_KEY`\n- `GITHUB_API_KEY`\n- `EXA_API_KEY`\n- `LINKUP_API_KEY`\n- `FIRECRAWL_API_KEY`\n- `FIRECRAWL_BASE_URL` optional, for self-hosted Firecrawl\n- `OMNISEARCH_LARGE_RESULT_MODE` optional, `file` default or `inline`\n\n## Development\n\n```bash\npnpm install\npnpm run build\npnpm test\n```\n\nPlease read [CONTRIBUTING.md](CONTRIBUTING.md) before opening a PR.\n\n## License\n\nMIT License - see [LICENSE](LICENSE).\n\n## Acknowledgments\n\nBuilt on\n[Model Context Protocol](https://github.com/modelcontextprotocol),\n[Tavily](https://tavily.com), [Kagi](https://kagi.com),\n[Brave Search](https://search.brave.com), [Exa AI](https://exa.ai),\n[Linkup](https://linkup.so), and [Firecrawl](https://firecrawl.dev).\n",
  "bytes": 4352,
  "sha": "889d6b32899957c1555b1443f67217384f606dfe1aa82c7eec5c892e24c1c019",
  "repo_slug": "spences10/mcp-omnisearch",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_spences10_mcp_omnisearch_c775273d/readme"
}