生锈的黑曜石mcp
用于黑曜石保险库的Rust MCP服务器。封装Obsidian CLI(v1.12+),并通过模型上下文协议公开37个工具、3个资源和3个提示。支持stdio、本地HTTP和ngrok隧道传输。
要求Obsidian在启用CLI的情况下运行(设置>常规>命令行界面)。
快速开始
cp .env.example .env
# Edit .env: set OBSIDIAN_VAULT=YourVaultName
# stdio (for Cursor, Claude Desktop)
cargo run
# local HTTP server
cargo run --features http -- --http
# ngrok tunnel (internet-accessible)
cargo run --features tunnel -- --tunnelCLI参数
| 参数 | 描述 |
|---|---|
--http | 启动本地HTTP服务器而不是stdio |
--tunnel [domain] | 启动ngrok隧道。可选:传递您的稳定域名 |
-v, --vault | 保险库名称(覆盖OBSIDIAN_Vault环境) |
| `-p, --port | |
| ` | HTTP/隧道端口(默认值:8000) |
--host | HTTP绑定地址(默认值:127.0.0.1) |
--api-key | HTTP/隧道身份验证的API密钥(重写MCP_API_key env) |
--no-auth | 禁用API密钥身份验证 |
--skip-health-check | 跳过启动CLI运行状况检查 |
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
OBSIDIAN_VAULT | 否 | 保险库名称。如果是单个保险库,则自动检测。 |
OBSIDIAN_BIN | 否 | 黑曜石二进制文件的路径(默认值: obsidian) |
OBSIDIAN_TIMEOUT | 否 | CLI超时(秒)(默认值:30) |
ENABLE_DANGEROUS_TOOLS | 否 | 启用eval_js和execute_command |
MCP_API_KEY | 没有HTTP/隧道的 | neneneba API密钥。如果未设置,则自动生成。 |
NGROK_AUTHTOKEN | 用于隧道 | ngrok身份验证令牌 |
NGROK_DOMAIN | 否 | 稳定的ngrok域名(默认:随机URL) |
构建功能
cargo build--仅限stdio,精简二进制cargo build --features http--添加本地HTTP服务器cargo build --features tunnel--添加ngrok隧道(包括http)
MCP客户端配置
光标/克劳德桌面(stdio):
{
"mcpServers": {
"obsidian": {
"command": "path/to/rusty-obsidian-mcp",
"env": { "OBSIDIAN_VAULT": "MyVault" }
}
}
}通过ngrok远程:
MCP endpoint: https://your-name.ngrok-free.app/mcp
Authorization: Bearer 