该项目是一个MCP(Model Context Protocol)服务器的参考实现,旨在展示如何在Cloudflare Workers环境中托管和运行MCP服务,并集成OAuth认证流程。它实现了一个简单的数学计算工具,并通过SSE(Server-Sent Events)作为传输协议与MCP客户端进行通信。
主要功能点:
- MCP服务托管: 在Cloudflare Workers上运行标准的MCP服务器逻辑。
- 工具注册与执行: 注册并提供给LLM客户端调用的工具,例如一个简单的加法工具。
- SSE传输支持: 通过Server-Sent Events协议与客户端通信,传递JSON-RPC消息。
- OAuth认证集成: 包含一个基于Web的OAuth流程,用于授权LLM客户端访问服务器。
安装步骤:
- 克隆包含该项目的仓库: 'git clone [email protected]:cloudflare/ai.git'
- 进入项目目录: 'cd ai'
- 安装项目依赖: 'npm install'
- 在本地开发模式下运行服务器: 'npx nx dev remote-mcp-server' 服务器将在 'http://localhost:8787/' 运行。
服务器配置(供MCP客户端使用):
MCP客户端(如Claude Desktop)需要知道如何连接并启动该MCP服务器。配置信息通常包含服务器的标识、启动命令及其参数。对于此服务器,您可以告诉客户端使用 Anthropic 提供的 'mcp-remote' 工具作为中继,并指定服务器的访问URL。
客户端配置需要指定:
- 服务器名称(例如:'math',这是一个用户定义的名称)
- 客户端用于启动服务器或连接中继的命令(例如:'npx',用于执行Node.js包)
- 传递给命令的参数列表(例如:'mcp-remote',然后是服务器的端点URL)
例如,连接到本地运行的服务器时,客户端的配置参数将指向 'npx mcp-remote http://localhost:8787/sse'。连接到部署在Cloudflare Workers上的服务器时,参数将指向 'npx mcp-remote https://[您的worker名称].[您的账号名称].workers.dev/sse'。
基本使用方法:
- 按照上述步骤运行服务器(本地或部署到Cloudflare)。
- 启动一个兼容MCP的客户端,例如MCP Inspector或Claude Desktop。
- 在客户端配置中,添加一个新的MCP服务器连接。
- 选择 SSE 作为传输协议。
- 输入服务器的完整URL,例如 'http://localhost:8787/sse'(本地)或您的Worker URL(部署后)。
- 客户端将尝试连接并可能重定向到浏览器,以完成服务器集成的OAuth认证流程。
- 认证成功后,客户端将连接到MCP服务器,并可以发现和调用注册的工具(例如 'add' 工具)。
信息
分类
AI与计算