使用说明
黑曜石livesync mcp
通过CouchDB访问黑曜石保险库的远程MCP服务器/ 自托管LiveSync.适用于Claude Code、Claude.ai和任何兼容MCP的客户端。
服务器上不需要黑曜石桌面应用程序,直接连接到CouchDB。
建筑
Obsidian (phone/desktop) <-> CouchDB <-> MCP Server <-> Claude Code / Claude.ai
黑曜石客户端通过LiveSync插件同步到CouchDB实例。此MCP服务器可直接读取和写入CouchDB,提供20种工具来管理您的保险库-服务器端不需要Obsidian REST API或桌面应用程序。
特性
备注
- 搜索 --全文搜索(文本/正则表达式)
- 获取 --获取内容、属性和统计信息(.md/.base/.canvas)
- create_note --使用frontmatter创建笔记
- update_note --修改(覆盖/追加/前置/标题后/搜索替换)
- delete_note --删除笔记
- move_note --移动/重命名
- 复制_注释 --重复
- list_notes --列出带有文件夹/扩展名过滤器的文件
属性和标签
- 管理特性 --获取/设置/删除frontmatter属性
- 管理标签 --添加/删除/列出标签
- 获取所有标签 --所有带有计数的保险库标签
图表和链接
- get_links --传出/传入链接
- get_link_graph --完整保险库图
- find_orphaned_notes --没有链接的笔记
- find_hub_notes --最相关的笔记
画布
- canvas_node --添加/删除画布节点
- 画布_边缘 --添加/删除画布边缘
其他
- vault_stats --保险库统计信息
- create_from_template --使用变量替换从模板创建
- list_templates --列出可用模板
先决条件
- 带有黑曜石LiveSync数据的CouchDB
- Python 3.11+
设置
1.安装
git clone https://github.com/YOUR_USERNAME/obsidian-livesync-mcp.git
cd obsidian-livesync-mcp
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
2.配置
cp .env.example .env
# Edit .env with your settings
| 变量 | 描述 |
|---|---|
COUCHDB_URL |
CouchDB URL(例如。 http://localhost:5984) |
COUCHDB_USER |
CouchDB管理员用户名 |
COUCHDB_PASSWORD |
CouchDB管理员密码 |
COUCHDB_DATABASE |
数据库名称(默认值: obsidian) |
MCP_API_KEY |
MCP客户端(如Codex)的共享承载令牌 |
OAUTH_PASSWORD |
OAuth同意密码(留空可禁用OAuth) |
OAUTH_CLIENT_ID |
预注册客户端的OAuth客户端ID |
OAUTH_CLIENT_SECRET |
OAuth客户端密钥 |
MCP_SERVER_URL |
此服务器的公共HTTPS URL |
MCP_HOST |
绑定地址(默认值: 0.0.0.0) |
MCP_PORT |
端口(默认值: 8484) |
3.跑步
python run.py
4.系统化服务(可选)
sudo cp obsidian-mcp.service /etc/systemd/system/
# Edit the service file: set User and paths
sudo systemctl daemon-reload
sudo systemctl enable obsidian-mcp
sudo systemctl start obsidian-mcp
连接客户
法典
在Codex运行的环境中设置相同的API密钥,然后将可流式传输的HTTP MCP服务器添加到 ~/.codex/config.toml:
[mcp_servers.obsidian]
url = "https://your-server/mcp"
bearer_token_env_var = "MCP_API_KEY"
Codex支持已通过此可流式传输的HTTP配置和存储在 MCP_API_KEY 环境变量。
对于直接要求自定义标头的MCP客户端,请使用:
| 键 | 值 |
|---|---|
Authorization |
Bearer your_api_key |
替换 your_api_key 服务器上配置的确切值为 MCP_API_KEY.
Claude.ai(网络版)
- 设置>连接器>添加自定义连接器
- 网址:
https://your-server/mcp - 您的客户端ID和客户端密码
.env
认证
服务器支持两种身份验证模式:
- 承载API密钥 -set
MCP_API_KEY客户端必须发送Authorization: Bearer <MCP_API_KEY>。如果同时存在承载和OAuth设置,则此模式优先。 - OAuth 2.1 -set
OAUTH_PASSWORDOAuth客户端设置使用现有的授权码流+PKCE。
如果两者都没有 MCP_API_KEY 也不 OAUTH_PASSWORD 设置后,服务器在启动时失败,而不是打开运行。
当前限制
开箱即用,OAuth只支持 克劳德 (Claude.ai和Claude Code)作为客户。预注册的OAuth客户端已硬编码 redirect_uris 对于Claude的回调URL和 scope: claudeai.
添加其他MCP客户端
要支持其他客户,您可以:
-
预先注册其他客户 --在中添加更多客户端
oauth_provider.py__init__与适当redirect_uris为您的客户。 -
启用动态客户端注册(DCR) --in
server.py,更改ClientRegistrationOptions(enabled=False, ...)到enabled=True这允许任何兼容MCP的客户端自动注册。注意:这意味着任何知道您的服务器URL的人都可以注册客户端。
许可证
Apache 2.0