返回市场
黑曜石-mcp

黑曜石-mcp

作者:Sunwood-ai-labs10 星标更新:2025-01-05

项目介绍

<div align="center"> <img src="https://github.com/user-attachments/assets/58897c99-bc54-4a88-8c7a-b04233d688a1" alt="标题图片" width="800"> <h1>obsidian-mcp MCP服务器</h1> <p> <a href="https://github.com/Sunwood-ai-labs/obsidian-mcp"> <img src="https://img.shields.io/github/stars/Sunwood--ai-labs/obsidian-mcp?style=social" alt="GitHub Stars"> </a> <a href="https://github.com/Sunwood-ai-labs/obsidian-mcp/issues"> <img src="https://img.shields.io/github/issues/Sunwood-ai-labs/obsidian-mcp" alt="GitHub Issues"> </a> <a href="https://github.com/Sunwood-ai-labs/obsidian-mcp/blob/main/LICENSE"> <img src="https://img.shields.io/github/license/Sunwood-ai-labs/obsidian-mcp" alt="许可证"> </a> </p> <p> <img src="https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white" alt="TypeScript"> <img src="https://img.shields.io/badge/Node.js-339933?logo=node.js&logoColor=white" alt="Node.js"> <img src="https://img.shields.io/badge/Obsidian-7C3AED?logo=obsidian&logoColor=white" alt="Obsidian"> <img src="https://img.shields.io/badge/MCP-FF6F61?logo=data:image/svg+xml;base64,..." alt="MCP"> </p> </div>

一个与Obsidian集成的Model Context Protocol服务器

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

  • 表示Obsidian保险库内容的资源
  • 访问保险库数据的工具
  • 与Obsidian的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-infoURI访问Obsidian服务器信息
  • 获取带有元数据的保险库内容
  • 使用JSON格式便于集成

工具

  • get_vault_contents - 检索Obsidian保险库的内容
    • 接受可选参数路径(默认:根目录)
    • 返回结构化的JSON响应

API集成

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

开发

预备条件

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

设置

# 安装依赖
npm install

# 构建服务器
npm run build

# 启动自动重建的开发服务器
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 Inspector

npm run inspector

Inspector将提供一个URL,以便您在浏览器中访问调试工具。

依赖项

运行时

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

开发

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