Webman MCP 插件

dev-master 版本
2025-10-15 版本更新时间
4 安装
1 star

webman-mcp

这是一个Webman框架与官方MCP PHP SDK深度集成的插件,并在SDK基础上进行了扩展,可快速创建MCP服务器。

此插件依赖于官方的MCP PHP SDK,并且在官方SDK发布第一个正式版本之前,此插件将始终标记为实验版本。

特性

  • 一键启动,安装后即可启动,同时支持配置复杂的功能。
  • 与Webman框架深度集成,HTTP支持路由模式和自定义进程模式。
  • 自动注册MCP服务到主流IDE(VSCode、Cursor、通义灵码等)
  • 支持 STDIO、HTTP 传输
  • 同步官方SDK的所有功能

安装

composer require luoyue/webman-mcp

启动方式

# 启动 MCP STDIO 服务器, mcp为服务器名称,配置文件中定义
php webman mcp:server mcp

# 启动 MCP HTTP 服务器(分为两种,一种是嵌入到路由中,另一种是自定义进程)
php webman start

快速开始

1. 创建一个具有 MCP 功能的类

<?php

namespace App\mcp;

use Mcp\Capability\Attribute\McpTool;
use Mcp\Capability\Attribute\McpResource;

class CalculatorElements
{
    /**
     * 将两个数字相加。
     * 
     * @param int $a 第一个数字
     * @param int $b 第二个数字
     * @return int 两个数字的和
     */
    #[McpTool]
    public function add(int $a, int $b): int
    {
        return $a + $b;
    }

    /**
     * 执行基本算术运算。
     */
    #[McpTool(name: 'calculate')]
    public function calculate(float $a, float $b, string $operation): float|string
    {
        return match($operation) {
            'add' => $a + $b,
            'subtract' => $a - $b,
            'multiply' => $a * $b,
            'divide' => $b != 0 ? $a / $b : '错误:除零',
            default => '错误:未知操作'
        };
    }

    #[McpResource(
        uri: 'config://calculator/settings',
        name: 'calculator_config',
        mimeType: 'application/json'
    )]
    public function getSettings(): array
    {
        return ['precision' => 2, 'allow_negative' => true];
    }
}

2. 手动配置 MCP 客户端

自动配置可直接跳过此步骤。

{
    "mcpServers": {
        "php-calculator": {
            "command": "php",
            "args": ["webman", "mcp:server", "mcp"]
        }
    }
}

3. 测试您的服务器

# 使用 MCP Inspector 测试
npx @modelcontextprotocol/inspector php webman mcp:server mcp

# 您的 AI 助手现在可以调用:
# - add: 将两个整数相加
# - calculate: 执行算术运算
# - 读取 config://calculator/settings 资源

参考文档

学习资料:

外部资源:

许可证

本项目采用 MIT 许可证 - 详情请见 LICENSE 文件。

赞助商