← Back to directory
O

Omnisearch MCP Server

Community
Unified access to multiple search engines, AI answers, and content extraction through one interface
Category
Dev Tools #121 of 438
Stars
★ 358 Very popular
Transport
stdio (local process)
Runtime
Node.js
Credentials
Optional API key
License
MIT
Last commit
Tools
4
60FMRS · C

This is a community-maintained (non-official) MCP server that consolidates several search, AI answer, and content extraction services into four tools. It suits developers who already have relevant API keys and want one configuration for many retrieval capabilities. It depends on third-party services and keys, carries data-exposure and rate-limit risks, and providers without keys are unavailable.

Strongest · Documentation 15/20 Weakest · Reliability 10/20

Reliability
10/20
Security and permissions
10/20
Maintenance
12/20
Documentation
15/20
Setup experience
13/20
Why each score
Reliability 10/20
Evidence is limited to README, server.json and repository metadata; no verifiable execution evidence is present (no CI workflow files, no committed test files shown). The README claims vite+/vitest usage, pnpm test and pnpm run build, and the four tools (web_search, ai_search, github_search, web_extract) have parameter examples that are internally consistent, so the happy path is plausible. However, behavior when provider keys are missing, error codes and rate-limit handling, and the stdio initialization handshake are not backed by source; they are inferred, not observed. Whether declared tools match real behavior cannot be statically verified, and no error diagnosis or retry mechanism is described. Per the calibration rule, reliability cannot exceed 12 without verifiable execution evidence, so 10: main path credible, edge cases and error handling thin.
Security and permissions 10/20
No red line is crossed: sample configs contain placeholders only (your-tavily-key, etc.), no real secrets, no covert exfiltration, and no irreversible delete/pay/deploy defaults. Credentials are injected via environment variables, which is standard practice, and self-hosted Firecrawl via FIRECRAWL_BASE_URL is supported, keeping the data boundary somewhat controllable. Deductions: seven search/AI/scraping providers mean user queries and target URLs are sent to multiple third parties, yet the README discloses no explicit data-flow notice or per-provider privacy statement; the scope of GITHUB_API_KEY (whether read-only, least-privilege) is unstated; web_extract's crawl/scrape capability performs outbound fetching with no described confirmation or scope limit; OMNISEARCH_LARGE_RESULT_MODE defaults to writing large results to files, with the write path and contents undisclosed. Main risks are visible but least-privilege scoping, confirmation and data-flow disclosure are incomplete, hence 10.
Maintenance 12/20
An explicit MIT license exists, version 0.0.15 is early 0.x, the repository is not archived, with 349 stars and only 2 open issues, which are signals of ongoing activity. These are discovery signals only and are not governance evidence: no changelog, no release-cadence statement, no security response channel (SECURITY.md), no dependency update policy, and no maintainer ownership statement are visible; only a CONTRIBUTING.md is referenced, whose content is not supplied. The 0.x version itself signals no API stability commitment. Active but with clear gaps in versioning governance and a security-response channel, hence 12.
Documentation 15/20
Documentation is reasonably layered: the README covers quick start, a manual config example, all four tools with parameter examples, a full environment-variable list, and links to five focused docs (provider-selection, search-operators, large-results, deployment, troubleshooting), plus a one-line MCPick install with multi-client/multi-scope usage. Deductions: the bodies of all linked docs are absent from the evidence so their accuracy against real capability cannot be checked; no cost/billing information is disclosed (most of the seven providers are paid APIs, so users cannot estimate spend); which parameters each provider supports is only summarized as 'apply when supported by the selected provider' with no evidenced per-provider capability matrix; and no quantitative statement of rate limits, quotas or retry behavior. Usable, with hidden assumptions and some information gaps, hence 15.
Setup experience 13/20
The install path is clear with two options: a one-line MCPick command (including --client/--scope examples) or from source with pnpm install && pnpm run build && node ./dist/index.js, plus a standard mcpServers JSON config. Providers without keys are skipped, lowering the bar to first success. Deductions: the source path requires the user to provide pnpm and build manually, an extra manual step; the docs acknowledge special WSL and Firecrawl configuration needs without supplying the detail; users must obtain and wire up as many as seven third-party API keys, a fragmented process; and no cross-platform compatibility matrix is evidenced. Per the calibration rule, setup cannot exceed 15 without verifiable execution evidence, so 13: steps are clear but carry manual and multi-credential overhead.

Static review · not runListed 2026-09-18

Read the FMRS scoring method →

Fit and risk

What it can accessUses the network

Best for

  • Developers who want multiple search and extraction providers behind a single configuration
  • MCP client users who want to choose providers per task
  • Coding assistant scenarios needing GitHub search and web content extraction

Not for

  • Users unwilling to supply any third-party search or extraction API keys
  • Scenarios requiring official support from the upstream product owner
  • Environments that cannot run Node.js or npx

Required permissions

  • Read provider API keys from environment variables (TAVILY_API_KEY, KAGI_API_KEY, BRAVE_API_KEY, GITHUB_API_KEY, EXA_API_KEY, LINKUP_API_KEY, FIRECRAWL_API_KEY)
  • Network access to provider APIs and target web pages
  • Write large-result files when file mode is used

Risks and side effects

  • Queries and target URLs are sent to third-party services, which may raise data exposure or privacy concerns
  • API keys are stored as environment variables and may leak if misconfigured
  • Providers differ in usage, quotas, and rate limits, so calls may fail on throttling or insufficient access
  • Providers without keys are unavailable
  • The docs note caveats around large-result file mode and remote deployment

Setup

Before you start

Runtime:Node.js

TAVILY_API_KEY optionalsecret API key for Tavily search/extraction, sign up at tavily.com.
KAGI_API_KEY optionalsecret API key for Kagi (including FastGPT), get it at kagi.com.
BRAVE_API_KEY optionalsecret Brave Search API key, apply at search.brave.com.
GITHUB_API_KEY optionalsecret GitHub personal access token, generated in GitHub developer settings.
EXA_API_KEY optionalsecret Exa AI search API key, get it at exa.ai.
LINKUP_API_KEY optionalsecret Linkup AI search API key, get it at linkup.so.
FIRECRAWL_API_KEY optionalsecret Firecrawl scraping service API key, get it at firecrawl.dev.
Other optional settings (2)
FIRECRAWL_BASE_URL optional Optional, points to a self-hosted Firecrawl instance.
OMNISEARCH_LARGE_RESULT_MODE optional Optional, controls large result handling; default is file, can be set to inline.

Option 1 (MCPick): run npx mcpick add --name mcp-omnisearch --command npx --args=-y,mcp-omnisearch, which defaults to Claude Code; use --client and --scope to target another client or the current repository. Option 2 (from source): pnpm install && pnpm run build, then run node ./dist/index.js. Option 3 (manual config): in your MCP client config set mcp-omnisearch with command node, args pointing to dist/index.js, and env containing any of TAVILY_API_KEY, KAGI_API_KEY, BRAVE_API_KEY, GITHUB_API_KEY, EXA_API_KEY, LINKUP_API_KEY, FIRECRAWL_API_KEY, plus optional FIRECRAWL_BASE_URL and OMNISEARCH_LARGE_RESULT_MODE.

.mcp.json
{
  "mcpServers": {
    "mcp-omnisearch": {
      "command": "node",
      "args": ["/path/to/mcp-omnisearch/dist/index.js"],
      "env": {
        "TAVILY_API_KEY": "your-tavily-key",
        "KAGI_API_KEY": "your-kagi-key",
        "BRAVE_API_KEY": "your-brave-key",
        "GITHUB_API_KEY": "your-github-token",
        "EXA_API_KEY": "your-exa-key",
        "LINKUP_API_KEY": "your-linkup-key",
        "FIRECRAWL_API_KEY": "your-firecrawl-key"
      }
    }
  }
}

Shown for Claude Code. Other clients may use a different file or key (VS Code uses "servers") — the configurator below converts it.

.vscode/mcp.json
{
  "servers": {
    "mcp-omnisearch": {
      "command": "node",
      "args": [
        "/path/to/mcp-omnisearch/dist/index.js"
      ],
      "env": {
        "TAVILY_API_KEY": "your-tavily-key",
        "KAGI_API_KEY": "your-kagi-key",
        "BRAVE_API_KEY": "your-brave-key",
        "GITHUB_API_KEY": "your-github-token",
        "EXA_API_KEY": "your-exa-key",
        "LINKUP_API_KEY": "your-linkup-key",
        "FIRECRAWL_API_KEY": "your-firecrawl-key"
      }
    }
  }
}

Goes in your project's .vscode/mcp.json (VS Code uses a "servers" key).

Terminal
claude mcp add mcp-omnisearch -e TAVILY_API_KEY=your-tavily-key -e KAGI_API_KEY=your-kagi-key -e BRAVE_API_KEY=your-brave-key -e GITHUB_API_KEY=your-github-token -e EXA_API_KEY=your-exa-key -e LINKUP_API_KEY=your-linkup-key -e FIRECRAWL_API_KEY=your-firecrawl-key -- node /path/to/mcp-omnisearch/dist/index.js

Run it in a terminal; replace any <…> placeholders with your own values first.

Check that it works

After starting the server, check that web_search, ai_search, github_search, and web_extract appear in the client's tool list; running a quick web_search confirms the connection works.

Troubleshooting

  1. Verify that the relevant provider API key is set in env; providers without keys are skipped
  2. Check that keys are valid and have the required access
  3. Check for rate limits when requests fail
  4. For self-hosted Firecrawl, set FIRECRAWL_BASE_URL
  5. Consult docs/troubleshooting.md and docs/deployment.md for common issues involving keys, access, validation, and rate limits

Things to try

Once connected, you can ask your AI assistant things like:

  • Search the web with Tavily for the latest SvelteKit releases
  • Use Kagi FastGPT to explain the differences between REST and GraphQL
  • Search GitHub for code matching filename:remote.ts in @sveltejs/kit
  • Extract https://example.com/long-article and summarize the installation requirements

Tools 4

web_search read-only
Search the web with Tavily, Brave, Kagi, Exa, or Kagi Enrichment, with options such as limit, search_depth, topic, time_range, safe_search, include_raw_content, and auto_parameters (applied when supported by the selected provider).
ai_search read-only
Get sourced AI answers with Kagi FastGPT, Exa Answer, Linkup, or Tavily Research; Tavily Research returns a task ID first that must be passed back as research_id to retrieve the report.
github_search read-only
Search GitHub code, repositories, or users, with search_type and limit options.
web_extract read-only
Extract, crawl, scrape, summarize, or find similar content with Tavily, Kagi, Firecrawl, or Exa, with options such as mode, extract_depth, query, chunks_per_source, and format.

Use cases

Let an LLM run web searches across multiple engines through one interface
Obtain AI answers with source citations
Search GitHub code, repositories, and users
Extract, crawl, or summarize web content and find similar content

Supported clients

Claude Code
VS Code

Listed from the project's documentation, not tested by this site.

Overview

Omnisearch MCP Server is a Model Context Protocol (MCP) server that gives LLMs unified access to Tavily, Brave, Kagi, Exa AI, GitHub, Linkup, and Firecrawl through four consolidated tools. It supports web search, sourced AI answers, GitHub code/repository/user search, and content extraction, crawling, scraping, summarizing, and similar-content lookup. Providers without keys are skipped and the rest keep working. The server runs over stdio, can be installed via npx (for example with MCPick), and can also be built and run from source under the MIT license.

Similar servers

Context7 80 · B

Upstash's official server providing up-to-date third-party library docs for AI coding assistants

★ 64.1k · Tools 2 Compare with this →

Source revision 0d9d9a536b3b Data synced 2026-11-02 Read the FMRS scoring method