survos/mcp-bundle
Composer 安装命令:
composer require survos/mcp-bundle
包简介
Exposes a Survos app to AI coding agents as MCP tools (via symfony/ai-mate). Tools are thin wrappers over existing console exports (meta:export, atlas:export, dataset:*), giving agents a queryable view of the app's declared metadata graph and its dataset workflows.
README 文档
README
Exposes a Survos application to AI coding agents as MCP tools, via symfony/ai-mate.
The goal: when an agent is asked to "design a dashboard for a tenant" or
"show me how to display this entity's fields", it can query the app's declared
metadata (field-bundle #[Field] / #[RouteMeta] / #[RouteIdentity], atlas's
route/entity graph) instead of guessing from variable names — and it can drive
dataset workflows (dataset:head, import:convert) by intent.
Status: repurposed scaffold (2026-06). This bundle previously held an experimental MCP client (JSON-RPC over Symfony HttpClient). That code was removed: the official
mcp/sdkMcp\Clientfully supersedes it (typed results, cursor pagination, progress callbacks, HTTP and stdio transports, and it accepts a PSR-18 client — so you can still pass Symfony'sPsr18Client). The bundle now goes the other direction: it provides tools to an agent. See PLAN.md for the full design and build steps.
Architecture
- Transport = ai-mate. This bundle declares
extra.ai-mate.scan-dirs: ["src/Mcp"]and ships#[McpTool]classes (Mcp\Capability\Attribute\McpTool, frommcp/sdk). - Tools wrap existing exports — they don't reinvent them.
meta:export(field-bundle) andatlas:export(atlas-bundle) already emit the metadata graph; the dataset commands already exist. MCP tools call them. - Why wrappers, not services: ai-mate builds its own standalone container and
never boots the app kernel, so a
#[McpTool]cannot autowire app compile-time services (EntityMetaRegistry,DatasetResolver, …). Each tool therefore runsbin/console <command> --format=jsonviasymfony/processand returns the parsed JSON. The in-app console command is the real engine.
Tools (planned — see PLAN.md)
| Tool | Wraps | Answers |
|---|---|---|
describe_entity |
meta:export --entity --fields |
fields, facets, widgets, URL identity for displaying an entity |
routes_for_entity |
meta:export --entity |
routes by Purpose — "design a dashboard for a tenant" |
find_routes_injecting |
meta + atlas | routes that inject an entity (declared + inferred candidates) |
suggest_pages |
meta:export gaps |
missing routes worth adding |
atlas_attributes / atlas_query |
atlas:export |
the raw attribute/route/entity map |
dataset_head / dataset_list / dataset_convert |
dataset:* / import:convert |
dataset workflows by intent |
survos_command |
any bin/console |
generic long-tail fallback |
Installation
composer require survos/mcp-bundle
Then, in the host app: register the bundle, run vendor/bin/mate discover, and
enable the extension in mate/extensions.php. Verify with
vendor/bin/mate debug:capabilities --format=json.
Requires
PHP 8.4+, Symfony 8.1+. Extends Survos\Kit\AbstractSurvosBundle.
survos/mcp-bundle 适用场景与选型建议
survos/mcp-bundle 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 29 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 15 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「symfony」 「metadata」 「tooling」 「Agent」 「ai」 「mcp」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 survos/mcp-bundle 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 survos/mcp-bundle 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 survos/mcp-bundle 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
The bundle for easy using json-rpc api on your project
Firefly III Data Import Tool.
Bundle Symfony DaplosBundle
Yii2 Component to manage SEO data and metadata
Extremely simple meta tag generator.
PHP CS Fixer w/ additional fixers based off of permafrost-dev/phpcsfixer-preset
统计信息
- 总下载量: 29
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 24
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-09-15