Token导航 LogoToken导航TokenDH.com
MCP Server Symfony logo
开发工具未说明官方级别未说明来源级核验

MCP Server Symfony

MCP Server

基于Symfony 6和PHP构建的模型上下文协议(MCP)服务器,提供Symfony应用程序管理和PDF生成工具。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
PHPVS Code开发工具VS Code

安装说明

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

作者 / 组织

NaderZniti

提供方

NaderZniti

最后核验

2026/5/17 20:20

快速接入

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

详细介绍

Symfony MCP服务器

使用Symfony 6和PHP构建的模型上下文协议(MCP)服务器的示例,为Symfony应用程序管理和PDF生成提供AI驱动的工具。

🚀 特性

  • 缓存管理 -通过MCP工具清除Symfony缓存
  • PDF生成 -使用当前日期/时间创建PDF文档
  • HTTP传输 -使用ReactPHP HTTP服务器在Windows上工作
  • 自动发现 -从代码库中自动发现MCP工具
  • VS代码集成 -VS Code与GitHub Copilot无缝集成

📋 先决条件

  • PHP 8.1或更高版本
  • 作曲家
  • Windows(配置为HTTP传输)
  • VS代码与GitHub Copilot

🔧 安装

1.克隆存储库

git clone https://github.com/YOUR_USERNAME/mcp_app.git
cd mcp_app

2.安装依赖项

composer install

3.配置环境

复制 .env 根据需要进行文件和调整设置:

copy .env .env.local

4.在VS代码中配置MCP

将您的MCP服务器配置添加到VS代码中 mcp.json 文件。

地点: %APPDATA%\Code\User\mcp.json

{
  "servers": {
    "my-mcp-server-52ab6668": {
      "url": "http://localhost:8080/mcp/sse"
    }
  },
  "inputs": []
}

🎯 运行MCP服务器

启动服务器

php bin/mcp-server.php

您应该看到:

MCP Server is starting...
Discovering tools...
Base path: C:\wamp64\www\mcp_app
Scan dirs: src/Toolkit
Discovery complete
Starting HTTP server on http://127.0.0.1:8080/mcp/sse

保持服务器运行

服务器必须保持运行,VS Code才能与其通信。保持终端窗口打开。

🛠️ 可用的MCP工具

1.清除缓存(clear_cache)

清除开发环境的Symfony应用程序缓存。

VS代码中的用法:

  • 问GitHub Copilot:“使用clear_cache工具”
  • 或者使用命令面板:“GitHub Copilot:使用MCP工具”

例子:

User: "Clear the Symfony cache"
Copilot: [Executes clear_cache tool]

2.创建带日期的PDF(create_pdf_with_date)

创建包含当前日期和时间的PDF文档。

参数:

  • title (可选):文档的自定义标题(默认:“日期文档”)
  • content (可选):PDF中包含的其他内容

例子:

User: "Create a PDF with today's date"
Copilot: [Executes create_pdf_with_date tool]

输出位置: var/pdfs/

3.列出生成的PDF(list_generated_pdfs)

列出已生成的所有PDF文件。

例子:

User: "Show me all generated PDFs"
Copilot: [Executes list_generated_pdfs tool]

📁 项目结构

mcp_app/
├── bin/
│   ├── console              # Symfony console
│   └── mcp-server.php       # MCP server entry point
├── config/                  # Symfony configuration
├── src/
│   ├── Kernel.php
│   └── Toolkit/             # MCP Tools directory
│       ├── AbstractToolkit.php
│       ├── CacheToolKit.php
│       ├── ConsoleRunner.php
│       └── PdfToolKit.php
├── var/
│   ├── cache/               # Symfony cache
│   ├── log/                 # Application logs
│   └── pdfs/                # Generated PDF files
├── vendor/                  # Composer dependencies
└── composer.json

🔍 创建自定义MCP工具

步骤1:创建新的Toolkit类

在中创建新文件 src/Toolkit/:

 true,
            'message' => 'Tool executed successfully'
        ];
    }
}

步骤2:重新启动MCP服务器

服务器将在重新启动时自动发现您的新工具。

php bin/mcp-server.php

第三步:使用你的工具

请GitHub Copilot在VS Code中使用您的新工具!

🐛 故障排除

服务器无法启动

问题: Failed opening required autoload.php

解决方案:composer install 安装依赖项。

404连接错误

问题: VS代码显示“404状态连接到http://localhost:8080/mcp/sse"

解决方案:

  1. 确保服务器正在运行(php bin/mcp-server.php)
  2. 检查您是否正在使用 HttpServerTransport (不是 StdioServerTransport)
  3. 验证中的URL mcp.jsonhttp://localhost:8080/mcp/sse

未发现工具

问题: “发现0个工具”

解决方案:

  1. 检查您的工具包类是否在 src/Toolkit/
  2. 确保 #[McpTool] 属性仅使用有效参数: name, description, annotations
  3. 验证该类是否具有无参数构造函数,或者是否正确配置了依赖注入

Windows STDIO错误

问题: “Windows不支持STDIN和STDOUT”

解决方案: 使用 HttpServerTransport 而不是 StdioServerTransport (已在此项目中配置)。

📝 开发说明

为什么是HTTP传输?

此项目使用HTTP传输(HttpServerTransport)而不是STDIO,因为:

  • Windows上的PHP不支持STDIO传输所需的非阻塞管道
  • ReactPHP的HTTP传输提供了一种可靠的替代方案
  • SSE(服务器发送事件)支持实时通信

依赖项

关键包:

  • php-mcp/server:PHP的MCP服务器SDK
  • react/http:ReactPHP HTTP服务器
  • tecnickcom/tcpdf:PDF生成库
  • symfony/framework-bundle:Symfony框架

🤝 贡献

  1. 复刻仓库
  2. 创建要素分支(git checkout -b feature/amazing-tool)
  3. 在中创建MCP工具 src/Toolkit/
  4. 提交您的更改(git commit -m 'Add amazing tool')
  5. 推到分支(git push origin feature/amazing-tool)
  6. 打开拉取请求

📄 许可证

本项目根据专有许可证获得许可。

🔗 资源

👤 作者

你的名字- @你的博客

🙏 致谢

  • 模型上下文协议团队
  • Symfony社区
  • PHP MCP服务器贡献者

目录标签

目录标签

PHPVS Code开发工具本地部署SymfonyMCPPDF生成VSCode集成

支持客户端

VS Code

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP