Kagi MCP
A Node.js implementation of the Kagi Model Context Protocol server that enables Claude AI to search the web and summarize documents, videos, and audio using Kagi's APIs.
README Documentation
Kagi MCP (Node.js)
A Node.js implementation of the Kagi Model Context Protocol (MCP) server. This provides a more stable alternative to the official Python implementation, especially when running multiple instances.
Features
- Search web content using Kagi Search API
- Summarize documents, videos, and audio using Kagi Summarizer API
- No port conflicts when running multiple instances
- Full compatibility with Claude Desktop
Prerequisites
- Node.js 18 or higher
- Kagi API key (request from support@kagi.com)
- Note: The Search API is in closed beta. You may need to request access separately.
Installation
Method 1: Using npx (Recommended for Claude Desktop)
No installation needed! Claude Desktop can run the package directly using npx.
Method 2: Install from npm
npm install -g kagi-mcp
Or use it directly with npx:
npx kagi-mcp
Method 3: Install from GitHub directly
npm install -g github:yuki-yano/kagi-mcp
Method 4: Install from source
git clone https://github.com/yuki-yano/kagi-mcp.git
cd kagi-mcp
npm install
npm run build
npm link
Configuration
Environment Variables
KAGI_API_KEY
(required): Your Kagi API keyKAGI_SUMMARIZER_ENGINE
(optional): Summarization engine - cecil (default), agnes, daphne, or muriel
Claude Desktop Configuration
Add the following to your Claude Desktop config file:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Method 1: Using npx (Recommended - No installation required)
{
"mcpServers": {
"kagi": {
"command": "npx",
"args": ["kagi-mcp"],
"env": {
"KAGI_API_KEY": "your-kagi-api-key"
}
}
}
}
This method automatically downloads and runs the latest version from npm without requiring manual installation.
Method 2: Using globally installed package
{
"mcpServers": {
"kagi": {
"command": "kagi-mcp",
"env": {
"KAGI_API_KEY": "your-kagi-api-key"
}
}
}
}
Claude Code Configuration
To use with Claude Code CLI, run the following command:
claude mcp add kagi -s user -e KAGI_API_KEY="your-kagi-api-key" -- npx kagi-mcp
This will:
- Add the Kagi MCP server to your Claude Code configuration
- Set it up at the user level (
-s user
) - Configure your API key as an environment variable
- Use npx to automatically download and run the latest version from npm
You can also use the MCP inspector for debugging:
# Method 1: Using npx (requires npm package to be published)
KAGI_API_KEY="your-kagi-api-key" npx @modelcontextprotocol/inspector npx kagi-mcp
# Method 2: Using local installation (more reliable)
npm install -g kagi-mcp
KAGI_API_KEY="your-kagi-api-key" npx @modelcontextprotocol/inspector kagi-mcp
# Method 3: Using source build
KAGI_API_KEY="your-kagi-api-key" npx @modelcontextprotocol/inspector node dist/index.js
Usage
The MCP server provides two tools:
kagi_search_fetch
Search the web using Kagi Search API.
{
"queries": ["array of search queries"]
}
kagi_summarizer
Summarize content from a URL.
{
"url": "https://example.com/article",
"summary_type": "summary" | "takeaway", // optional
"target_language": "EN" // optional
}
Development
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build
npm run build
# Run built version
npm start
Troubleshooting
"Malformed authorization token" error
This error indicates that your API key is invalid or not properly formatted. Make sure:
- You have a valid Kagi API key from support@kagi.com
- The key is correctly set in your environment variable
- You're not adding extra quotes or spaces around the key
"401 Unauthorized" error for Search API
The Search API is in closed beta. You may need to:
- Request access to the Search API separately from support@kagi.com
- Ensure your API key has the necessary permissions
Testing your API key
You can test your API key using the included test script:
KAGI_API_KEY="your-api-key" node test-api.js
License
MIT