黑曜石锈MCP
用Rust构建的用于黑曜石知识库管理的高性能MCP(模型上下文协议)服务器。
特性
- 📂 文件树索引 -获取完整的保险库结构和标签概述
- 🔍 智能搜索 -通过标签、确切名称或模糊关键字匹配查询笔记
- 📝 笔记管理 -通过自动生成正面内容来读取、写入和删除笔记
- 🔄 添加或覆盖 -为现有文件选择附加模式(默认)或覆盖模式
- 📁 子目录支持 -在嵌套目录中组织笔记(例如。,
projects/easytier,journal/2026-03) - 🛡️ 输入验证 -目录白名单、文件名净化、路径遍历保护
- 🏷️ 标签系统 -用标签和别名组织笔记
- ⚡ 高性能 -采用Rust构建,速度和可靠性高
安装
cargo build --release用法
服务器提供以下MCP工具:
note_index_tree
获取vault中的完整文件树和所有可用标记。
query_note
使用以下方式搜索笔记:
- 标签:按一个或多个标签过滤(交集)
- 确切名称:匹配精确的文件名(不带.md)
- 关键词:在文件名、别名和标签之间进行模糊搜索
例子:
{"tags": ["docker"]}
{"exact_name": "docker-guide"}
{"keyword": "Docker"}
{"tags": ["rust"], "keyword": "mcp"}read_note
通过笔记的相对路径阅读笔记的完整内容。
例子:
{"path": "tech/docker-guide.md"}write_note
创建或更新带有自动前件生成功能的笔记。支持两种模式:
- 追加模式 (默认):向现有文件添加内容
- 覆盖模式 (
append: false):替换整个文件
支持子目录(例如。, projects/easytier, journal/2026-03,深度可达3层)。
附加模式示例:
{
"directory": "tech",
"filename": "nginx-guide",
"tags": ["nginx"],
"aliases": ["Nginx Guide"],
"status": "active",
"content": "> [!abstract] Overview\n> Content\n\n## Related Notes\n\n- [[docker-guide]]",
"append": true
}覆盖模式示例:
{
"directory": "tech",
"filename": "nginx-guide",
"tags": ["nginx"],
"aliases": ["Nginx Guide"],
"status": "active",
"content": "> [!abstract] Overview\n> New content\n\n## Related Notes\n\n- [[docker-guide]]",
"append": false
}delete_note
从vault中删除注释。小心使用-此操作是不可逆的。
例子:
{"path": "tech/docker-guide.md"}write_note_tips
获取vault的完整编写指南(目录结构、命名约定、frontmatter格式等)。
配置
选项1:环境变量(推荐)
设置 OBSIDIAN_VAULT_ROOT 指向黑曜石保险库的环境变量:
# Linux/macOS
export OBSIDIAN_VAULT_ROOT="/path/to/your/vault"
# Windows (cmd)
set OBSIDIAN_VAULT_ROOT=D:\notes\Fromsko
# Windows (PowerShell)
$env:OBSIDIAN_VAULT_ROOT="D:\notes\Fromsko"选项2:硬编码路径
编辑 VAULT_ROOT 恒定于 src/config.rs:
pub const VAULT_ROOT: &str = r"D:\notes\Fromsko";选项3:MCP客户端配置(建议用于MCP客户端)
直接在MCP客户端配置中配置保管库路径:
{
"fromsko-note": {
"command": "/path/to/obsidian-mcp",
"disabled": false,
"env": {
"OBSIDIAN_VAULT_ROOT": "/path/to/your/vault"
}
}
}替换 /path/to/obsidian-mcp 使用编译二进制文件的实际路径,以及 /path/to/your/vault 与你的黑曜石拱顶路径。
备注:当将此MCP服务器与Claude Desktop、Cursor或其他MCP兼容工具等客户端一起使用时,这是推荐的方法。
有效目录
注释可以组织在以下顶级目录中(支持子目录,最多3级):
tech-技术说明ai-AI/ML相关说明projects-项目文件methods-方法和流程career-职业发展ideas-想法和头脑风暴cheatsheet-快速参考指南journal-日报
项目结构
src/
main.rs # Entry point, tracing init, serve()
config.rs # Constants & vault root config
types.rs # Request/response types with schemars
server.rs # MCP tool handlers
validation.rs # Input validation (directory, filename, status, path)
frontmatter.rs # YAML frontmatter parsing & generation
index.rs # Vault index builder
file_tree.rs # File tree visualization测试
cargo test # 40 unit tests截图
代理集成
注释示例
许可证
麻省理工学院-见 许可证 文件以获取详细信息。
