Kagi Search
listing.by
Search the web, news, videos, podcasts and images with Kagi, and extract full page content as markdown.
listing.connect
listing.explain.api_key
listing.note.key_header listing.note.key_where
listing.share.h
listing.share.p
mcp.tc/i/kagilisting.about
Connects an assistant to the Kagi API. It can run web, news, video, podcast and image searches with optional page extracts, filters and Kagi lenses, and fetch the full content of a page as markdown.
Kagi hosts a streamable HTTP endpoint at https://mcp.kagi.com/mcp. It needs a Kagi API key sent as a Bearer token in the Authorization header. OAuth is not supported yet. The same server can be run locally with uvx kagimcp, or self-hosted with the Dockerfile in the repository.
listing.can
- Search the web, news, videos, podcasts and images
- Include page extracts in search results
- Filter by domain, date, file type or Kagi lens
- Extract the full content of a page as markdown
listing.tools
listing.notools.key
listing.prompts
Who was Time's 2024 person of the year?
Extract the full content of https://en.wikipedia.org/wiki/Model_Context_Protocol
Search recent news about open source LLMs and summarize the top results
Find podcasts about home networking from the last year
listing.setup.h
listing.setup.remote
Claude Code
- Run this in a terminal, in your project folder:
claude mcp add --transport http kagi https://mcp.kagi.com/mcp --header "Authorization: Bearer <YOUR_API_KEY>"- Replace the placeholder with your key before you run it, then check it with
/mcpinside Claude Code.
Add --scope user to make it available in every project, not just this one.
Claude Desktop
- Custom connectors can't send this server's key header, so use the
mcp-remotebridge. Open Settings → Developer → Edit Config and add:
{
"mcpServers": {
"kagi": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.kagi.com/mcp",
"--header",
"Authorization: Bearer <YOUR_API_KEY>"
]
}
}
}- Replace the placeholder with your key and restart Claude Desktop.
The bridge needs Node.js on your computer.
Cursor
Or add it by hand to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project):
{
"mcpServers": {
"kagi": {
"url": "https://mcp.kagi.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}VS Code
Add it to .vscode/mcp.json. VS Code asks for the key the first time and stores it securely:
{
"servers": {
"kagi": {
"type": "http",
"url": "https://mcp.kagi.com/mcp",
"headers": {
"Authorization": "Bearer ${input:api-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "api-key",
"description": "API key",
"password": true
}
]
}Devin Desktop
- Add it to
~/.config/devin/mcp_config.json(macOS and Linux) or%APPDATA%\devin\mcp_config.json(Windows):
{
"mcpServers": {
"kagi": {
"serverUrl": "https://mcp.kagi.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}- Refresh the MCP server list in Cascade.
Devin Desktop is the new name for Windsurf. It reads serverUrl (or url) for remote servers.
Codex
codex mcp add kagi --url https://mcp.kagi.com/mcp --bearer-token-env-var KAGI_API_KEYOr edit ~/.codex/config.toml directly:
[mcp_servers.kagi]
url = "https://mcp.kagi.com/mcp"
bearer_token_env_var = "KAGI_API_KEY"Set KAGI_API_KEY to your key in the shell that runs Codex.
Gemini CLI
gemini mcp add --transport http --header "Authorization: Bearer <YOUR_API_KEY>" kagi https://mcp.kagi.com/mcpThis adds it to the current project. Add -s user to use it everywhere.
Any client
Most clients accept this shape. Some name the URL field differently: serverUrl in Devin Desktop, httpUrl in Gemini CLI's settings file.
{
"mcpServers": {
"kagi": {
"type": "http",
"url": "https://mcp.kagi.com/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}Zed puts servers under context_servers in its settings. Cline needs "type": "streamableHttp", or it assumes SSE.
Client only starts local servers? Bridge it with npx -y mcp-remote https://mcp.kagi.com/mcp.
listing.faq
Can I paste mcp.tc/i/kagi into my MCP client?
No. mcp.tc links are pages, not server addresses. Connect with https://mcp.kagi.com/mcp, so your client talks to Kagi Search directly. Your key goes there too, never to mcp.tc. The quick link is for sharing: it opens this page, with setup steps for every client.
Does Kagi Search need an API key or a sign-in?
Yes. Kagi Search needs an API key, sent as the Authorization header. Get one from Kagi and keep it in your client's config, never in a shared file.
Is Kagi Search a remote or a local server?
Remote. Kagi hosts it at https://mcp.kagi.com/mcp, and it speaks Streamable HTTP. There's nothing to install.
What can Kagi Search do?
You can search the web, news, videos, podcasts and images, include page extracts in search results and filter by domain, date, file type or Kagi lens.
Which clients can use it?
Any client that supports remote MCP servers and can send your key: Claude Code, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed and others, and Claude Desktop through the mcp-remote bridge. claude.ai and ChatGPT can't send a key, so they can't use it.
Who wrote this page?
mcp.tc's robot read Kagi Search's own metadata (its MCP handshake, tool list and public pages), and an AI model drafted the text from it. A person reviews anything the checks can't confirm. The text can still be wrong, so if you spot a mistake, use Report this listing on this page.
listing.em.h
listing.em.lead listing.em.how
listing.em.badge
[](https://mcp.tc/i/kagi)<a href="https://mcp.tc/i/kagi"><img src="https://mcp.tc/i/kagi/badge.svg" alt="Kagi Search on mcp.tc" height="20"></a>listing.em.badge_note
listing.em.widget
<script src="https://mcp.tc/w/kagi.js" async></script>listing.em.widget_note
iframe
<iframe src="https://mcp.tc/embed/kagi" title="Kagi Search on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>listing.em.iframe_note
listing.disclaimer_checked