使用说明

项目简介

MCPhoenix 是一个基于 Elixir Phoenix 框架实现的 Model Context Protocol (MCP) 服务器。它旨在提供一个简化的 MCP 服务器示例,帮助开发者理解 MCP 协议如何在实际应用中落地。虽然可能不是功能完备的企业级解决方案,但 MCPhoenix 涵盖了 MCP 服务器的核心概念,如资源管理、工具注册和 Prompt 模板渲染,为构建 LLM 应用后端提供了一个快速入门的参考。

主要功能点

  • 资源管理: 模拟 MCP 服务器的资源托管能力,允许客户端通过标准 MCP 协议访问和检索预定义的数据资源。
  • 工具注册: 演示了如何注册和暴露外部工具,虽然可能没有实际的工具执行逻辑,但框架支持 LLM 客户端发起工具调用请求。
  • Prompt 模板: 实现了 Prompt 模板的定义和渲染,支持客户端请求获取并使用预设的 Prompt 模板与 LLM 交互。
  • JSON-RPC 通信: 基于 Phoenix 框架,使用 JSON-RPC 协议与客户端进行通信,处理资源读取、工具调用和 Prompt 获取等请求。
  • 能力声明: 服务器能够声明自身支持的 MCP 能力,使客户端能够了解服务器的功能范围。

安装步骤

  1. 环境准备: 确保已安装 Elixir 和 Phoenix Framework 开发环境。参考 Elixir 官网Phoenix 官网 完成安装。
  2. 获取代码: 使用 Git 克隆 MCPhoenix 仓库(假设仓库地址为 'https://github.com/jmanhype/MCPhoenix',请替换为实际地址):
    git clone https://github.com/jmanhype/MCPhoenix.git
    cd MCPhoenix
  3. 安装依赖: 在项目根目录下,使用 mix 命令获取项目依赖:
    mix deps.get
  4. 编译项目: 编译 Elixir 项目:
    mix compile

服务器配置

MCP 服务器需要通过启动命令和参数来运行。以下是一个示例的 JSON 格式配置,客户端需要根据此配置连接 MCPhoenix 服务器:

{
  "serverName": "MCPhoenix Server",  // MCP 服务器名称,客户端显示用
  "command": "mix",                 // 启动服务器的命令,这里使用 mix 命令
  "args": ["phx.server"]            // 启动命令的参数,phoenix 服务器启动参数
}

配置参数说明:

  • 'serverName': MCP 服务器的名称,可以自定义,用于在客户端标识不同的服务器连接。
  • 'command': 运行 MCP 服务器的命令。对于 Elixir Phoenix 项目,通常使用 'mix' 命令。
  • 'args': 传递给 'command' 的参数列表。'phx.server' 是 Phoenix 框架启动服务器的命令。

基本使用方法

  1. 启动服务器: 在 MCPhoenix 项目根目录下,运行以下命令启动服务器:

    mix phx.server

    服务器默认会在 'http://localhost:4000' 启动。

  2. 客户端连接: 配置 MCP 客户端,使用上面提供的服务器配置信息连接到 MCPhoenix 服务器。客户端应按照 MCP 协议规范,通过 JSON-RPC 向服务器发送请求,例如:

    • 请求资源列表
    • 请求特定资源内容
    • 调用已注册的工具
    • 获取 Prompt 模板

请参考 MCP 协议文档和客户端 SDK 的使用说明,构建具体的客户端请求。由于 MCPhoenix 是一个简化示例,具体 API 接口和功能可能需要参考仓库代码或联系作者获取更详细的信息。

信息

分类

AI与计算