MCP黑曜石Go
一个用Go编写的黑曜石高性能MCP(模型上下文协议)服务器。
概述
这个项目是Go的重新实现 py黑曜石工具 性能有了显著提高。
主要特点
- 🚀 快:\<100ms启动,并行批处理操作
- 📦 单一二进制:无依赖关系,易于分发
- 💾 缓存:带TTL的LRU缓存可提高性能
- ✅ 完成:23个工具,涵盖所有黑曜石业务
先决条件
- 黑曜石 随着 本地REST API 插件已安装
- 转到1.23+ (从源头建设)
- API密钥 从Obsidian本地REST API插件设置
安装
快速安装(推荐)
# Download and run installer (no root required)
curl -fsSL https://raw.githubusercontent.com/xvierd/obsidan-mcp-go/main/install.sh | bash
# Or if you have the repository locally:
./install.sh安装程序将:
- 自动检测您的平台
- 将二进制文件安装到
~/.local/bin/(不需要sudo) - 在以下位置创建配置目录
~/.config/mcp-obsidian/ - 向您显示要添加到Claude Desktop的确切JSON
卸载
./uninstall.sh来源
# Clone the repository
git clone https://github.com/xvierd/obsidan-mcp-go.git
cd obsidan-mcp-go
# Build the binary
make build
# The binary will be at build/obsidan-mcp-go配置
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
OBSIDIAN_API_KEY | 必修的。 您的Obsidian本地REST API密钥 | - |
OBSIDIAN_HOST | 运行Obsidian的主机 | 127.0.0.1 |
OBSIDIAN_PORT | 黑名单REST API端口 | 27124 |
MCP_LOG_LEVEL | 日志级别(debug, info, warn, error) | info |
CACHE_ENABLED | 启用笔记缓存 | true |
CACHE_TTL | 缓存TTL持续时间 | 30s |
CACHE_SIZE | 最大缓存大小 | 1000 |
Claude桌面配置
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"obsidian": {
"command": "/path/to/obsidan-mcp-go",
"env": {
"OBSIDIAN_API_KEY": "your-api-key-here",
"OBSIDIAN_HOST": "127.0.0.1",
"OBSIDIAN_PORT": "27124"
}
}
}
}可用工具(共23个)
保险库操作(8个工具)
server_status-检查黑曜石服务器是否正在运行list_notes-列出vault或目录中的注释read_note-阅读笔记内容create_note-创建新笔记update_note-更新现有注释append_note-将内容添加到注释中delete_note-删除注释patch_note-补丁特定部分
搜索操作(4个工具)
search_notes-简单文本搜索complex_search-基于JsonLogic的复杂搜索dataview_query-执行数据视图查询batch_read_notes-并行阅读多个笔记
主动笔记操作(6个工具)
get_active_note-获取当前打开的笔记update_active_note-更新活动笔记append_active_note-添加到活动注释patch_active_note-修补活动注释delete_active_note-删除活动笔记open_note-黑曜石中的开放注释
指挥操作(2个工具)
list_commands-列出可用的黑曜石命令execute_command-执行黑曜石命令
特殊操作(2个工具)
get_recent_changes-获取最近修改的文件get_periodic_note-获取每日/每周/每月笔记
发展
构建
make build # Local build
make test # Run tests
make coverage # Coverage report测试
go test ./... # Run all tests项目状态
✅ 完成 -第0阶段和第1阶段已实施
- 23个MCP工具正在工作
- 与py黑曜石工具完全对等
- ~7MB二进制文件
- 无外部依赖关系
未实施: 矢量搜索(需要5GB模型-太大)
许可证
MIT许可证-请参阅 许可证 了解详情。
致谢
灵感来自 py黑曜石工具 通过rmc8。
