Obsidian笔记管理服务

MCP Obsidian是一个基于Model Context Protocol(MCP)的服务,用于与Obsidian笔记应用集成,允许AI助手读取、创建和操作Obsidian库中的笔记。

  • by gregkonush
  • TypeScript
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 gregkonush/mcp-obsidian

使用说明

MCP黑曜石

服务器实现 模型上下文协议(MCP) 为了与 黑曜石。这允许AI助手读取、创建和操作黑曜石金库中的笔记。

特性

  • 读取黑曜石中的活动文件
  • 删除活动文件
  • 在特定位置插入内容(标题、块引用、封面)
  • 将内容附加到文件
  • 打开特定文件
  • 列出vault中的文件
  • 搜索您的笔记

先决条件

  • 包子 运行时
  • 黑曜石 桌面应用程序
  • 兼容MCP的人工智能助手

添加到光标

将您的秘密放在.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 -在黑曜石中打开特定文件
  • search_simple -搜索与文本查询匹配的文档
  • list_files -列出vault根目录中的文件
  • list_directory_files -列出vault特定目录中的文件

发展

项目结构

mcp-obsidian/
├── src/
│   ├── index.ts            # Main server implementation
│   └── tools/              # Individual tool implementations
│       ├── get-active-file.ts
│       ├── delete-active-file.ts
│       └── ...
├── .env                    # Environment configuration
├── package.json            # Project dependencies
└── tsconfig.json           # TypeScript configuration

添加新工具

要添加新工具,请执行以下操作:

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

许可证

此项目根据MIT许可证获得许可-请参阅 许可证.md 文件以获取详细信息。

贡献

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