项目简介

notes MCP server 是一个基于 Model Context Protocol 构建的示例服务器,用于演示如何使用 MCP 协议向 LLM 客户端提供上下文信息和功能。该服务器实现了一个简单的笔记管理系统。

主要功能点

  • 资源 (Resources): 提供笔记资源的管理和访问,每篇笔记通过 'note://' URI 访问。
  • Prompt 模板 (Prompts): 提供 'summarize-notes' Prompt,用于总结所有笔记内容,并支持 'style' 参数控制摘要详细程度。
  • 工具 (Tools): 提供 'add-note' 工具,允许 LLM 客户端向服务器添加新的笔记。
  • 状态管理: 服务器端维护笔记状态,并在资源变更时通知客户端。

安装步骤

该项目是一个 Python 项目,可以使用 'uv' 包管理器进行安装和管理。

  1. 确保你已经安装了 uv
  2. 克隆该仓库到本地。
  3. 在仓库根目录下,使用 'uv sync' 同步依赖并更新 lockfile。
  4. 使用 'uv build' 构建包分发文件。

服务器配置

要将 notes MCP 服务器配置到 MCP 客户端 (例如 Claude Desktop),你需要配置服务器的启动命令和参数。以下是配置示例,你需要将 '/Users/lucacriscuolo/Documents/GitHub/mcp/notes' 替换为你的本地仓库路径。

{
  "mcpServers": {
    "notes": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/lucacriscuolo/Documents/GitHub/mcp/notes",
        "run",
        "notes"
      ]
    }
  }
}

配置参数说明:

  • 'server name': 'notes' - 服务器的名称,用于在 MCP 客户端中标识和引用。
  • 'command': 'uv' - 启动服务器的命令。这里使用 'uv' 包管理器来运行 Python 项目。你需要确保你的 MCP 客户端的运行环境中可以使用 'uv' 命令。
  • 'args': 启动命令的参数列表。
    • '--directory': 指定项目根目录为 '/Users/lucacriscuolo/Documents/GitHub/mcp/notes' (请替换为你的实际仓库路径)。
    • 'run': 'uv' 命令的子命令,用于运行指定的 Python 包。
    • 'notes': 要运行的 Python 包名称,对应仓库中的 'src/notes/init.py' 文件,该文件中的 'main' 函数是服务器的入口点。

注意: 'command' 和 'args' 的具体配置可能需要根据你的 MCP 客户端和运行环境进行调整。请参考你的 MCP 客户端文档获取更详细的配置信息。

基本使用方法

  1. 启动 notes MCP 服务器 (通过 MCP 客户端配置启动)。
  2. 在 MCP 客户端中,你可以:
    • 使用 'summarize-notes' Prompt 让 LLM 总结当前所有笔记。你可以通过 'style' 参数选择 'brief' 或 'detailed' 摘要风格。
    • 使用 'add-note' 工具添加新的笔记。你需要提供 'name' 和 'content' 两个参数。
    • LLM 客户端可以通过 'note://' URI 访问和读取笔记资源。

调试服务器可以使用 MCP Inspector 工具。

npx @modelcontextprotocol/inspector uv --directory /path/to/notes/repo run notes

请将 '/path/to/notes/repo' 替换为你的 notes 仓库本地路径。

信息

分类

生产力应用