异步HTTP传输服务

MCP ReactPHP Transport是一个高性能、异步、事件驱动的HTTP传输服务,专为PHP MCP SDK设计,适用于高并发环境和异步编程模型。

  • by CodeWithKyrian
  • PHP
  • 本地部署
  • 更新于
在 GitHub 查看 CodeWithKyrian/mcp-reactphp-transport

使用说明

MCP ReactPHP 传输(或传输层)

这个软件包提供了一个高性能、异步、事件驱动的HTTP传输方式,用于 官方PHP MCP SDK。

它作为一个独立的单进程服务器运行,能够处理多个并发会话以及长时间运行、多次暂停的工具调用,且不会阻塞。这使得它成为高并发环境或偏好异步编程模型的开发者的理想选择。

主要特点

  • 异步且非阻塞: 基于ReactPHP事件循环,实现卓越的I/O性能。
  • 单一过程: 作为一个持久的独立服务器运行。无需任何网络服务器(如Nginx或Apache)。
  • 多会话支持: 正确管理多个并发客户端会话的状态和Fiber生命周期。
  • 社区驱动 社区提供的一种可靠传输选项。

安装

composer require codewithkyrian/mcp-reactphp-transport

快速入门

创建您的MCP服务器脚本。这个单一的脚本将启动一个持久进程来监听HTTP请求。

server.php

<?php

declare(strict_types=1);

require_once __DIR__ . '/vendor/autoload.php';

use Mcp\Server;
use CodeWithKyrian\McpReactPhpTransport\ReactPhpHttpTransport;

$server = Server::builder()
    ->setServerInfo('ReactPHP Async Server', '1.0.0')
    ->setDiscovery(__DIR__, ['src']) // Discover tools from a local src/ dir
    ->build();

$transport = new ReactPhpHttpTransport('127.0.0.1', 8080);

$server->run($transport);

运行服务器

从终端启动服务器:

php server.php

您的MCP服务器现已运行,任何配置为连接至该服务器的MCP客户端均可访问 http://127.0.0.1:8080。

许可证

这个项目遵循MIT许可证授权——详见 许可证 详情见文件。