kagi-server MCP Server
MCP server for Kagi API integration
This is a TypeScript-based MCP server that integrates the Kagi Search API. It demonstrates core MCP concepts by providing:
- Tools for performing web searches and other operations using Kagi's API (currently in private beta)
Features
Implemented Tools
kagi_search- Perform web searches using Kagi- Takes a query string and optional limit as parameters
- Returns search results from Kagi's API
Planned Tools (Not Yet Implemented)
kagi_summarize- Generate summaries of web pages or textkagi_fastgpt- Get quick responses using Kagi's FastGPTkagi_enrich- Fetch enriched news results on specific topics
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Environment Setup
Create a .env file in the root directory with your Kagi API key:
KAGI_API_KEY=your_api_key_here
Make sure to add .env to your .gitignore file to keep your API key secure.
Installation
Installing via Smithery
To install Kagi Server for Claude Desktop automatically via Smithery:
npx @smithery/cli install kagi-server --client claude
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"kagi-server": {
"command": "/path/to/kagi-server/build/index.js",
"env": {
"KAGI_API_KEY": "your_api_key_here"
}
}
}
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Usage
Once the server is running and connected to Claude Desktop, you can use it to perform web searches. For example:
- Ask Claude: "Can you search for information about the latest advancements in quantum computing?"
- Claude will use the
kagi_searchtool to fetch results from Kagi's API. - Claude will then summarize or analyze the search results for you.
Note: The planned tools (summarize, fastgpt, enrich) are not yet implemented and cannot be used.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request. Some areas for contribution include:
- Implementing the planned tools (summarize, fastgpt, enrich)
- Improving error handling and input validation
- Enhancing documentation and usage examples
License
This project is licensed under the MIT License.
Roadmap
- Implement
kagi_summarizetool for webpage and text summarization - Implement
kagi_fastgpttool for quick responses - Implement
kagi_enrichtool for fetching enriched news results - Improve error handling and add more robust input validation
- Add more comprehensive usage examples and documentation
- Publish the package to npm for easy installation and use with Claude Desktop and npx
Recommend MCP Servers 💡
things3-mcp
An MCP server that provides comprehensive integration with Things3 on macOS, enabling AI assistants to manage tasks, projects, and tags with intelligent error correction and automatic tag creation.
paragon-mcp
The Paragon MCP Server integrates with Paragon's ActionKit to provide AI agents access to over 130 prebuilt SaaS integrations (e.g., Google Calendar, Salesforce, Slack) and handles user authorization via a Connect Portal, enabling agents to interact with users' SaaS applications.
google-calendar
This MCP server allows Claude to interact with your Google Calendar, enabling capabilities like listing events, creating meetings, and finding free time slots.
tavily-search
A MCP server project using the Tavily API to perform searches based on specified queries.
apple-books-mcp
An MCP server that allows large language models to interact with your Apple Books library, enabling tasks like summarizing highlights, organizing books by genre, recommending similar books, and comparing notes.
keycloak-model-context-protocol
An MCP server for Keycloak user and realm management, enabling AI-powered administration and integration with MCP clients like Claude Desktop.