Kagi搜索网络服务

基于Docker的网络化Kagi搜索服务,支持Home Assistant等网络AI集成。

  • by bab3l
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 bab3l/kagi-ken-mcp

使用说明

kagi-ken-mcp网络

支持网络的Docker打包 czottmann/kagi-ken-mcp 使用 supergateway这是在kagimcp容器可以通过API进行搜索之前提供的(该功能目前处于测试版,仅限邀请)。

该容器允许将Kagi搜索添加到基于网络的AI中(如Home Assistant的语音助手)。

快速入门(GHCR)

您的Kagi会话令牌可以在用户页面的会话链接中找到。https://kagi.com/settings/user_details

令牌在90天不活动后会轮换,因此可能需要刷新。

docker run --rm -it \
  -e KAGI_SESSION_TOKEN=your_session_token \
  -e MCP_TRANSPORT=streamableHttp \
  -e MCP_PORT=8000 \
  -p 8000:8000 \
  ghcr.io/bab3l/kagi-ken-mcp:latest

MCP端点(可流式传输HTTP): http://localhost:8000/mcp

家庭助理快速入门(流式HTTP+HA兼容)

使用启用HA兼容模式的流式HTTP。 Home Assistant MCP目前拒绝了一些工具模式关键字(例如 minItems),因此兼容模式将它们从MCP响应中剥离。

docker run -d \
  --name kagi-mcp-bridge \
  -e KAGI_SESSION_TOKEN="YOUR_SESSION_TOKEN_HERE" \
  -e MCP_TRANSPORT=streamableHttp \
  -e MCP_PORT=8000 \
  -e MCP_STREAMABLE_HTTP_PATH=/mcp \
  -e MCP_HA_COMPAT=true \
  -p 3002:8000 \
  --restart unless-stopped \
  ghcr.io/bab3l/kagi-ken-mcp:latest

家庭助理MCP设置:

  • 网址: http://<docker-host>:3002/mcp
  • 身份验证:无(除非您添加自己的反向代理身份验证)

如果Home Assistant在同一台机器上的Docker中运行,请使用从Home Assistant容器可访问的Docker主机地址(例如 host.docker.internal 在支持的地方)。

本地开发

  1. 复制 .env.example 到 .env 并设置 KAGI_SESSION_TOKEN.
  2. 构建并运行:
docker compose up --build
  1. 检查健康状况:
docker compose ps

环境变量

  • KAGI_SESSION_TOKEN (必填):上游工具使用的Kagi会话令牌。
  • KAGI_SUMMARIZER_ENGINE (可选): default, agnes, muriel, cecil.
  • MCP_TRANSPORT: streamableHttp (默认)或 sse.
  • MCP_PORT:侦听端口(默认 8000).
  • MCP_STREAMABLE_HTTP_PATH:可流式传输的HTTP路径(默认 /mcp).
  • MCP_SSE_PATH:使用SSE传输时的SSE路径(默认 /sse).
  • MCP_MESSAGE_PATH:SSE传输的消息POST路径(默认 /message).
  • MCP_HA_COMPAT:为可流式传输的HTTP启用家庭助理兼容性架构净化(默认 false).

CI/CD与自动化

  • CI:Docker构建+容器健康+MCP冒烟测试(tools/list).
  • Docker Publish:发布到GHCR并跟踪上游标签更新 .upstream-version.
  • Security Scan:带有SARIF上传的Trivy文件系统和图像扫描。
  • Live API Test:手动/预定的实际工具调用 KAGI_SESSION_TOKEN 秘密。
  • Dependabot:更新GitHub操作、Docker和npm依赖关系。

许可证

此存储库包含粘合代码和配置。上游项目许可证详细信息记录在 THIRD_PARTY_NOTICES.md.