收口MCP改造范围与验收记录
Project CI / AI game creator shell Rust crates (pull_request) Successful in 1m28s
Project CI / AI game creator shell Rust smoke (pull_request) Successful in 2m0s
Project CI / Backend tests (pull_request) Successful in 3m41s
Project CI / Frontend tests (pull_request) Successful in 1m50s
Project CI / Native shell tests (pull_request) Successful in 5m40s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 8m40s
Project CI / Repository checks (pull_request) Successful in 1m51s
Project CI / AI game creator shell web tests (pull_request) Successful in 1m22s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 9m17s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 1m28s
Project CI / AI game creator shell Rust smoke (pull_request) Successful in 2m0s
Project CI / Backend tests (pull_request) Successful in 3m41s
Project CI / Frontend tests (pull_request) Successful in 1m50s
Project CI / Native shell tests (pull_request) Successful in 5m40s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 8m40s
Project CI / Repository checks (pull_request) Successful in 1m51s
Project CI / AI game creator shell web tests (pull_request) Successful in 1m22s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 9m17s
更新 instructions 和 resources 的最终完成状态 补齐全工具实测、真实付费生成及最新回归结果 明确独立问题跟踪和部署后待验证范围
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# 外部 MCP 语义工具说明与参数设计
|
||||
|
||||
更新时间:`2026-09-23`
|
||||
更新时间:`2026-09-24`
|
||||
|
||||
> 文档状态:`current`(工程实现合同;仓库已增加语义工具,线上可用性以实际部署版本为准)。
|
||||
>
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
工具可以存在自然的功能交集:例如参考图快速变体同时属于生成图片和修改图片,读取画布同时服务于项目查找和布局编辑。不以工具数量或 API 唯一归属为目标,不把不相关任务硬合成一个工具。
|
||||
|
||||
本文约定工具说明、操作选择、参数和业务边界。开发者发布页、文档存储与独立发布、CLI 改造不属于本轮范围。现有 REST 路由、DTO 和运行行为保持不变,新语义工具与全部原有工具并存。
|
||||
本文约定工具说明、操作选择、参数和业务边界,以及与当前工具配套的 instructions 和 resources。开发者发布页、文档存储与独立发布、CLI 改造不属于本轮范围。现有 REST 路由、DTO 和运行行为保持不变,新语义工具与全部原有工具并存。
|
||||
|
||||
## 2. 当前实现与目标调用链
|
||||
|
||||
@@ -311,7 +311,7 @@ register_resource 只登记资源,并不自动创建画布图层。正常生
|
||||
| XIV | `check_generation` |
|
||||
| XV | `delete_resources` |
|
||||
|
||||
现有 MCP 工具和 REST API 全部保留;旧工具名称、schema、注解、调用行为和可见性不变。新工具直接追加进同一个 tools/list,不加开关、不改旧工具前缀、不设隐藏目录。更新工具说明和参数属于本轮;resources、instructions、独立 Skill、CLI、发布页与部署不属于本轮。
|
||||
现有 MCP 工具和 REST API 全部保留;旧工具名称、schema、注解、调用行为和可见性不变。新工具直接追加进同一个 tools/list,不加开关、不改旧工具前缀、不设隐藏目录。本轮包括工具说明和参数、instructions、resources 及其共用的下载 Skill 文档;独立配套 Skill、CLI、发布页与部署不属于本轮。
|
||||
|
||||
### 5.2 参数与结果
|
||||
|
||||
@@ -326,22 +326,30 @@ register_resource 只登记资源,并不自动创建画布图层。正常生
|
||||
|
||||
验证工具目录追加与旧定义一致、全部 action 路由与字段位置、必填和错分支拒绝、可选/必填幂等头、quick-edit 与普通生成入口等价、原 owner/scope 边界、结构化结果/告警和 revision 冲突透传。运行 api-server 定向测试与本地 healthz smoke;真实账号、付费 Provider 和具体 MCP 客户端尚未验证时明确记录,不能将单元测试当作线上验收。
|
||||
|
||||
### 5.4 实现与验收结果(2026-09-23)
|
||||
### 5.4 实现与验收结果(截至 2026-09-24)
|
||||
|
||||
本轮实现与本地验收完成。新增 15 个语义工具与原有 29 个工具同时可见;resources/instructions 保持原样。已完成的里程碑和实施计划收口到本节。
|
||||
本轮工具、instructions 和 resources 更新完成。新增 15 个语义工具与原有 29 个工具同时可见,7 个资源 URI 保持不变。自动回归与本地业务主路径验证通过;真实生成测试发现的两项既有合同问题已独立记录在 [Issue #495](https://git.genarrative.world/git/GenarrativeAI/Genarrative/issues/495),不在本轮修复,不能将主路径通过表述为全部合同验收通过。已完成的里程碑和实施计划收口到本节。
|
||||
|
||||
| 验证范围 | 证据与结果 |
|
||||
| --- | --- |
|
||||
| 工具与参数合同 | `cargo test --locked -p api-server external_mcp`:24 项通过,覆盖 44 个工具、31 个 action、旧定义保留、schema 展开、参数映射、错分支拒绝、必填/可选幂等和等价入口 |
|
||||
| 认证与既有 API 回归 | `cargo test --locked -p api-server external_`:155 项通过,含 MCP 内外认证、scope 拒绝、跨 owner 隔离、异步及 OpenAPI 回归 |
|
||||
| 认证与既有 API 回归 | 2026-09-24 在包含最新 master、instructions 和 resources 更新的分支上运行 `cargo test --locked -p api-server external_`:155 项通过,含 MCP 内外认证、scope 拒绝、跨 owner 隔离、异步及 OpenAPI 回归 |
|
||||
| 编译与文本检查 | `cargo check --locked -p api-server`、定向 rustfmt、文档索引、编码和 diff 检查通过 |
|
||||
| 本地服务启动 | 先通过 `npm run dev:spacetime` 启动 SpacetimeDB 2.8.3 并发布隔离数据库,再通过 `npm run dev:api-server` 启动同一目标的 API 和 worker;`/v1/ping`、`/healthz`、`/readyz` 均返回 200 |
|
||||
| MCP 真实 HTTP 链路 | 未认证返回 401;使用隔离数据库中的临时测试 API Key,initialize 成功,tools/list 返回 44 个工具且包含全部 29 个旧工具,resources/list 返回原有 7 个资源 |
|
||||
| 本地数据库读写 | 新工具创建/列表/重命名/读取/删除成功;同键重复创建返回同一项目;旧工具读写与新工具互通;重复语义读取保留完整项目;ownerUserId 额外字段被拒绝且未产生写入 |
|
||||
|
||||
运行核验使用独立测试身份和数据库,不经过真实用户登录或外部账号开通流程;测试项目已清理,临时 API Key 已撤销。最初启动未先确认数据库可用,导致连接失败;补齐数据库启动和发布后,实际 HTTP smoke 通过,无需修改业务代码。
|
||||
补充验证:
|
||||
|
||||
未验证:真实用户登录/发放 API Key 全流程、付费 Provider 生成、外部 MCP 客户端对 oneOf 参数的展示与使用、远端部署。本地验收不代表这些项目已通过。
|
||||
| 验证范围 | 证据与结果 |
|
||||
| --- | --- |
|
||||
| 全工具业务主路径 | 2026-09-23 通过本地 MCP HTTP 实测 44 个工具,全部至少一次主路径成功;15 个语义工具及其 action 均执行,含实际 OSS 上传/确认/下载、资源登记、素材整理和画布 revision 保存 |
|
||||
| 真实付费生成 | 11 个任务全部 completed,覆盖普通图、编辑、变体、抠图、图标图集、UI 提取、角色动画、视频、音效、背景音乐及旧抠图入口;验证下载、媒体解码和持久化,无 warning/sliceWarning。动画持久化为 32 帧、4000ms;图集与 UI 用例分别产生 2 张和 1 张切片。两项额外合同检查失败另见 Issue #495 |
|
||||
| instructions/resources 与下载包 | 更新后 24 项 MCP 测试、2 项 Skill 归档及 manifest 摘要测试通过;10 个 JSON 示例可解析,其中 6 个业务请求示例通过现有 OpenAPI schema 校验;Skill 格式、编码、文档索引和 diff 检查通过 |
|
||||
|
||||
运行核验使用独立测试身份和数据库,不经过真实用户登录或外部账号开通流程。初次 CRUD smoke 的测试项目和凭证已清理;后续付费全工具测试使用另一组独立凭证与产物,并在该轮结束时保留供复核,凭证不进入仓库。付费测试基于工具实现版本 `23b2a3325`;随后更新说明文档并完成合并后自动回归,未再次触发付费生成。服务当前是否运行需另行检查,本文不作为进程状态记录。
|
||||
|
||||
未验证:真实用户登录/发放 API Key 全流程、外部 MCP 客户端对 oneOf 参数的展示与使用、远端部署、多模型和全部参数组合、容量压测与完整视觉质量。UI 提取使用简单测试图片,不代表复杂 UI 多组件质量验收。合并后仍需部署 API server,并通过实际 MCP 客户端核验工具发现、调用和资源读取。
|
||||
|
||||
### 5.5 instructions 更新(2026-09-24)
|
||||
|
||||
@@ -351,7 +359,7 @@ register_resource 只登记资源,并不自动创建画布图层。正常生
|
||||
|
||||
不再要求所有任务先创建同名素材文件夹或同时写入画布与素材库。查询超时不代表生成失败,不应因此重新提交或更换幂等键。
|
||||
|
||||
权威文案位于 `external_mcp.rs` 的 `MCP_INSTRUCTIONS`,初始化响应与 `genarrative://external-editor/usage` 共用同一内容。本次仅更新该说明;其它 resources、工具、API 和独立 Skill 保持不变。
|
||||
权威文案位于 `external_mcp.rs` 的 `MCP_INSTRUCTIONS`,初始化响应与 `genarrative://external-editor/usage` 共用同一内容。该步骤只更新说明,不改变工具和 API;其它 resources 的内容更新见下一节。
|
||||
|
||||
### 5.6 resources 内容更新(2026-09-24)
|
||||
|
||||
@@ -375,4 +383,4 @@ register_resource 只登记资源,并不自动创建画布图层。正常生
|
||||
- [External 编辑器接口](../../server-rs/crates/api-server/src/external_editor_api.rs):鉴权、请求处理与生成受理。
|
||||
- [AGC 抠图模式与背景色透传](./【技术方案】AGC抠图模式与背景色透传-2026-09-16.md):去背景模式与背景色已有合同。
|
||||
|
||||
当前参数事实按 2026-09-23 的仓库内容核对;后续实现时再次以代码与 OpenAPI 为准,发现变动同步修订本文,不维护第二份脱离 API 的字段真相。
|
||||
参数合同按 2026-09-23 的实现核对,说明与验收状态于 2026-09-24 收口;后续变更仍以代码与 OpenAPI 为准,并同步修订本文,不维护第二份脱离 API 的字段真相。
|
||||
|
||||
Reference in New Issue
Block a user