使用说明
项目简介
Epic MCP 示例服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端示例,使用 Epic Stack 框架开发。它演示了如何将 MCP 协议集成到实际应用中,为大型语言模型 (LLM) 客户端提供标准化的上下文服务。
主要功能点
- 资源管理与访问: 通过工具提供对后端数据(例如用户数据)的访问能力。示例中实现了“查找用户”工具,可以搜索和返回用户信息。
- 工具注册与执行: 允许注册和执行工具 (Tools),暴露应用功能给 LLM。示例中展示了如何定义和注册一个工具,并使用 Zod 进行参数验证。
- SSE 传输层: 使用 Server-Sent Events (SSE) 作为 MCP 服务器和客户端之间的实时通信传输层。
- 会话管理: 支持会话管理,允许多个客户端同时连接和交互。
安装步骤
- 克隆仓库到本地:
git clone https://github.com/epicweb-dev/epic-mcp.git cd epic-mcp - 安装项目依赖:
npm install - 启动开发服务器:
npm run dev
服务器配置
MCP 客户端需要配置以下信息以连接到 Epic MCP 示例服务器。以下是一个 JSON 格式的配置示例,请根据实际情况进行调整:
{ "serverName": "epic-mcp-a25d", // MCP 服务器名称,与服务器端配置一致 "transport": { "protocol": "sse-fetch", // 使用 SSE-Fetch 传输协议 "endpoint": "/mcp" // MCP 服务器 SSE 端点路径,相对于服务器根路径 } }
配置参数说明:
- 'serverName': MCP 服务器的唯一标识名称。
- 'transport.protocol': 指定 MCP 客户端与服务器通信的传输协议,这里使用 'sse-fetch' 表示 SSE over Fetch API。
- 'transport.endpoint': 指定 MCP 服务器提供的 SSE 端点路径。客户端将通过此端点建立 SSE 连接。
基本使用方法
- 启动 Epic MCP 示例服务器后,MCP 客户端可以通过配置中提供的 'endpoint' 建立 SSE 连接。
- 客户端可以使用 MCP 协议发送 JSON-RPC 请求到服务器,例如调用已注册的工具。
- 示例服务器提供了一个名为 "Find User" 的工具,客户端可以调用此工具并传入 'query' 参数来搜索用户信息。服务器将返回包含用户信息(文本和用户头像图片,如果存在)的响应。
示例: 客户端可以发送 JSON-RPC 请求调用 "Find User" 工具,例如:
{ "jsonrpc": "2.0", "method": "callTool", "params": { "toolName": "Find User", "parameters": { "query": "kody" } }, "id": "1" }
服务器将返回包含搜索结果的 JSON-RPC 响应。
信息
分类
AI与计算