TypeScript MCP server that exposes Kagi Search as a tool for Model-Context-Protocol clients such as Claude Desktop.
https://github.com/ac3xx/mcp-servers-kagiStop feeding Claude garbage search results. This MCP server connects Claude Desktop directly to Kagi's premium search API, giving you clean, ad-free results that actually matter.
If you've tried connecting Claude to web search before, you know the pain. Most search APIs return SEO spam, ads disguised as content, and results that waste more time than they save. Kagi is different - it's a paid search engine that prioritizes quality over ad revenue, and this MCP server makes it trivial to plug that quality directly into Claude.
Instead of asking Claude to "search for X" and getting back a mess of promotional content, you get focused, relevant results that Claude can actually work with.
Clean Search Integration: Claude can search the web through Kagi's API with a simple tool call. No web scraping, no parsing HTML, no dealing with rate limits from sketchy free APIs.
Quality Results: Kagi filters out the SEO noise that clutters other search engines. When Claude searches for technical documentation or research, it gets back results that are actually useful.
Zero Configuration Headaches: Add your Kagi API key, update your Claude Desktop config, and you're done. The server handles all the MCP protocol complexity.
Research Deep Dives: Ask Claude to research a technical topic and it can pull from multiple high-quality sources without getting distracted by clickbait or sponsored content.
Current Events Analysis: Get Claude up to speed on recent developments with search results that prioritize authoritative sources over viral content.
Technical Problem Solving: When debugging or learning new technologies, Claude can search for solutions and find Stack Overflow answers, documentation, and genuine discussions instead of AI-generated blog spam.
Competitive Analysis: Research competitors, market trends, or industry developments with results that cut through the marketing noise.
First, you'll need a Kagi API key (available at dash.kagi.com). Then:
git clone https://github.com/ac3xx/mcp-servers-kagi.git
cd mcp-servers-kagi
npm install && npm run build
Create your .env file:
KAGI_API_KEY=your_api_key_here
Add to your Claude Desktop config:
{
"mcpServers": {
"kagi-server": {
"command": "/path/to/kagi-server/build/index.js",
"env": {
"KAGI_API_KEY": "your_api_key_here"
}
}
}
}
Restart Claude Desktop and you're ready. Ask Claude to search for anything and watch it pull from Kagi's clean results instead of the usual web clutter.
Built in TypeScript using the official MCP SDK, this server exposes a single kagi_search tool that takes a query string and optional parameters like result limits. It handles all the API communication with Kagi and returns structured results that Claude can immediately work with.
The server is stateless and lightweight - it's essentially a clean bridge between MCP and Kagi's REST API. Error handling is built in, and you can debug with the included MCP Inspector support.
Want even simpler setup? Use Smithery:
npx @smithery/cli install kagi-server --client claude
This handles the installation and Claude Desktop configuration automatically.
If you're serious about using Claude for research, analysis, or staying current on technical topics, feeding it quality search results instead of SEO spam makes a massive difference. This MCP server is the cleanest way to make that happen - no complex setup, no ongoing maintenance, just better search results in Claude Desktop.
The difference between Claude working with Kagi results versus typical web search is the difference between having a research assistant and having someone read you random blog posts. Try it for a week and see if you can go back to the old way.