mcpField
O
openzim-mcp

openzim-mcp

本地服务
github.com/cameronrye记忆与知识1464 天前更新

关于 openzim-mcp

openzim-mcp 是一款 MCP 服务,可结构化、离线访问 Wikipedia、Wiktionary 和 Stack Exchange 等 ZIM 存档。它面向研究助手和知识应用,提供自然语言查询模式及专用检索工具。

主要功能

  1. 01搜索一个或多个存档
  2. 02检索条目和单独章节
  3. 03浏览命名空间与存档结构
  4. 04检查元数据和存档健康状态
  5. 05发现入站和出站链接

适用场景

  1. 01从离线 Wikipedia 存档回答问题
  2. 02在 Stack Exchange 转储中查找帖子
  3. 03为内容分析提取章节和链接

MCP 相关

向 MCP 客户端提供存档搜索、检索、浏览、元数据、健康检查和链接工具。高级模式还提供逐条目的 MCP 资源、提示词和实时变更通知。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"cameronrye-openzim": {
"command": "uvx",
"args": [
"openzim-mcp"
],
"env": {
"OPENZIM_MCP_TOOL_MODE": "<OPENZIM_MCP_TOOL_MODE>"
}
}
}
}
启动命令uvx openzim-mcp
需要配置的环境变量
OPENZIM_MCP_TOOL_MODETool surface: 'advanced' (the default here) registers all 8 tools (zim_query, zim_search, zim_get, zim_get_section, zim_browse, zim_metadata, zim_links, zim_health); 'simple' registers only the zim_query natural-language entry point.

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

安装包
pypiopenzim-mcp3.4.0

工具

还没有获取到工具列表

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

详细介绍

OpenZIM MCP 徽标

OpenZIM MCP 服务

将静态 ZIM 存档转化为面向 AI 模型的动态知识引擎

CI codecov CodeQL 安全评级

PyPI 版本 PyPI - Python 版本 PyPI - 下载量 许可证:MIT

OpenZIM MCP 服务质量徽章


✨ 亮点。 精简的 8 个工具高级接口(zim_query、zim_search、zim_get、zim_get_section、zim_browse、zim_metadata、zim_links、zim_health),架构小巧,适合小型模型调度;也可选择单工具 Simple 模式进行自然语言查询。存档类型预设会针对不同来源(Wikipedia、Stack Exchange、……)自动调整检索,入站链接发现可回答“哪些内容链接到这里”,而原生 libzim 检查可验证和检查任何存档。现已上线 Smithery 和官方 MCP Registry。版本说明 → 文档 →

OpenZIM MCP 是一款现代、安全、高性能的模型上下文协议服务,可让 AI 模型以结构化方式离线访问 ZIM 格式知识存档,包括 Wikipedia、Wiktionary、Stack Exchange,以及整个 Kiwix Library。

它专为研究助手、知识聊天机器人和内容分析系统打造,能让它们智能地访问海量知识库,而不只是获取原始文本转储。它支持按命名空间(文章、元数据、媒体)智能导航、感知结构的检索(章节、目录、相关文章)、带建议的全文搜索和多存档搜索,以及用于映射内容关系的链接图提取。缓存和分页操作让海量存档也能保持响应迅速;全面的输入验证和路径遍历防护则确保安全。

内置 Streamable HTTP 传输、带实时变更通知的逐条目 MCP 资源,以及 Simple / Advanced 双模式。

安装

# uv (recommended — isolated CLI tool)
uv tool install openzim-mcp

# pip
pip install openzim-mcp

# Docker (multi-arch image, ghcr.io) — runs as a local stdio MCP server
docker pull ghcr.io/cameronrye/openzim-mcp
docker run -i --rm -v ~/zim-files:/data ghcr.io/cameronrye/openzim-mcp

容器默认使用 stdio 传输,因此 docker run -i 会通过标准输入/输出进行 MCP 通信——像配置二进制文件一样将它接入 MCP 客户端(参见快速开始)。如需运行长期服务的 HTTP 服务(支持 bearer 身份验证、CORS 和健康检查端点),请在运行时启用:-e OPENZIM_MCP_TRANSPORT=http -e OPENZIM_MCP_HOST=0.0.0.0 -e OPENZIM_MCP_AUTH_TOKEN=… -p 8000:8000;请参阅 HTTP & Docker 部署。

验证安装:

openzim-mcp --help
获取你的第一个 ZIM 存档

没有可供读取的存档,服务就无法运行。获取一个真实存档——这是 openZIM 项目自带测试套件中的一个 13.6 MB 气候变化主题英文维基百科摘录。无需账户,也无需安装任何内容:

mkdir -p ~/zim-files
curl -fsSL -o ~/zim-files/wikipedia_en_climate_change_mini_2024-06.zim \
  https://raw.githubusercontent.com/openzim/zim-testing-suite/main/data/withns/wikipedia_en_climate_change_mini_2024-06.zim

~/zim-files 是下方所有示例中传给服务的目录——服务会自行展开 ~,因此无论从 shell 还是客户端配置文件中使用都适用。对于完整存档——维基百科、维基词典、Stack Exchange 等,大小从数百 MB 到数十 GB 不等——请浏览 browse.library.kiwix.org,并将 .zim 文件保存到同一目录中。更多详情,包括校验和以及 Windows PowerShell 等效命令,请参阅:快速开始。

Smithery 和一键安装

OpenZIM MCP 已列入 Smithery 注册表和官方 MCP 注册表(名称为 io.github.cameronrye/openzim-mcp)。使用 Smithery CLI 将其添加到 MCP 客户端:

npx @smithery/cli mcp add rye/openzim-mcp --client claude

如需一键安装 Claude Desktop 扩展,请从最新版本下载 openzim-mcp-<version>.mcpb 资源文件(以及对应的 .sha256 文件),然后双击。该扩展包会启动固定版本的 uvx openzim-mcp@<version>(因此主机需要安装 uv),并提示你选择 ZIM 目录。维护者运行手册:docs/distribution.md。

快速开始

以简单模式运行服务(默认模式——提供一个自然语言工具 zim_query):

openzim-mcp ~/zim-files

将其接入 MCP 客户端。以下是 Claude Desktop 的 claude_desktop_config.json 示例(任何支持 stdio 的 MCP 客户端都可以采用相同方式):

{
  "mcpServers": {
    "openzim-mcp": {
      "command": "uvx",
      "args": ["openzim-mcp", "~/zim-files"]
    }
  }
}

客户端连接后,向你的大模型提问:“总结一下光合作用这篇文章”——zim_query 会自动调用合适的底层工具。

如需完全控制,请以高级模式运行,以提供全部 8 个专用工具:

{
  "mcpServers": {
    "openzim-mcp-advanced": {
      "command": "uvx",
      "args": ["openzim-mcp", "--mode", "advanced", "~/zim-files"]
    }
  }
}

有关 HTTP 传输(支持 bearer 身份验证、CORS 和健康检查端点的长期服务),请参阅 HTTP & Docker 部署。

亮点

  • 8 个高级工具 — zim_query、zim_search、zim_get、zim_get_section、zim_browse、zim_metadata、zim_links、zim_health。工具数量从 22 个降至 8 个;高级模式的架构从约 36KB 缩减至约 24.1KB,摆脱 MCP Tax 带来的痛点。API 参考 →
  • Streamable HTTP 传输 — bearer-token 身份验证、CORS、健康检查端点、多架构 Docker 镜像。HTTP 与 Docker 部署 →
  • 按条目提供 MCP 资源并支持订阅 — zim://{name}/entry/{path},使用原生 MIME 类型;客户端打开 subscriptions/listen 流后,当 ZIM 出现或消失时会收到 resources/list_changed,当 ZIM 被替换时会收到 resources/updated。资源、提示词与订阅 →
  • 简单模式下的 zim_query — 一个自然语言工具,可分派到正确的操作,并针对小型模型部署目标进行调优。快速入门 →
  • 存档类型预设 — OpenZIM MCP 可检测存档类型(Wikipedia、Stack Exchange 等),并针对该类型自动调优检索和摘要功能。例如,Stack Exchange 转储会呈现为清晰的问答内容,而不是杂乱的投票分数。操作人员可以通过 TOML 文件(OPENZIM_MCP_PRESETS_OVERRIDE_PATH)覆盖随附的默认值。
  • 原生 libzim 检查 — zim_health(zim_file_path=...) 会验证存档完整性(Archive.check() + 校验和),zim_metadata 则会报告存档标识、全文/标题索引功能,以及 M/Counter MIME 类型细分信息。API 参考 →
  • 发现入站链接(“哪些页面链接到此处”) — zim_links(direction="inbound") 会返回链接到某个条目的页面,并按链接页面的重要性排序。需要预先构建 sidecar 文件:openzim-mcp build link-graph <archive>.zim(会在存档旁写入 <archive>.zim.linkgraph.sqlite)。API 参考 →

模式

OpenZIM MCP 提供两种模式;每个客户端选择一种。

简单模式(默认)提供单个智能工具 zim_query,用于解析自然语言请求并分派到正确的底层操作。专为小型模型部署目标打造——网络传输负载极小,分派在服务端完成,而非在大模型上下文中进行。除非有特定原因选择其他模式,否则请从此模式开始。

高级模式提供全部 8 个专用工具(zim_query、zim_search、zim_get、zim_get_section、zim_browse、zim_metadata、zim_links、zim_health),以及 3 个 MCP 提示词(/research、/summarize、/explore)和按条目提供的资源。专为能够可靠地处理完整架构分派任务的大型模型,以及需要精细控制分页、命名空间浏览和链接图提取的客户端打造。

经验法则:参数量 ≤ 13B 的模型适合使用简单模式;更大的模型(Claude Sonnet/Opus、GPT-4o 级别、Llama 70B+)可直接分派到高级模式。有关如何选择的指导,请参阅 LLM 集成模式。

文档

完整文档请访问 https://cameronrye.github.io/openzim-mcp/docs/。

分组页面
开始使用简介 · 安装 · 快速入门 · ZIM 概念 · 大模型集成模式 · 示例讲解
概念智能检索 · 搜索重排序 · 架构概览
参考API 参考 · 配置 · 资源、提示词与订阅 · 命令行参考
运维HTTP 和 Docker 部署 · 性能优化 · 安全最佳实践 · 故障排除 · 常见问题 · 升级

项目状态

v3.4.0 是当前版本(2026-10-25)。
v2.0.0 GA 于 2026-05-27 发布。根据 SECURITY.md,v1.x 的维护期已于 v2.5.0 发布时结束(2026-06-18);所有活跃开发都在当前主版本系列上进行。v3.0.0 对 HTTP 订阅客户端而言是一个不兼容更新:不再提供 resources/subscribe/unsubscribe 服务——实时更新通过 2026-07-28 协议修订版中的 subscriptions/listen 传递——且必须重新构建由 2.x 生成的链接图 sidecar。工具、资源和提示词均未改变,旧版握手客户端仍可正常工作。详情请参阅 CHANGELOG.md,逐步说明请参阅升级指南。

贡献

有关开发环境设置、测试命令、代码风格和发布流程,请参阅 CONTRIBUTING.md。

安全

有关漏洞披露政策,请参阅 SECURITY.md。目前没有已知 CVE。

许可证

MIT。请参阅 LICENSE。

致谢


由 Cameron Rye 用 ❤️ 制作

评论

支持 Markdown

第一次接触 MCP?

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

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