返回市场
麦克佩斯-黑曜石

麦克佩斯-黑曜石

作者:gregkonush6 星标更新:2025-03-10

项目介绍

MCP Obsidian

这是模型上下文协议(MCP)的一个服务器实现,用于与Obsidian集成。这使得AI助手能够读取、创建和操作你的Obsidian保险库中的笔记。

功能

  • 读取Obsidian中当前激活的文件
  • 删除当前激活的文件
  • 在特定位置插入内容(标题、块引用、元数据)
  • 追加内容到文件
  • 打开特定文件
  • 列出保险库中的文件
  • 搜索笔记

预备条件

  • Bun运行时
  • Obsidian桌面应用程序
  • 一个兼容MCP的AI助手

添加到光标

在.env文件中放置你的密钥

选择MCP命令,然后输入以下命令

bun __REPO_PATH__/src/index.ts

安装

  1. 克隆此仓库:

    git clone https://github.com/gregkonush/mcp-obsidian.git
    cd mcp--obsidian
    
  2. 安装依赖项:

    bun install
    
  3. 复制示例环境文件并进行配置:

    cp .env.example .env
    

配置

编辑.env文件以包含您的具体配置:

OBSIDIAN_BASE_URL=http://localhost:27123
OBSIDIAN_TOKEN=your_token_here
DEBUG=false

使用

启动MCP服务器:

bun run src/index.ts

服务器将启动并通过标准I/O与兼容MCP的AI助手通信。

可用工具

此实现为AI助手提供了以下工具:

  • get_active_file - 返回当前激活文件的内容
  • delete_active_file - 删除当前激活的文件
  • insert_active_file - 根据标题、块引用或元数据字段修改内容
  • append_active_file - 将内容追加到活动文件的末尾
  • open_file - 在Obsidian中打开特定文件
  • search_simple - 搜索与文本查询匹配的文档
  • list_files - 列出保险库根目录中的文件
  • list_directory_files - 列出保险库中特定目录下的文件

开发

项目结构

mcp-obsidian/
├── src/
│   ├── index.ts            # 主服务器实现
│   └── tools/              # 各个工具的实现
│       ├── get-active-file.ts
│       ├── delete-active-file.ts
│       └── ...
├── .env                    # 环境配置
├── package.json            # 项目依赖项
└── tsconfig.json           # TypeScript配置

添加新工具

要添加新工具:

  1. src/tools/目录下创建一个新的文件
  2. 使用MCP SDK实现该工具
  3. src/index.ts中导入并注册该工具

许可证

本项目采用MIT许可证 - 详情见LICENSE.md文件。

贡献

欢迎贡献!请随意提交Pull Request。