mcpField
Z
zk-mcp

zk-mcp

本地服务
github.com/koei-kaji记忆与知识168 周前更新

关于 zk-mcp

zk-mcp 是连接 LLM、MCP 客户端与 zk 笔记的 MCP 服务,支持搜索笔记、发现笔记关系、读取内容、管理标签和创建笔记。

主要功能

  1. 01按文本、标签和筛选条件搜索笔记
  2. 02探索笔记链接及相关笔记
  3. 03列出可用标签
  4. 04读取完整笔记内容
  5. 05创建笔记

适用场景

  1. 01按内容或标签筛选查找笔记
  2. 02探索某篇笔记周边的链接关系
  3. 03通过 MCP 客户端读取或创建笔记

MCP 相关

它将 zk 笔记搜索、链接分析、标签查询、笔记读取和创建能力作为工具提供给 MCP 客户端。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

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

详细介绍

zk-mcp

zk-mcp 是一个 MCP(Model Context Protocol)服务,用于将由 zk 管理的笔记与大模型集成。 它支持大模型高效访问和使用由 zk 管理的知识库。

功能

  • 笔记查询:按内容、标签和复杂筛选条件搜索笔记
  • 链接分析:发现笔记之间的关系(链接到、被链接、相关)
  • 标签管理:列出并按可用标签筛选
  • 笔记访问:读取完整的笔记内容
  • 创建笔记:以编程方式创建新笔记

前提条件

安装

  1. 克隆此仓库:
git clone https://github.com/koei-kaji/zk-mcp.git
cd zk-mcp
  1. 安装依赖:
uv sync

配置

将以下设置添加到 MCP 客户端的 servers.json 中:

{
  "mcpServers": {
    "zk": {
      "alwaysAllow": [
        "get_note",
        "get_note_paths",
        "get_linking_notes",
        "get_tags",
        "create_note"
      ],
      "args": [
        "--directory",
        "/path/to/zk-mcp/",
        "run",
        "server.py"
      ],
      "command": "uv",
      "env": {
        "ZK_DIR": "/path/to/your/zk-note-directory/"
      }
    }
  }
}

重要:将 /path/to/zk-mcp/ 替换为此仓库的实际路径,并将 /path/to/your/zk-note-directory/ 替换为你的 zk 笔记目录路径。

可用的 MCP 工具

此服务提供以下 MCP 工具:

get_note_paths

根据各种条件搜索笔记:

  • include_str:筛选内容或文件名中包含指定字符串的笔记
  • include_str_operand:用于多个字符串筛选条件的逻辑运算符(AND/OR)
  • exclude_str:排除包含指定字符串的笔记
  • include_tags:按标签筛选笔记
  • include_tags_operand:用于多个标签筛选条件的逻辑运算符(AND/OR)
  • exclude_tags:排除带有指定标签的笔记
get_linking_notes

发现笔记之间的关系:

  • link_to_notes:指定笔记链接到的笔记
  • linked_by_notes:链接到指定笔记的笔记
  • related_notes:与指定笔记相关的笔记
get_tags

列出笔记仓库中所有可用的标签。

get_note

按路径读取指定笔记的完整内容。

create_note

在可选目录中使用指定标题创建新笔记。

开发

命令
  • make run - 在开发模式下运行 MCP 服务,并设置 ZK_DIR=.
  • make format - 使用 ruff 格式化代码(导入项 + 格式)
  • make lint - 使用 ruff 执行代码检查,并使用 mypy 进行类型检查
  • make test - 使用 pytest 运行所有测试
  • make pre-commit - 同时运行 format 和 lint(建议在提交前运行)
包管理
  • uv add <package> - 添加运行时依赖
  • uv add --dev <package> - 添加开发依赖
  • uv run <command> - 在虚拟环境中运行命令

架构

此服务使用以下组件构建:

  • FastMCP:MCP 服务实现
  • Pydantic:数据验证和序列化
  • zk CLI:与 zk 笔记系统的后端集成

所有工具都使用 Pydantic 模型返回 JSON 响应,以确保类型安全并进行验证。

许可证

此项目采用 MIT License 授权,详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

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

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