MCP 服务器可借助 Obsidian 社区插件的 Local REST API 与 Obsidian 进行交互,为用户提供便捷的操作体验。
需安装并启用 Obsidian REST API 社区插件:https://github.com/coddingtonbear/obsidian-local-rest-api 。在设置中完成安装与启用操作后,复制 API 密钥。
~/Library/Application\ 支持/Claude/claude_desktop_config.json。%APPDATA%/Claude/claude_desktop_config.json%。{
"mcpServers": {
"mcp-obsidian": {
"command": "uv",
"args": [
"--directory",
"/mcp-obsidian" ,
"run",
"mcp-obsidian"
]
}
}
}
{
"mcpServers": {
"mcp-obsidian": {
"command": "uvx",
"args": [
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY" : ""
}
}
}
}
该服务器实现了多个工具以与 Obsidian 交互:
list_files_in_vault:列出 vault 根目录中的所有文件和目录。list_files_in_dir:列出特定 Obsidian 目录中的所有文件和目录。get_file_contents:返回 vault 中单个文件的内容。search:在 vault 中的所有文件中搜索与指定文本查询匹配的文档。patch_content:相对于标题、块引用或前端字段插入内容到现有笔记中。append_content:追加内容到新文件或现有文件中。delete_file:从 vault 中删除文件或目录。首先指示 Claude 使用 Obsidian,然后它将始终调用工具。可使用以下提示:
有两种方式配置环境以使用 Obsidian REST API 密钥。
{
"mcp-obsidian": {
"command": "uvx",
"args": [
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY": "" ,
"OBSIDIAN_HOST": ""
}
}
}
.env 文件
包含以下所需变量:OBSIDIAN_API_KEY=your_api_key_here
OBSIDIAN_HOST=your_obsidian_host
⚠️ 重要提示
您可以在 Obsidian 插件配置中找到密钥。
要准备分发包,需同步依赖项并更新锁定文件:
uv sync
由于 MCP 服务器通过 stdio 运行,调试可能具有挑战性。为了获得最佳的调试体验,我们强烈推荐使用 MCP 检查器。
您可以通过以下命令启动 MCP 检查器:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian
启动后,检查器会显示一个 URL,您可以在浏览器中访问以开始调试。
您还可以通过以下命令查看服务器日志:
tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log