MCP SDK for PHP 使用说明

项目简介

MCP SDK for PHP 是一个用于构建 Model Context Protocol (MCP) 应用的PHP SDK。它基于官方Python SDK,旨在帮助开发者快速搭建符合MCP协议的客户端和服务器。该SDK提供了一套完整的工具,用于资源管理、Prompt模板渲染和工具注册,从而为LLM应用提供标准化的上下文服务。

主要功能点

  • MCP 协议完整实现: SDK 完整实现了 Model Context Protocol 规范,支持构建 MCP 客户端和服务器。
  • 资源管理: 支持 MCP 服务器托管和管理资源,为 LLM 提供数据访问能力。
  • Prompt 模板: 支持定义和渲染 Prompt 模板,实现可定制的 LLM 交互模式。
  • 工具注册与执行: 允许 MCP 服务器注册和执行工具,供 LLM 客户端调用外部功能。
  • 多种传输协议: 支持 Stdio 和 SSE 等标准传输协议,方便集成到不同应用环境。
  • 详细日志: 客户端和服务器均可启用详细日志,方便调试和问题排查。
  • Web Client: 提供一个基于 Web 的 MCP 客户端示例,方便开发者测试 MCP 服务器功能。

安装步骤

  1. 环境要求: 确保您的 PHP 环境满足以下要求:

    • PHP 8.1 或更高版本
    • 已安装 'ext-curl' 扩展
    • 推荐安装 'ext-pcntl' 扩展 (CLI 环境)
  2. 通过 Composer 安装: 在您的项目根目录下运行以下命令安装 SDK:

    composer require logiscape/mcp-sdk-php

服务器配置

对于 MCP 客户端,您需要配置连接 MCP 服务器的命令及其参数。以下是一个基于 Stdio 传输的服务器配置示例(JSON 格式):

{
  "serverName": "example-server",
  "command": "php",
  "args": ["example_server.php"],
  "description": "示例 MCP 服务器配置,通过 PHP 命令启动 example_server.php 文件",
  "notes": "请确保 example_server.php 文件路径正确,并已安装 PHP 环境"
}

配置参数说明:

  • serverName: 服务器名称,客户端用于标识服务器配置。
  • command: 启动 MCP 服务器的命令,例如 'php' 或服务器可执行文件的路径。
  • args: 传递给服务器命令的参数列表,例如服务器脚本的文件路径 '["example_server.php"]'。
  • description: (可选)服务器配置的描述信息,方便用户理解配置用途。
  • notes: (可选)配置的备注信息,例如环境要求或注意事项。

重要提示:

  • 'command' 和 'args' 配置是 MCP 客户端连接服务器的关键信息,请根据您的 MCP 服务器实际启动方式进行配置。
  • 上述配置示例假设您的 MCP 服务器是通过 PHP 脚本 'example_server.php' 实现的,并使用 'php' 命令启动。您需要根据实际情况修改 'command' 和 'args'。
  • MCP 客户端通常还支持其他传输协议,例如 WebSocket 和 SSE。如果您的 MCP 服务器使用这些协议,您需要查阅 MCP 客户端的文档,配置相应的连接参数。

基本使用方法

  1. 创建 MCP 服务器: 参考仓库 'README.md' 中的 "Creating an MCP Server" 章节,创建并运行一个简单的 MCP 服务器,例如 'example_server.php'。

  2. 创建 MCP 客户端: 参考 'README.md' 中的 "Creating an MCP Client" 章节,创建并运行一个客户端,例如 'example_client.php',连接到您创建的 MCP 服务器。

  3. 测试 Web Client: 将 'webclient' 目录下的文件上传到 Web 服务器,并确保 MCP SDK for PHP 已安装在同一目录下。通过浏览器访问 'webclient/index.php',使用 Web 界面测试 MCP 服务器的 Prompts、Tools 和 Resources 功能。

  4. 调试日志: 如果需要更详细的调试信息,可以参考 'README.md' 中的 "Advanced Logging For Debugging" 章节,启用客户端和服务器端的日志功能。

通过以上步骤,您可以快速上手使用 MCP SDK for PHP 构建和测试 MCP 应用。更详细的功能和用法,请参考 SDK 源代码和官方 MCP 文档。

信息

分类

开发者工具