MCP server for Obsidian
MCP 服务器通过 Local REST API 社区插件与 Obsidian 交互。
Tools
obsidian_batch_get_file_contents
Return the contents of multiple files in your vault, concatenated with headers.
obsidian_list_files_in_dir
Lists all files and directories that exist in a specific Obsidian directory.
obsidian_list_files_in_vault
Lists all files and directories in the root directory of your Obsidian vault.
obsidian_get_file_contents
Return the content of a single file in your vault.
obsidian_simple_search
Simple search for documents matching a specified text query across all files in the vault. Use this tool when you want to do a simple text search
obsidian_patch_content
Insert content into an existing note relative to a heading, block reference, or frontmatter field.
obsidian_append_content
Append content to a new or existing file in the vault.
obsidian_complex_search
Complex search for documents using a JsonLogic query. Supports standard JsonLogic operators plus 'glob' and 'regexp' for pattern matching. Results must be non-falsy. Use this tool when you want to do a complex search, e.g. for all documents with certain tags etc.
README
Obsidian 的 MCP 服务器
用于通过 Local REST API 社区插件与 Obsidian 交互的 MCP 服务器。
<a href="https://glama.ai/mcp/servers/3wko1bhuek"><img width="380" height="200" src="https://glama.ai/mcp/servers/3wko1bhuek/badge" alt="server for Obsidian MCP server" /></a>
组件
工具
该服务器实现了多个与 Obsidian 交互的工具:
- list_files_in_vault: 列出 Obsidian vault 根目录中的所有文件和目录
- list_files_in_dir: 列出特定 Obsidian 目录中的所有文件和目录
- get_file_contents: 返回 vault 中单个文件的内容。
- search: 在 vault 的所有文件中搜索与指定文本查询匹配的文档
- patch_content: 将内容插入到现有笔记中,相对于标题、块引用或 frontmatter 字段。
- append_content: 将内容附加到 vault 中的新文件或现有文件。
- delete_file: 从 vault 中删除文件或目录。
示例提示
最好首先指示 Claude 使用 Obsidian。 然后它将始终调用该工具。
使用如下提示:
- 获取上次架构会议记录的内容并进行总结
- 搜索所有提到 Azure CosmosDb 的文件,并向我快速解释其中提到的上下文
- 总结上次的会议记录,并将其放入一个新的笔记 'summary meeting.md' 中。 添加一个介绍,以便我可以通过电子邮件发送它。
配置
Obsidian REST API 密钥
有两种方法可以使用 Obsidian REST API 密钥配置环境。
- 添加到服务器配置(首选)
{
"mcp-obsidian": {
"command": "uvx",
"args": [
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY":"<your_api_key_here>"
}
}
}
- 在工作目录中创建一个
.env文件,其中包含以下必需变量:
OBSIDIAN_API_KEY=your_api_key_here
注意:您可以在 Obsidian 插件配置中找到密钥。
快速开始
安装
Obsidian REST API
您需要运行 Obsidian REST API 社区插件:https://github.com/coddingtonbear/obsidian-local-rest-api
在设置中安装并启用它,并复制 API 密钥。
Claude Desktop
在 MacOS 上:~/Library/Application\ Support/Claude/claude_desktop_config.json
在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json
<details> <summary>开发/未发布的服务器配置</summary>
{
"mcpServers": {
"mcp-obsidian": {
"command": "uv",
"args": [
"--directory",
"<dir_to>/mcp-obsidian",
"run",
"mcp-obsidian"
]
}
}
}
</details>
<details> <summary>已发布的服务器配置</summary>
{
"mcpServers": {
"mcp-obsidian": {
"command": "uvx",
"args": [
"mcp-obsidian"
],
"env": {
"OBSIDIAN_API_KEY" : "<YOUR_OBSIDIAN_API_KEY>"
}
}
}
}
</details>
开发
构建
要准备用于分发的软件包:
- 同步依赖项并更新 lockfile:
uv sync
调试
由于 MCP 服务器通过 stdio 运行,因此调试可能具有挑战性。 为了获得最佳调试体验,我们强烈建议使用 MCP Inspector。
您可以使用 npm 通过以下命令启动 MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian
启动后,Inspector 将显示一个 URL,您可以在浏览器中访问该 URL 以开始调试。
您还可以使用以下命令查看服务器日志:
tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。