这个项目是一个构建在 Cloudflare Worker 上的 MCP 服务器,旨在为大型语言模型 (LLM) 客户端(如 AI 助手)提供标准化的上下文信息和功能。它将交互式 UI 组件(如计算器)封装为 MCP 工具,并提供日程管理等后端服务。

主要功能点:

  • MCP 工具托管: 将前端组件(如 Remix 3 构建的交互式计算器)作为 MCP 工具托管,允许 AI 助手调用并传入初始状态。
  • 上下文管理: 为 AI 助手提供结构化的上下文信息,支持动态调整 AI 交互。
  • 数据访问与存储: 利用 Cloudflare D1 数据库存储和管理用户日程等持久化数据。
  • API 服务: 提供日程查询、保存和生成等后端 API 接口。
  • Cloudflare Worker 部署: 专为 Cloudflare 平台优化,利用 Durable Objects 实现 MCP 服务器的核心逻辑,具备高性能和可扩展性。

安装步骤:

  1. 克隆仓库: 首先,您需要将项目仓库克隆到本地:
    git clone https://github.com/alexortiz201/mcp.purpledreams.io.git
    cd mcp.purpledreams.io
  2. 安装依赖: 进入项目目录后,安装所有必要的 Node.js 依赖:
    npm install
  3. 配置 Cloudflare 账户: 确保已安装并配置 'wrangler' CLI 工具(Cloudflare Workers 的命令行工具),并已登录到您的 Cloudflare 账户。如果您还没有,请按照 Cloudflare 的官方文档进行安装和认证。
  4. 构建项目: 执行构建命令以编译前端部件(widgets)和 Cloudflare Worker 代码:
    npm run build
  5. 部署到 Cloudflare: 运行部署命令将服务器代码上传到您的 Cloudflare Workers 环境:
    npm run deploy
    部署成功后,Cloudflare 将为您提供一个可访问的 Worker URL。

服务器配置 (供 MCP 客户端参考):

MCP 客户端需要通过 JSON-RPC 协议与此服务器通信。以下是 MCP 客户端配置该服务器的参考信息,请替换其中的 'your-deployed-worker-url.workers.dev' 为您实际部署后获得的 URL:

{
  "server_name": "Purpledreams MCP Server",
  "command": "http_request", // 或适合您MCP客户端的命令,指示通过HTTP发送请求
  "args": {
    "url": "https://your-deployed-worker-url.workers.dev/mcp", // 替换为您的实际部署URL
    "method": "POST",
    "headers": {
      "Content-Type": "application/json"
    }
  },
  "protocol": "json-rpc", // 通信协议为JSON-RPC
  "transport": "http", // 或 "websocket", "sse" 等,根据实际实现和客户端需求
  "description": "连接到 Purpledreams MCP 服务器,获取日程管理和交互式计算器等功能。请将 'your-deployed-worker-url.workers.dev' 替换为实际部署的Worker URL。"
}
  • 'server_name': MCP 服务器的友好名称。
  • 'command': MCP 客户端用于连接或发送请求到服务器的指令(例如,'http_request' 表示发送 HTTP 请求)。
  • 'args.url': 部署在 Cloudflare Worker 上的 MCP 服务器的实际访问端点,通常是您的 Worker URL 加上 '/mcp' 路径。
  • 'args.method': 发送请求的 HTTP 方法,对于 JSON-RPC 通常是 'POST'。
  • 'args.headers': 请求头,'Content-Type: application/json' 是标准 JSON-RPC 请求所必需的。
  • 'protocol': 服务器支持的通信协议,本例为 JSON-RPC。
  • 'transport': 数据传输层协议,例如 HTTP。

基本使用方法:

部署完成后,LLM 客户端或 AI 助手可以向您部署的 Worker URL ('https://your-deployed-worker-url.workers.dev/mcp') 发送符合 MCP 协议的 JSON-RPC 请求,以:

  • 调用工具: 例如,发送 JSON-RPC 请求来调用内置的计算器工具,并传入 'display', 'previousValue', 'operation' 等初始状态参数,让 AI 助手能够进行交互式计算。
  • 获取资源: 发送 JSON-RPC 请求来查询或操作用户日程等持久化数据资源。
  • 获取 Prompt 模板: 动态获取服务器定义的、可定制的 LLM 交互 Prompt 模板。

具体的 JSON-RPC 请求结构和参数将根据 MCP 协议和服务器暴露的功能而定。

信息

分类

AI与计算