MCP server for Obsidian

MCP server for Obsidian

site icon
2025.03.29 1
Python笔记管理知识库工具开发效率
mcp-obsidian 是一个用于与 Obsidian 笔记应用交互的 MCP 服务器,通过 Local REST API 社区插件实现。它提供了多种工具来管理和操作 Obsidian 中的笔记内容,包括文件列表、内容获取、搜索、内容插入和追加等功能。适用于需要自动化管理 Obsidian 笔记的场景,如会议记录整理、知识库搜索和内容更新等。
View on GitHub

Overview

基本能力

产品定位

mcp-obsidian 是一个用于与 Obsidian 笔记应用交互的 MCP 服务器,通过 Local REST API 社区插件实现。

核心功能

  • list_files_in_vault: 列出 Obsidian 保险库根目录中的所有文件和目录
  • list_files_in_dir: 列出特定 Obsidian 目录中的所有文件和目录
  • get_file_contents: 返回保险库中单个文件的内容
  • search: 在所有文件中搜索匹配指定文本查询的文档
  • patch_content: 将内容插入到现有笔记中,相对于标题、块引用或 frontmatter 字段
  • append_content: 将内容追加到保险库中的新文件或现有文件中

适用场景

  • 获取上次架构会议笔记的内容并总结
  • 搜索所有提到 Azure CosmosDb 的文件并快速解释其上下文
  • 总结上次会议记录并将其放入新笔记 'summary meeting.md' 中,添加介绍以便通过电子邮件发送

工具列表

  • list_files_in_vault: 列出保险库中的所有文件和目录
  • list_files_in_dir: 列出特定目录中的所有文件和目录
  • get_file_contents: 获取单个文件的内容
  • search: 搜索匹配文本查询的文档
  • patch_content: 插入内容到现有笔记中
  • append_content: 追加内容到文件

常见问题解答

  • 如何配置 Obsidian REST API Key?
  • 可以通过服务器配置或 .env 文件配置
  • 如何调试?
  • 推荐使用 MCP Inspector 进行调试

使用教程

使用依赖

  1. 安装并启用 Obsidian REST API 社区插件: https://github.com/coddingtonbear/obsidian-local-rest-api
  2. 在设置中复制 API 密钥

安装教程

  1. 配置 Obsidian REST API Key
  2. 方法一:添加到服务器配置 json { "mcp-obsidian": { "command": "uvx", "args": [ "mcp-obsidian" ], "env": { "OBSIDIAN_API_KEY":"<your_api_key_here>" } } }
  3. 方法二:创建 .env 文件 OBSIDIAN_API_KEY=your_api_key_here

  4. 开发/未发布服务器配置 json { "mcpServers": { "mcp-obsidian": { "command": "uv", "args": [ "--directory", "<dir_to>/mcp-obsidian", "run", "mcp-obsidian" ] } } }

  5. 已发布服务器配置 json { "mcpServers": { "mcp-obsidian": { "command": "uvx", "args": [ "mcp-obsidian" ], "env": { "OBSIDIAN_API_KEY" : "<YOUR_OBSIDIAN_API_KEY>" } } } }

调试方式

  1. 使用 MCP Inspector 调试 bash npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian
  2. 查看服务器日志 bash tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。