Token导航 LogoToken导航TokenDH.com
Composer Scripts MCP Server logo
AI代理未说明官方级别未说明来源级核验

Composer Scripts MCP Server

MCP Server

一个PHP库,将项目的Composer脚本作为MCP工具暴露,使AI助手能够自动发现和执行这些脚本。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
PHPClaude自动化Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

VoDmAl

提供方

VoDmAl

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

VoDmAl编辑器脚本MCP服务器

一个PHP库,将项目的Composer脚本作为MCP(模型上下文协议)工具公开。安装后,AI助手(或任何MCP客户端)可以自动发现并执行您的Composer脚本,无需每次解释命令。

这适用于 任何PHP项目,您可以连接 多个项目 没有限制。每个项目的MCP工具名称都是从其 composer.json (例如 "name" 现场)。

为什么要使用Composer脚本?

Composer脚本允许您标准化和自动化常见任务(测试、linting、代码生成等),而无需添加额外的依赖关系。主要好处包括:

  • 零额外依赖:脚本在以下情况下立即工作 composer install.
  • 接口:无论操作系统或本地设置如何,每个团队成员都使用相同的命令。
  • 自我记录工作流程:您的 composer.json 兼作可用命令的文档。
  • 跨平台:脚本在macOS、Linux和Windows上统一运行。

虽然这种方法有很多优点,但也有一些局限性:

  • 您需要记住每个项目的特定脚本名称
  • 复杂的脚本链可能比独立工具更难调试
  • 性能可能比本机二进制文件稍慢

尽管有这些小缺点,但命令在使用后立即可用的便利性 composer install 没有额外的外部依赖性是一个显著的优势。这就是这个工具的用武之地——它允许人工智能助手发现并执行你的Composer脚本,而无需你每次解释命令。

真实世界示例

以下是一个示例,展示了Composer脚本在实际项目中的强大功能:

"scripts": {
    "check:before:commit": [
        "@test",
        "@check:code:style",
        "@check:code:static",
        "@check:code:dependency"
    ],
    "check:before:push": [
        "@check:config",
        "@check:before:commit",
        "@check:code:security"
    ],
    "check:code:static": [
        "@check:code:lint",
        "@rector",
        "@psalm",
        "@phpstan",
        "@classleak",
        "@check:code:comments"
    ],
    "test": [
        "@test:unit:phpunit"
    ],
    "test:unit:phpunit": [
        "@phpunit --testsuite Unit"
    ],
    "phpunit": "./vendor/bin/phpunit"
}

使用这些脚本,开发人员可以在提交或推送代码之前使用简单的命令进行全面的检查,例如 composer check:before:commitMCP服务器将这些脚本暴露给AI助手,使他们能够理解和执行相应的命令,而无需每次解释项目的特定测试或验证过程。

这种方法的最大优点之一是,您不需要反复向每个LLM解释如何运行测试、检查代码风格或执行其他常见的开发任务。相反,LLM可以通过MCP服务器发现可用命令,并为手头的任务建议适当的命令。这节省了时间,减少了在PHP项目上使用AI助手时的摩擦。

特性

通过安装 VoDmAl编辑器脚本MCP服务器,您将获得两大优势:

  1. 自动发现 将项目中的所有Composer脚本作为MCP工具。
  2. 一步集成 借助人工智能助手(例如Claude Desktop),他们可以列出并运行任何脚本,而无需手动设置。
  • 自动从Composer.json读取Composer脚本
  • 将脚本作为MCP工具公开,以便发现和执行
  • 支持stdio和HTTP传输
  • 与任何PHP项目简单集成
  • 安装后自动将脚本添加到项目的composer.json中

需求

  • PHP 8.1或更高版本
  • 作曲家
  • php-mcp/server ^2.1

简单的安装和自动设置

要开始,请运行:

composer require vodmal/composer-scripts-mcp-server
composer install

Composer完成后,您的项目的Composer.json将包含两个新脚本:

"scripts": {
    "mcp:server:start": "vendor/bin/mcp-server-start",
    "mcp:server:install": "vendor/bin/mcp-server-install"
}

你现在有你需要的一切。您不需要立即运行composer mcp:server:start。相反,如果你想与Claude Desktop(或任何兼容MCP的LLM)集成,请运行:

composer mcp:server:install

如果安装了Claude Desktop并检测到其配置文件,则此命令会自动合并MCP配置。

如果它没有找到Claude的配置,它会打印出一个JSON代码段。将该代码片段粘贴到“工具”下的claude_config.json中,然后重新启动claude。

连接到任意数量的项目 您可以在每个PHP项目文件夹中无限制地运行composer mcp:server:install。每个项目的工具名称都是从其自己的composer.json“name”字段中提取的,因此多个项目在Claude的工具列表中清晰可见。

如果你不使用克劳德 正在运行:

composer mcp:server:install

将输出一个JSON块,显示如何启动MCP服务器。将其复制到您需要的任何LLM或MCP客户端配置中。配置后,您的AI助手可以调用composer_list和composer_run MCP方法,而无需进一步设置。

高级手动配置和启动

使用stdio传输

要使用stdio传输启动服务器(用于与AI助手集成):

vendor/bin/mcp-server-start

使用HTTP传输

要使用HTTP传输启动服务器(用于客户端测试):

vendor/bin/mcp-server-start --http [--host=] [--port=
]

默认情况下,服务器将侦听 127.0.0.1:8088.

与Claude Desktop集成

要将此MCP服务器与Claude Desktop集成,您可以使用提供的 mcp-server-install 命令:

vendor/bin/mcp-server-install

此命令将自动检测您的操作系统并搜索Claude Desktop配置文件。如果找到,它将更新它以包括MCP服务器配置。如果未找到,它将输出您需要手动与Claude Desktop配置文件合并的配置。服务器将自动将项目中的所有Composer脚本作为MCP工具公开。

命令选项

  • --output=:指定自定义输出文件(默认情况下,该命令将尝试为您的操作系统查找Claude Desktop配置文件)
  • --name=:指定服务器名称(默认:composer.json中的项目名称)

多个服务器

如果你有多个安装了此库的PHP项目,你可以将每个项目添加到同一个配置文件中:

# In project1
vendor/bin/mcp-server-install --name=project1

# In project2
vendor/bin/mcp-server-install --name=project2 --output=/path/to/claude_desktop_config.json

使用配置

  1. 完全重新启动克劳德桌面
  2. 重新启动后,您应该在输入框的左下角看到一个滑块图标
  3. 点击滑块图标查看可用工具(您的Composer脚本)
  4. 现在,您可以让Claude运行任何Composer脚本

故障排除

如果服务器未被Claude Desktop接收:

  1. 确保Claude Desktop是最新版本
  2. 检查配置文件语法是否正确
  3. 验证配置中的文件路径是否有效且绝对(非相对)
  4. 查看日志,了解服务器未连接的原因:

- macOS: ~/Library/Logs/Claude - 窗户: %APPDATA%\Claude\logs

  1. 尝试手动运行服务器,查看是否出现任何错误:
   vendor/bin/mcp-server-start
注: 在LLM应用程序中使用stdio传输时,所有日志消息都会写入stderr而不是stdout。这可以防止日志消息干扰服务器和LLM应用程序之间的JSON通信,这可能会导致JSON解析错误。

可用的MCP工具

该库提供以下MCP工具:

堆肥列表

列出所有可用的Composer脚本。

参数:

退货:

  • scripts:脚本信息数组(名称和命令)
  • count:可用脚本的数量

composer_run

运行Composer脚本。

参数:

  • script (string,必填):要运行的脚本的名称
  • arguments (array,可选):传递给脚本的其他参数

退货:

  • script:运行的脚本的名称
  • command:执行的命令
  • output:命令的输出
  • return_code:命令的返回代码
  • success:命令是否成功(返回代码0)

许可证

该项目具有双重许可:

开源许可

本项目根据GNU通用公共许可证v3.0(GPL-3.0)获得开源使用许可。请参阅 许可证-PL 文件以获取详细信息。

商业许可证

对于专有软件的商业用途,可以使用单独的商业许可证。联系\[电子邮件\]了解商业许可条款。

许可证摘要

  • GPL-3.0:对同时获得GPL-3.0许可的开源项目免费
  • 商业的:不受GPL限制的专有/商业用途的付费许可证

如果您不确定哪种许可证适用于您的用例,请联系我们。

目录标签

目录标签

PHPClaude自动化本地部署PHP开发自动化工具AI集成Composer脚本MCP协议

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP