使用说明

项目简介

MCPheonix 是一个使用 Elixir Phoenix 框架构建的 Model Context Protocol (MCP) 服务器的简化实现。它旨在作为一个智能、自愈、分布式的 AI 事件系统,通过标准化的 MCP 协议,使 AI 模型能够与应用程序数据和功能进行交互。

主要功能点

  • 资源管理: 提供简单的资源管理系统,允许服务器托管和管理各种数据资源。
  • 工具调用: 支持注册和调用外部工具,扩展 AI 模型的功能。
  • Prompt 模板: 支持 Prompt 模板的定义和渲染,虽然文档中没有明确提及,但作为 MCP 服务器的核心功能,很可能包含。
  • 实时通知: 通过 Server-Sent Events (SSE) 提供实时的服务器端事件通知。
  • JSON-RPC 接口: 提供标准的 JSON-RPC 接口,用于客户端请求和服务器响应。
  • 分布式架构: 基于 Cloudflare Durable Objects 和 Workers 构建,具备自愈和分布式特性,提高系统的可靠性和可扩展性。
  • 集成能力: 集成了 Flux (图像生成) 和 Dart (任务管理) 等工具,展示了其扩展性和集成能力。

安装步骤

  1. 克隆仓库

    git clone https://github.com/jmanhype/MCPheonix.git
    cd MCPheonix
  2. 安装依赖

    mix deps.get
  3. 配置 Cloudflare 集成 (可选) 如果需要使用 Cloudflare Durable Objects 分布式特性,请参考仓库文档配置 Cloudflare Worker 和相关环境变量。

  4. 配置 Flux 和 Dart 集成 (可选) 如果需要使用 Flux 图像生成和 Dart 任务管理集成,请参考仓库文档进行配置。

  5. 启动服务器

    mix phx.server

    服务器默认将在 'http://localhost:4001' 启动。

服务器配置

MCPheonix 服务器启动后,MCP 客户端需要配置服务器的连接信息才能进行交互。对于 MCPheonix 服务器,客户端需要配置服务器的启动命令,但由于 MCPheonix 已经是一个运行的服务器,客户端实际上不需要配置启动命令。客户端需要配置的是 MCPheonix 服务器的访问地址,通常为服务器的 URL。

例如,如果 MCPheonix 服务器运行在 'http://localhost:4001',则 MCP 客户端需要配置此 URL 作为 MCP 服务器的地址。

更具体来说,MCP 客户端可能需要配置以下信息来连接和使用 MCPheonix 服务器 (以下为 JSON 格式的配置示例,具体配置方式取决于 MCP 客户端的实现):

{
  "serverName": "mcpheonix-server",
  "serverUrl": "http://localhost:4001",
  "rpcEndpoint": "/mcp/rpc",  // JSON-RPC 端点
  "sseEndpoint": "/mcp/stream" // SSE 流端点
  // 其他可能的客户端配置,例如认证信息等
}

注意: 上述 JSON 配置仅为示例,实际 MCP 客户端的配置格式可能有所不同。 客户端需要根据自身实现,配置连接到 MCPheonix 服务器所需的地址和端点信息。 MCPheonix 服务器自身通过 'mix phx.server' 命令启动,无需客户端额外配置启动命令。

基本使用方法

MCP 客户端通过以下方式与 MCPheonix 服务器进行交互:

  • 接收实时通知: 客户端可以向 '/mcp/stream' 发送 GET 请求建立 SSE 连接,从而接收服务器推送的实时事件通知。
  • 发送 JSON-RPC 请求: 客户端可以向 '/mcp/rpc' 发送 POST 请求,并携带符合 JSON-RPC 2.0 规范的请求体,调用服务器提供的资源和工具。请求头中可以包含 'x-mcp-client-id' 用于标识客户端会话。

详细的 API 使用方法和请求/响应格式,请参考 MCP 协议规范和仓库文档。

信息

分类

AI与计算