返回市场
MCP笔记服务器

MCP笔记服务器

作者:truaxki7 星标更新:2025-01-31

项目介绍

MCP 笔记服务器

smithery 徽章

这是一个用于管理笔记并具有持久存储功能的模型上下文协议(MCP)服务器实现。

<a href="https://glama.ai/mcp/servers/tg4ugmp8jr"><img width="380" height="200" src="https://gips1.baidu.com/it/u=1986991785,1217089272&fm=3081&app=3081&f=PNG?w=760&h=400" alt="笔记服务器 MCP 服务器" /></a>

特性

  • 创建、读取、更新和删除笔记
  • 使用 JSON 进行持久存储
  • 记录创建和修改的时间戳
  • 通过提示生成笔记摘要
  • 使用 note:// URI 方案进行资源访问

安装

通过 Smithery 安装

要通过 Smithery 自动安装笔记到 Claude Desktop:

npx -y @smithery/cli install notes --client claude

手动安装

  1. 确保已安装 Python 3.10 或更高版本
  2. 创建虚拟环境:
    python -m venv .venv
    
    # 在 Unix/MacOS 上:
    source .venv/bin/activate
    
    # 在 Windows 上:
    .venv\Scripts\activate
    
  3. 安装依赖项:
    pip install MCP
    

项目结构

notes/
├── __init__.py          # 包初始化
├── server.py           # 主服务器实现
├── storage.py          # 笔记持久层
├── resources.py        # 资源处理(note:// URIs)
├── prompts.py         # LLM 提示生成
└── tools/             # 服务器工具
    ├── __init__.py    # 工具包初始化
    ├── list_tools.py  # 列出工具的功能
    └── handle_tools.py # 处理工具的实现

可用工具

  • add-note: 创建新笔记
  • list-all-notes: 显示所有存储的笔记
  • update-note: 修改现有笔记
  • delete-note: 删除笔记

使用方法

  1. 启动服务器:

    mcp install src/notes
    mcp start Notes
    
  2. 示例操作:

    # 创建笔记
    await client.call_tool("add-note", {
        "name": "example",
        "content": "这是一条测试笔记"
    })
    
    # 列出所有笔记
    await client.call_tool("list-all-notes")
    
    # 更新笔记
    await client.call_tool("update-note", {
        "name": "example",
        "content": "更新的内容"
    })
    
    # 删除笔记
    await client.call_tool("delete-note", {
        "name": "example"
    })
    

存储

笔记存储在 notes_storage.json 文件中,其结构如下:

{
    "note_name": {
        "content": "笔记内容",
        "created_at": "2025-01-12T11:28:16.721704",
        "modified_at": "2025-01-12T11:28:16.721704"
    }
}

资源访问

可以使用 note:// URI 方案作为资源访问笔记:

  • 列出资源:返回所有可用笔记作为资源
  • 读取资源:使用 note://internal/note_name 访问特定笔记

提示生成

服务器包括一个用于笔记摘要的提示生成功能:

  • 支持简洁和详细的摘要
  • 格式化笔记以供语言模型输入
  • 可通过 "summarize-notes" 提示获得

开发

要修改或扩展服务器:

  1. 克隆仓库
  2. 安装开发依赖项
  3. 在适当的模块中进行更改
  4. 部署前彻底测试

测试

测试应覆盖:

  • 基本的 CRUD 操作
  • 多笔记处理
  • 错误情况
  • 资源访问
  • 提示生成

许可证

[在此添加您的许可证] </中文翻译>