# mcp-omnisearch [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/spences10/mcp-omnisearch  
**GitHub Stars:** 359  
**npm Downloads (last month):** 518  
**Views:** 6  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/mcp-omnisearch

## Description
MCP server for integrating Omnisearch with LLMs

## Tools
Capabilities this server exposes over MCP:

- **web_search** — Search the web with Tavily, Brave, Kagi, or Exa.
- **ai_search** — Get sourced AI answers with Exa Answer, Linkup, or Tavily Research.
- **github_search** — Search GitHub code, repositories, or users.
- **web_extract** — Extract, crawl, scrape, or find similar content with Tavily,

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "mcp-omnisearch": {
    "command": "npx",
    "args": ["-y","mcpick"],
    "env": {
      "TAVILY_API_KEY": "",
      "KAGI_API_KEY": "",
      "BRAVE_API_KEY": "",
      "GITHUB_API_KEY": "",
      "EXA_API_KEY": "",
      "LINKUP_API_KEY": "",
      "FIRECRAWL_API_KEY": "",
      "FIRECRAWL_BASE_URL": ""
    }
  }
}
```

**Requires environment variables:** `TAVILY_API_KEY`, `KAGI_API_KEY`, `BRAVE_API_KEY`, `GITHUB_API_KEY`, `EXA_API_KEY`, `LINKUP_API_KEY`, `FIRECRAWL_API_KEY`, `FIRECRAWL_BASE_URL` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What mcp-omnisearch does

The mcp-omnisearch MCP server consolidates several search and extraction services into four MCP tools. It connects to Tavily, Brave Search, Kagi, Exa AI, GitHub, Linkup, and Firecrawl, depending on the operation and provider selected. This arrangement lets an MCP client expose multiple backends without configuring one separate server per service.

The server supports four main workflows:

- `web_search` searches the web through Tavily, Brave, Kagi, Exa, or Kagi Enrichment.
- `ai_search` returns sourced answers from Kagi FastGPT, Exa Answer, Linkup, or Tavily Research.
- `github_search` searches GitHub code, repositories, or users.
- `web_extract` extracts, crawls, scrapes, summarizes, or finds similar content using Tavily, Kagi, Firecrawl, or Exa.

## How it works

Each request selects a provider and supplies inputs appropriate to the chosen tool. Web searches can include controls such as result count, search depth, topic, date range, safe search, raw-content inclusion, and automatic parameters when the selected provider supports them. GitHub searches specify the search type and can use GitHub query syntax.

AI searches return sourced answers. Tavily Research may work asynchronously: the first call returns a task identifier, which must be supplied later as `research_id` to retrieve the report. Extraction requests can select a mode such as extract, provide a follow-up query, choose extraction depth, set chunks per source, and request Markdown output.

Providers without credentials are disabled rather than preventing the remaining configured providers from working. The mcp-omnisearch MCP server therefore supports partial provider setups, provided the selected operation has an available credentialed backend.

## Setup and configuration

The published package can be added with MCPick using `npx mcpick add`, with `mcp-omnisearch` as the server name and `npx -y mcp-omnisearch` as the command and argument sequence. MCPick defaults to Claude Code; its `--client` and `--scope` options can target another client or a project-level configuration.

For a source installation, install dependencies with pnpm, build the project, and run `node ./dist/index.js`. Provider credentials are supplied through environment variables. Available variables cover Tavily, Kagi, Brave, GitHub, Exa, Linkup, and Firecrawl. `FIRECRAWL_BASE_URL` can point to a self-hosted Firecrawl instance.

Clients that support environment-variable expansion can reference secrets in MCP configuration instead of placing their values directly in the file. Expansion syntax and secret handling depend on the client. `OMNISEARCH_LARGE_RESULT_MODE` controls large-result handling, with `file` as the default and `inline` as the alternative.

## Tools and capabilities

`web_search` is suited to current web research and supports several search providers. `ai_search` is intended for questions where a cited or sourced response is preferred over a list of links. `github_search` covers repository, code, and user discovery. `web_extract` handles page-level operations, including crawling and content transformation.

The mcp-omnisearch MCP server is a fit for agents that need to switch providers by task, use GitHub search alongside web research, or process a page after locating it. Provider-specific controls apply only where supported, so request behavior can differ between backends.

## Limitations and notes

The server does not supply provider access by itself; credentials and any provider-specific account limits remain necessary. Missing keys cause those providers to be skipped. Search options are not guaranteed to have identical effects across providers because the implementation applies controls only when the selected service supports them.

Large responses can be returned inline or through files, according to `OMNISEARCH_LARGE_RESULT_MODE`. Remote deployments may require additional consideration for file-based responses. Firecrawl self-hosting requires a custom base URL, while Tavily Research requires a follow-up request to obtain the completed report after receiving its task ID.

_Full upstream README: https://allmcps.com/mcp/mcp-omnisearch/readme_

