笔记管理服务器

一个提供对Obsidian知识库访问的MCP服务器,支持文件发现、内容读取和搜索功能,适用于个人知识管理和文档检索。

  • by MichaelAnckaert
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 MichaelAnckaert/obsidian-mcp

使用说明

黑曜石MCP服务器

MCP(模型上下文协议)服务器,提供对黑曜石保管库的访问,实现与笔记、文档和知识库的无缝交互。

特性

  • 文件发现:列出黑曜石保管库中的所有文件
  • 内容读取:读取vault中任何文件的全部内容
  • 文件搜索:按名称或路径模式查找文件
  • 内容搜索:在vault中的所有文件中搜索文本
  • 安全通道:不包括以下系统目录 .obsidian 和 .git
  • 大文件处理:自动处理具有大小限制和内容截断的大文件

可用工具

  • list_files() -获取vault中所有文件的列表
  • get_file_content(file_path) -读取特定文件的内容
  • find_files(query) -按与查询匹配的名称查找文件
  • find_in_all_file_content(query) -在所有文件内容中搜索文本

安装

  1. 克隆此存储库:

    git clone <repository-url>
    cd obsidian-mcp
    
  2. 使用uv(推荐)或pip安装依赖项:

    # Using uv
    uv sync
    
    # Or using pip
    pip install -e .
    

Claude桌面配置

要将此MCP服务器与Claude Desktop一起使用,您需要将其添加到Claude Desktop配置文件中。

Windows配置

  1. 在以下位置打开您的Claude Desktop配置文件:

    %APPDATA%\Claude\claude_desktop_config.json
    
  2. 将以下配置添加到 mcpServers 章节:

    {
      "mcpServers": {
        "obsidian-mcp": {
          "command": "uv",
          "args": [
            "run",
            "python",
            "C:\\path\\to\\your\\obsidian-mcp\\main.py",
            "C:\\path\\to\\your\\obsidian\\vault"
          ]
        }
      }
    }
    

macOS/Linux配置

  1. 在以下位置打开您的Claude Desktop配置文件:

    ~/Library/Application Support/Claude/claude_desktop_config.json  # macOS
    ~/.config/claude/claude_desktop_config.json                      # Linux
    
  2. 将以下配置添加到 mcpServers 章节:

    {
      "mcpServers": {
        "obsidian-mcp": {
          "command": "uv",
          "args": [
            "run",
            "python",
            "/path/to/your/obsidian-mcp/main.py",
            "/path/to/your/obsidian/vault"
          ]
        }
      }
    }
    

替代配置(无紫外线)

如果你不想使用uv,你可以配置它直接用Python运行:

{
  "mcpServers": {
    "obsidian-mcp": {
      "command": "python",
      "args": [
        "/path/to/your/obsidian-mcp/main.py",
        "/path/to/your/obsidian/vault"
      ]
    }
  }
}

重要提示

  • 替换 /path/to/your/obsidian-mcp/main.py 带有main.py文件的实际路径
  • 替换 /path/to/your/obsidian/vault 带有黑曜石保管库目录的实际路径
  • 使用JSON配置时,即使在Windows上也要在路径中使用正斜杠(/)
  • 更改配置后重新启动Claude Desktop

用法

配置后,您可以要求Claude:

  • “列出我黑曜石保险库中的所有文件”
  • “显示我昨天的日记内容”
  • “查找与‘project alpha’相关的所有文件”
  • “在我的保险库中搜索所有提及“TODO”的内容”
  • “我对机器学习有什么看法?”

Claude将使用MCP服务器访问您的保管库,并根据您的实际笔记和文件提供响应。

安全

此MCP服务器提供对黑曜石保险库的只读访问。它无法创建、修改或删除文件。它会自动排除以下系统目录 .obsidian 和 .git 从访问。

发展

  • 语言:Python 3.11+
  • 框架:FastMCP
  • 依赖项:参见 pyproject.toml

开发设置

  1. 安装开发依赖项:

    uv sync --group dev
    
  2. 运行linting:

    uv run ruff check
    uv run ruff format
    

许可证

此项目在Apache License 2.0下获得许可-有关详细信息,请参阅License文件。

贡献

欢迎投稿!请随时提交拉取请求。