项目简介
本仓库实现了一个基于 Model Context Protocol (MCP) 的简单服务器,用于演示 MCP 协议的核心概念。该服务器提供了一个笔记系统,允许用户通过 LLM 客户端创建、管理和访问文本笔记。
主要功能点
-
资源 (Resources):
- 以 'note://' URI 格式管理和访问文本笔记。
- 每篇笔记包含标题、内容和元数据。
- 支持纯文本 MIME 类型,方便内容访问。
-
工具 (Tools):
- 'create_note': 创建新的文本笔记。
- 接受标题和内容作为必需参数。
- 将笔记存储在服务器状态中。
- 'create_note': 创建新的文本笔记。
-
Prompt 模板 (Prompts):
- 'summarize_notes': 生成所有已存储笔记的摘要。
- 将所有笔记内容作为嵌入资源包含在内。
- 返回结构化的 Prompt,用于 LLM 摘要生成。
- 'summarize_notes': 生成所有已存储笔记的摘要。
安装步骤
-
安装 Node.js 和 npm: 确保您的系统已安装 Node.js 和 npm (Node 包管理器)。
-
安装依赖: 克隆仓库到本地后,在项目根目录下运行以下命令安装项目依赖:
npm install -
构建服务器: 运行以下命令编译 TypeScript 代码并构建服务器:
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'
在配置文件中,添加 'mcpServers' 字段并配置您的服务器。以下是一个配置示例:
{ "mcpServers": { "notesServer": { // 服务器名称,可以自定义 "command": "/path/to/gamingTest/build/index.js" // 指向服务器入口文件 index.js 的路径,请替换为实际路径 } } }
配置参数说明:
- server name: 'notesServer' 是您为此服务器自定义的名称,在客户端中用于标识和选择该服务器。
- command: '/path/to/gamingTest/build/index.js' 是服务器的启动命令。您需要将 '/path/to/gamingTest' 替换为 仓库在您本地的实际路径。
注意: 'args' 字段在此示例中为空,因为此简单的笔记服务器可能不需要额外的启动参数。如有需要,您可以在 'args' 字段中添加参数数组。
基本使用方法
-
启动服务器: MCP 服务器通常在客户端请求时自动启动。您无需手动运行服务器,只需确保配置的 'command' 路径正确即可。
-
在 MCP 客户端中使用: 配置完成后,您可以在 MCP 客户端中连接到名为 'notesServer' 的服务器。客户端将通过 JSON-RPC 协议与服务器通信,利用服务器提供的资源、工具和 Prompt 模板来增强与 LLM 的交互体验。
-
调试: 如果遇到问题,可以使用 MCP Inspector 进行调试。运行命令 'npm run inspector' 启动 Inspector,它将提供一个 URL 供您在浏览器中访问调试工具。
通过以上步骤,您就可以成功配置和使用 Notes MCP 服务器,体验基于 MCP 协议的上下文服务。
信息
分类
生产力应用