mcpField
K
kagi-ken-mcp

kagi-ken-mcp

本地服务
github.com/czottmann搜索与检索4236 周前更新

关于 kagi-ken-mcp

kagi-ken-mcp 是一个轻量的 Node MCP 服务,通过 Kagi 会话令牌而非官方 API 访问 Kagi 的搜索与摘要功能。适合已有 Kagi 订阅但没有 API 权限、希望在 Claude 等客户端中使用的用户。

主要功能

  1. 01基于 Kagi 会话令牌进行身份验证
  2. 02并发处理多个搜索查询
  3. 03支持对 URL 或文本内容生成摘要
  4. 04摘要可选段落或要点格式及目标语言
  5. 05会话令牌可通过环境变量或文件提供

适用场景

  1. 01在 Claude Desktop 或 Claude Code 中进行网页搜索
  2. 02对网页或视频链接生成摘要
  3. 03替代官方 Kagi API 的 LLM 或 Agent 集成

MCP 相关

该项目是 MCP 服务端,向 MCP 客户端暴露 kagi_search_fetch 搜索工具与 kagi_summarizer 摘要工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"kagi-ken": {
"command": "npx",
"args": [
"-y",
"github:czottmann/kagi-ken-mcp"
],
"env": {
"KAGI_SESSION_TOKEN": "<KAGI_SESSION_TOKEN>"
}
}
}
}
启动命令npx -y github:czottmann/kagi-ken-mcp
需要配置的环境变量
KAGI_SESSION_TOKEN密钥

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgithub:czottmann/kagi-ken-mcp

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

kagi-ken-mcp

一个围绕 kagi-ken package 构建的轻量级 Node MCP 服务,可使用 Kagi 会话令牌访问 Kagi.com 服务:

  • 搜索:搜索 Kagi
  • 摘要器:使用 Kagi 的摘要器,根据 URL 或文本内容生成摘要

与需要 API 访问权限的官方 Kagi API 不同,此 MCP 服务使用你现有的 Kagi 会话来访问搜索和摘要功能。

“Kagi-ken” 是 “Kagi”(服务)和 “token” 的混成词。

为什么?

Kagi API 需要单独的 API 密钥,目前仅限受邀用户使用。如果你已有 Kagi 订阅,但没有 API 访问权限,却希望通过编程方式让 LLM 或 Claude 等 Agent 使用 Kagi 服务,此 MCP 服务提供了一种替代方案。

功能

  • 搜索:使用 Kagi Search 获取网页结果,并发处理查询
  • 摘要:总结 URL 中的内容,可自定义输出类型和语言

此服务支持以下两种方式使用 Kagi 会话令牌(参见安装),并按以下顺序尝试:

  1. KAGI_SESSION_TOKEN 环境变量
  2. 包含令牌字符串的 ~/.kagi_session_token 文件

其中包含完善的错误处理:

  • 连接超时(每次搜索 10 秒)
  • 无效输入验证
  • 环境变量验证
  • 优雅的错误格式化
kagi-kan-mcp MCP 服务

安装

需要 Node.js 22+。

1. 获取 Kagi 会话令牌
  1. 在浏览器中访问 Kagi Settings
  2. 复制 Session Link
  3. 从链接中提取 token 值
  4. 将该值用作会话令牌:保存到 ~/.kagi_session_token(推荐),或者将其作为 KAGI_SESSION_TOKEN 环境变量传入

服务会先尝试使用环境变量,然后自动回退到令牌文件。

警告

安全提示:请妥善保管会话令牌。它可以用于访问你的 Kagi 账户。

2.a. 将 MCP 服务添加到 Claude Desktop

将 kagi-ken-mcp 添加到 claude_desktop_config.json。你可以在 Claude Desktop 应用中通过“Settings → Developer → Local MCP Servers → Edit Config”打开该文件。

选项 1:使用令牌文件(推荐)
{
  "mcpServers": {
    "kagi-ken-mcp": {
      "command": "npx",
      "args": ["-y", "github:czottmann/kagi-ken-mcp"]
    }
  }
}
选项 2:使用环境变量
{
  "mcpServers": {
    "kagi-ken-mcp": {
      "command": "npx",
      "args": ["-y", "github:czottmann/kagi-ken-mcp"],
      "env": {
        "KAGI_SESSION_TOKEN": "YOUR_SESSION_TOKEN_HERE"
      }
    }
  }
}
安装后

禁用 Claude Desktop 内置的网页搜索,以便使用此 MCP 服务。你也可以在“Settings”中的“Personal preferences”(即系统提示词)里添加以下内容:

For web searches, use kagi-ken-mcp MCP server's `kagi_search_fetch` tool.
For summarizing a URL, use the kagi-ken-mcp MCP server's `kagi_summarizer` tool.
2.b. 将 MCP 服务添加到 Claude Code
选项 1:使用令牌文件(推荐)
claude mcp add kagi-ken-mcp --scope user -- npx -y github:czottmann/kagi-ken-mcp
选项 2:使用环境变量
claude mcp add kagi-ken-mcp \
  --scope user \
  --env KAGI_SESSION_TOKEN="YOUR_SESSION_TOKEN_HERE" -- \
  npx -y github:czottmann/kagi-ken-mcp
安装后

如需禁用 Claude Code 内置的网页搜索(可选),请在相关的 .claude/settings*.json 文件中设置权限:

{
  "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 Search API,根据一个或多个查询获取网页结果。结果会连续编号,方便引用。

参数:

  • queries(字符串数组):一个或多个搜索查询
kagi_summarizer

使用 Kagi Summarizer API 总结 URL 中的内容。支持多种文档类型,包括网页、视频和音频。

参数:

  • url(字符串):要总结的 URL
  • summary_type(枚举):"summary" 表示段落文本,"takeaway" 表示项目符号列表(默认:"summary")
  • target_language(字符串,可选):语言代码(例如,"EN" 表示英语,默认:"EN")

开发

项目结构
kagi-ken-mcp/
├── src/
│   ├── index.js              # Main server entry point
│   ├── tools/
│   │   ├── search.js         # Search tool implementation
│   │   └── summarizer.js     # Summarizer tool implementation
│   └── utils/
│       └── formatting.js     # Utility functions
├── package.json
└── README.md
安装
  1. 克隆仓库:

    git clone <repository-url>
    cd kagi-ken-mcp
    
  2. 安装依赖项:

    npm install
    
在开发模式下运行
npm run dev
调试

使用 MCP Inspector 进行调试:

npx @modelcontextprotocol/inspector node ./src/index.js

然后访问 http://localhost:5173 打开 Inspector。如果使用环境变量,请在 Inspector 的环境变量部分添加 KAGI_SESSION_TOKEN。

贡献
  1. Fork 仓库
  2. 创建功能分支
  3. 进行更改
  4. 使用 MCP Inspector 测试
  5. 提交拉取请求

作者

Carlo Zottmann,[email protected],https://c.zottmann.dev,https://github.com/czottmann。

本项目与 Kagi 无关,也未获得 Kagi 的认可。我只是一个非常满意的客户。

提示

我制作与 Shortcuts 相关的 macOS 和 iOS 效率应用,例如 Actions For Obsidian、Browser Actions(为多款主流浏览器添加 Shortcuts 支持)和 BarCuts(一款出乎意料地实用的上下文 Shortcuts 启动器)。欢迎了解!

相关项目

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。