kagi-ken-mcp 是一个轻量级的 Node MCP 服务器,围绕 kagi-ken
包 构建,可使用 Kagi 会话令牌访问 Kagi.com 的服务:
与需要 API 访问权限的官方 Kagi API 不同,此 MCP 服务器使用你现有的 Kagi 会话来访问搜索和摘要生成功能。
“Kagi-ken” 是 “Kagi”(服务名称)和 “token”(令牌)的组合词。
如果你已经拥有 Kagi 订阅但没有 API 访问权限,却想通过大型语言模型(LLMs)或像 Claude 这样的智能代理以编程方式访问 Kagi 的服务,那么这个 MCP 服务器将为你提供一个替代方案。
服务器支持两种使用 Kagi 会话令牌的方法(见安装指南),优先级如下:
KAGI_SESSION_TOKEN
环境变量。~/.kagi_session_token
文件。它具备全面的错误处理机制:
需要 Node.js 22+ 版本。
token
值。~/.kagi_session_token
(推荐),或者作为 KAGI_SESSION_TOKEN
环境变量传递。服务器将自动优先尝试使用环境变量,然后再尝试使用令牌文件。
⚠️ 重要提示
请妥善保管你的会话令牌。它可以访问你的 Kagi 账户。
将 kagi-ken-mcp 添加到你的 claude_desktop_config.json
文件中,你可以通过 Claude Desktop 应用的设置 → 开发者 → 本地 MCP 服务器 → 编辑配置来打开该文件。
{
"mcpServers": {
"kagi-ken-mcp": {
"command": "npx",
"args": ["-y", "github:czottmann/kagi-ken-mcp"]
}
}
}
{
"mcpServers": {
"kagi-ken-mcp": {
"command": "npx",
"args": ["-y", "github:czottmann/kagi-ken-mcp"],
"env": {
"KAGI_SESSION_TOKEN": "YOUR_SESSION_TOKEN_HERE"
}
}
}
}
禁用 Claude Desktop 的内置网络搜索,以便它使用此 MCP 服务器。你还可以在设置的“个人偏好”(即系统提示)中添加以下内容:
进行网络搜索时,使用 kagi-ken-mcp MCP 服务器的 `kagi_search_fetch` 工具。
对 URL 内容进行摘要生成时,使用 kagi-ken-mcp MCP 服务器的 `kagi_summarizer` 工具。
claude mcp add kagi-ken-mcp --scope user -- npx -y github:czottmann/kagi-ken-mcp
claude mcp add kagi-ken-mcp \
--scope user \
--env KAGI_SESSION_TOKEN="YOUR_SESSION_TOKEN_HERE" -- \
npx -y github:czottmann/kagi-ken-mcp
可选择在相关的 .claude/settings*.json
文件中设置权限,以禁用 Claude Code 的内置网络搜索:
{
"permissions": {
"deny": [
"WebSearch"
],
"allow": [
"mcp__kagi-ken-mcp__kagi_search_fetch",
"mcp__kagi-ken-mcp__kagi_summarizer"
]
}
}
例如,提出需要使用工具的查询,如 “2024 年《时代》周刊的年度人物是谁?” 用于搜索,或 “总结这个视频:https://www.youtube.com/watch?v=sczwaYyaevY” 用于摘要生成。
kagi_search_fetch
使用 Kagi 搜索 API 根据一个或多个查询获取网页结果。结果会连续编号,方便参考。
参数:
queries
(字符串数组):一个或多个搜索查询。kagi_summarizer
使用 Kagi 摘要生成 API 对来自 URL 的内容进行摘要生成。支持包括网页、视频和音频在内的各种文档类型。
参数:
url
(字符串):要进行摘要生成的 URL。summary_type
(枚举):"summary"
表示段落形式的摘要,"takeaway"
表示要点形式的摘要(默认:"summary"
)。target_language
(字符串,可选):语言代码(例如,"EN"
表示英语,默认:"EN"
)。kagi-ken-mcp/
├── src/
│ ├── index.js # 主服务器入口点
│ ├── tools/
│ │ ├── search.js # 搜索工具实现
│ │ └── summarizer.js # 摘要生成工具实现
│ └── utils/
│ └── formatting.js # 实用函数
├── package.json
└── README.md
克隆仓库:
git clone
cd kagi-ken-mcp
安装依赖:
npm install
npm run dev
使用 MCP 检查器进行调试:
npx @modelcontextprotocol/inspector node ./src/index.js
然后在 http://localhost:5173
访问检查器。如果使用环境变量,请在检查器的环境变量部分添加你的 KAGI_SESSION_TOKEN
。
此项目的作者是 Carlo Zottmann,邮箱 carlo@zottmann.dev,个人网站为 https://c.zottmann.dev,GitHub 主页为 https://github.com/czottmann。
本项目与 Kagi 没有关联,也未得到其认可。作者只是 Kagi 的忠实用户。
💡 使用建议
作者开发了一些与快捷指令相关的 macOS 和 iOS 生产力应用,如 Actions For Obsidian、Browser Actions(为多个主流浏览器添加快捷指令支持)和 BarCuts(一个非常实用的上下文快捷指令启动器)。欢迎试用!