Kagi Search

by kagisearch

197 stars
742 downloads
Not rated
GitHub

About

Integrates Kagi's advanced search capabilities into workflows, enabling high-quality, privacy-focused web information retrieval for informed decision-making and analysis.

Details

Author
kagisearch
Repository
kagisearch/kagimcp
GitHub stars
197
Downloads
742
License
MIT License
Categories
Developer Tools, Search, Other, API, Productivity, Design, AI, Frontend
Tags
#web

- Web, news, video, podcast, and image search with filters and lenses.
- Full page extraction returning content as markdown.
- Hosted HTTP server available at https://mcp.kagi.com/mcp — no install required.
- Self‑hostable via the provided Dockerfile, supporting multi‑tenant HTTP mode.
- Configurable timeouts, retries, and hidden parameters for LLM‑facing schemas.
- Supports multiple MCP clients: Claude Desktop, Claude Code, Codex CLI, Smithery, Kiro, OpenCode.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Kagi Search
    Command (node, npx, python, etc.) uvx
    Arguments
    • Argument 1 kagimcp
    Environment
    • KAGI_API_KEY YOUR_API_KEY_HERE

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Use the hosted server at https://mcp.kagi.com/mcp with any HTTP‑capable MCP client, authenticating with your Kagi API key via a Bearer token. Alternatively, install the server locally using uvx kagimcp after setting the KAGI_API_KEY environment variable. Configuration options include search/extract timeouts, retry count, and hidden search parameters.

kagi_search_fetch

Perform web, news, videos, podcasts, and image searches with optional page extracts, filters, and Kagi lenses.

kagi_extract

Fetch a page's full content as markdown.

- kagi_search_fetch - web, news, videos, podcasts, and image search with optional page extracts, filters, and Kagi lenses.
- kagi_extract - fetch a page's full content as markdown.

> Note: The previous kagi_fastgpt and kagi_summarizer tools have been removed. Both are planned to return in a future release.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "kagi search": {
            "env": {
                "KAGI_API_KEY": "YOUR_API_KEY_HERE"
            },
            "args": [
                "kagimcp"
            ],
            "command": "uvx"
        }
    }
}

Linux

{
    "env": {
        "KAGI_API_KEY": "YOUR_API_KEY_HERE"
    },
    "args": [
        "kagimcp"
    ],
    "command": "uvx"
}

Macos

{
    "env": {
        "KAGI_API_KEY": "YOUR_API_KEY_HERE"
    },
    "args": [
        "kagimcp"
    ],
    "command": "uvx"
}

Windows

{
    "env": {
        "KAGI_API_KEY": "YOUR_API_KEY_HERE"
    },
    "args": [
        "kagimcp"
    ],
    "command": "uvx"
}
- **Search the web with Kagi**— ask for web, news, video, podcast, or image results with optional page extracts and filters via`kagi_search_fetch`. - **Extract page content as markdown**— get the full cleaned content of any URL using`kagi_extract`. - **Apply Kagi lenses to searches**— narrow results by domain, file type, or time range using the lens and filter parameters on`kagi_search_fetch`. An MCP server backed by the[Kagi API. It exposes search and extraction tools to MCP-compatible clients. - **`kagi_search_fetch`**- web, news, videos, podcasts, and image search with optional page extracts, filters, and Kagi lenses. - **`kagi_extract`**- fetch a page's full content as markdown. **Note:**The previous`kagi_fastgpt`and`kagi_summarizer`tools have been removed. Both are planned to return in a future release. We run a hosted MCP server at**`https://mcp.kagi.com/mcp`**— no install required. Point any HTTP-capable MCP client at it and authenticate with your Kagi API key. OAuth2 isn't supported yet (it's on our roadmap), so for now grab your](https://help.kagi.com/kagi/api/overview.html)[API key from the dashboardand pass it via`Bearer`HTTP authentication. ``` `claude mcp add kagi https://mcp.kagi.com/mcp --transport http --header "Authorization: Bearer $(read -sp 'API key: ' k; echo $k)" --scope user` ``` Prefer to run it yourself? See](https://kagi.com/api/keys)[Client Setupfor the local`uvx`install, or](#client-setup)[Self-Hostingto host the HTTP server on your own infrastructure. - A Kagi API key in`KAGI_API_KEY`. - ](#self-hosting)[`uv`for the recommended`uvx`install path. ``` `curl -LsSf https://astral.sh/uv/install.sh | sh` ``` ``` `powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"` ``` ``` `codex mcp add kagi --env KAGI_API_KEY=<YOUR_API_KEY_HERE> -- uvx kagimcp` ``` Codex writes MCP configuration to`~/.codex/config.toml`. ``` `curl -LsSf https://astral.sh/uv/install.sh | sh` ``` ``` `powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"` ``` Then in your Claude Desktop config (found through Settings -> Developer -> Edit Config): ``` `{ "mcpServers": { "kagi": { "command": "uvx", "args": ](https://docs.astral.sh/uv/)["kagimcp"], "env": { "KAGI_API_KEY": "YOUR_API_KEY_HERE" } } } }` ``` ``` `claude mcp add kagi -e KAGI_API_KEY="YOUR_API_KEY_HERE" -- uvx kagimcp` ``` ``` `npx -y @smithery/cli install kagimcp --client claude` ``` Add to your Kiro MCP config file (`~/.kiro/settings/mcp.json`for global, or`.kiro/settings/mcp.json`for project-scoped) using the same`mcpServers`JSON as[Claude Desktop. See the](#claude-desktop)[Kiro MCP documentationfor more details. Edit the OpenCode configuration file in`~/.config/opencode/opencode.json`and add the following: ``` `{ "mcp": { "kagi": { "type": "local", "command": ](https://kiro.dev/docs/mcp/)["uvx", "kagimcp"], "enabled": true, "environment": { "KAGI_API_KEY": "<YOUR_API_KEY_HERE>" } } } }` ``` - Search:`Who was Time's 2024 person of the year?` - Extract:`extract the full content of https://en.wikipedia.org/wiki/Model_Context_Protocol` ``` `workflow, extract_count, limit, include_domains, exclude_domains, time_relative, after, before, file_type, lens_id` ``` ``` `KAGI_HIDDEN_PARAMS="extract_count,after,before,time_relative,include_domains,exclude_domains"` ``` ``` `git clone https://github.com/kagisearch/kagimcp.git cd kagimcp uv sync` ``` ``` `KAGI_API_KEY=<YOUR_API_KEY_HERE> uv run kagimcp` ``` ``` `KAGI_API_KEY=<YOUR_API_KEY_HERE> uv run kagimcp --http --host 0.0.0.0 --port 8000` ``` HTTP mode is multi-tenant: each request supplies its API key via the`Authorization: Bearer <key>`header instead of a server-wide env var, so one instance can serve multiple users. The repo ships a`Dockerfile`that installs a pinned`kagimcp`from PyPI and runs it in HTTP mode. The container respects`$PORT`so it works on any platform that injects one (Railway, Render, Cloud Run, Fly.io, etc.). ``` `docker build -t kagimcp-hosted . docker run --rm -p 8000:8000 kagimcp-hosted` ``` ``` `curl -sL http://127.0.0.1:8000/mcp -X POST \ -H "authorization: Bearer $KAGI_API_KEY" \ -H "content-type: application/json" \ -H "accept: application/json, text/event-stream" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'` ``` To bump the version in production, edit the pin in the`Dockerfile`and redeploy. ``` `npx @modelcontextprotocol/inspector uvx kagimcp` ``` ``` `npx @modelcontextprotocol/inspector uv --directory /ABSOLUTE/PATH/TO/kagimcp run kagimcp` ``` The inspector is usually available at`http://localhost:5173`. If using a prerelease build, the same installation instructions apply, but use`uvx --prerelease allow --from kagimcp==1.0.0rc2 kagimcp`instead of`uvx kagimcp`(replace`1.0.0rc2`with whatever version you're wanting to install). Search global news using natural language. Webz.io News Search API returns the most relevant articles and content, with filters for source, country, language, date, sentiment, and category. Multi-provider search broker for AI agents. Routes across SearXNG, Brave, Serper, Tavily, and Exa with automatic fallback, RRF ranking, content extraction, and budget enforcement. A search server for the Model Context Protocol (MCP) that uses the Baidu Wenxin API. Perform web, news, and image searches using the Microsoft Bing Search API. An MCP server for web and local search using the Brave Search API. Integrates the Brave Search API for both web and local search capabilities. Requires a BRAVE_API_KEY. An MCP server for the Brave Search API, providing web and local search capabilities via a streaming SSE interface. An MCP server for the Brave Search API, providing both web and local search capabilities. Search for cocktail recipes using the cezzis.com API. Free search API for AI agents — 105 engines, 22 profiles, 94.3% SimpleQA accuracy, MCP server with 5 tools Free search API for AI agents with 105 engines, 22 search profiles, and 94.3% SimpleQA accuracy. MCP server included.
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.