使用说明

项目简介

convex-mcp-server 是一个基于 Model Context Protocol (MCP) 的服务器示例,它使用 Convex 平台作为后端数据库。该服务器实现了一个简单的笔记系统,演示了如何通过 MCP 协议向 LLM 客户端提供资源和工具。

主要功能点

  • 资源 (Resources):
    • 将笔记托管为资源,每个笔记有唯一的 'note://' URI。
    • 支持列出和访问笔记资源,每个笔记包含标题、内容和元数据。
    • 资源以 'text/plain' 纯文本格式提供内容访问。
  • 工具 (Tools):
    • 提供 'create_note' 工具,允许客户端创建新的文本笔记。
    • 'create_note' 工具需要 'title' (标题) 和 'content' (内容) 两个参数。
    • 新创建的笔记数据存储在 Convex 云数据库中。

安装步骤

  1. 安装依赖: 确保你已经安装了 Node.js 和 npm。在仓库根目录下运行以下命令安装项目依赖:
    npm install
  2. 构建服务器: 运行以下命令构建服务器代码:
    npm run build
    构建后的服务器文件将位于 'build/index.js'。

服务器配置

要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop)配合使用,你需要配置客户端以连接到此服务器。以 Claude Desktop 为例,你需要编辑其配置文件 'claude_desktop_config.json'。

配置文件路径:

  • MacOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%/Claude/claude_desktop_config.json'

在 'claude_desktop_config.json' 文件中,添加或修改 'mcpServers' 配置项,加入以下服务器配置信息:

{
  "mcpServers": {
    "convex-mcp-server": {
      "command": "/path/to/convex-mcp-server/build/index.js"
    }
  }
}

配置参数说明:

  • '"convex-mcp-server"': 服务器名称,可以自定义,用于在客户端中标识该服务器。
  • '"command"': 必需。MCP 服务器的启动命令。请将 '/path/to/convex-mcp-server/build/index.js' 替换为 实际的 'convex-mcp-server' 项目 'build/index.js' 文件的绝对路径

注意: 此服务器默认通过标准输入/输出 (stdio) 与客户端通信,无需额外参数。

基本使用方法

  1. 确保 Convex 云平台环境已配置正确,并且 'NEXT_PUBLIC_CONVEX_URL' 环境变量已设置。
  2. 启动 MCP 客户端 (例如 Claude Desktop)。
  3. 客户端应能自动连接到配置的 MCP 服务器。
  4. 客户端可以向服务器发送 MCP 请求,例如:
    • 列出笔记资源 ('ListResourcesRequest'),客户端会收到笔记资源的列表,每个资源都有 'note://' 格式的 URI。
    • 读取指定 URI 的笔记资源 ('ReadResourceRequest'),客户端会收到笔记的内容。
    • 调用 'create_note' 工具 ('CallToolRequest') 并提供标题和内容参数,客户端可以在 Convex 数据库中创建新的笔记。

通过 MCP Inspector 工具 ('npm run inspector') 可以辅助调试和查看 MCP 服务器与客户端之间的通信。

信息

分类

生产力应用