关于 zk-mcp
zk-mcp 是连接 LLM、MCP 客户端与 zk 笔记的 MCP 服务,支持搜索笔记、发现笔记关系、读取内容、管理标签和创建笔记。
主要功能
- 01按文本、标签和筛选条件搜索笔记
- 02探索笔记链接及相关笔记
- 03列出可用标签
- 04读取完整笔记内容
- 05创建笔记
适用场景
- 01按内容或标签筛选查找笔记
- 02探索某篇笔记周边的链接关系
- 03通过 MCP 客户端读取或创建笔记
MCP 相关
它将 zk 笔记搜索、链接分析、标签查询、笔记读取和创建能力作为工具提供给 MCP 客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
zk-mcp
zk-mcp 是一个 MCP(Model Context Protocol)服务,用于将由 zk 管理的笔记与大模型集成。 它支持大模型高效访问和使用由 zk 管理的知识库。
功能
- 笔记查询:按内容、标签和复杂筛选条件搜索笔记
- 链接分析:发现笔记之间的关系(链接到、被链接、相关)
- 标签管理:列出并按可用标签筛选
- 笔记访问:读取完整的笔记内容
- 创建笔记:以编程方式创建新笔记
前提条件
- zk:纯文本笔记助手
- uv
- 任意 MCP 客户端(例如 Claude Desktop、Continue 等)
安装
- 克隆此仓库:
git clone https://github.com/koei-kaji/zk-mcp.git
cd zk-mcp
- 安装依赖:
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
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。