Obsidian集成服务器

一个基于TypeScript的MCP服务器,实现与Obsidian的集成,提供访问保险库内容、工具和API集成的功能。

  • by Sunwood-ai-labs
  • TypeScript
  • 本地部署
  • 10 星标
  • 更新于
在 GitHub 查看 sunwood-ai-labs/obsidian-mcp

使用说明

obsidian-mcp MCP Server

用于黑曜石集成的模型上下文协议服务器

这是一个基于TypeScript的MCP服务器,实现了与Obsidian的集成。它通过提供以下内容展示了MCP的核心概念:

  • 代表黑曜石金库内容的资源
  • 用于访问vault数据的工具
  • API与黑名单集成

项目统计

  • 代码行数:345
  • 主要文件:
    • src/tool-handlers.ts (76行)
    • src/resource-handlers.ts (45行)
    • src/server.ts (32行)
    • src/api-client.ts (25行)

目录结构

obsidian-mcp/
├── .codegpt/
│   └── head
├── src/
│   ├── api-client.ts
│   ├── index.ts
│   ├── resource-handlers.ts
│   ├── server.ts
│   └── tool-handlers.ts
├── .SourceSageignore
├── package.json
├── README.md
└── tsconfig.json

特性

资源

  • 通过访问黑曜石服务器信息 obsidian://server-info 统一资源标识符
  • 使用元数据获取vault内容
  • JSON格式,便于集成

工具

  • get_vault_contents -检索黑曜石金库的内容
    • 将path作为可选参数(默认:根目录)
    • 返回结构化JSON响应

API集成

  • 与黑石API的安全HTTPS连接
  • 具有错误处理功能的自定义axios客户端
  • Windows路径规范化支持

发展

先决条件

  • Node.js v18+
  • TypeScript 5.3+
  • Obsidian API密钥(设置为Obsidian_API_key环境变量)

设置

# Install dependencies
npm install

# Build the server
npm run build

# Start development server with auto-rebuild
npm run watch

安装

要与Claude Desktop一起使用,请添加服务器配置:

在MacOS上: ~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "obsidian-mcp": {
      "command": "/path/to/obsidian-mcp/build/index.js",
      "env": {
        "OBSIDIAN_API_KEY": "your-api-key-here"
      }
    }
  }
}

调试

我们建议使用 MCP检查员:

npm run inspector

检查器将提供一个URL,用于访问浏览器中的调试工具。

依赖项

运行时

  • @modelcontextprotocol/sdk:MCP服务器实现
  • axios:用于API通信的HTTP客户端

发展

  • @types/node:node.js的TypeScript定义
  • typescript:typescript编译器