Repository navigation
fix(mcp): return complete structured capability catalog - #325
MatrixAdventurer wants to merge 2 commits into
Conversation
Use the same catalog as tools/list for local and remote capability calls; preserve parseable JSON text and attach structuredContent. Add discovery regressions for memory and Git tools. 由 LW 授权的 ChatGPT Business 智能体提交。
|
MOI agent follow-up (由LW授权的MOI智能体提交) CI readback — attempt 1 of run 38994335119 (head
Evidence limitation: the failed DB Tests job's log exceeds this agent toolchain's per-run retrieval budget — Action taken (2026-10-17T02:54Z): triggered a full rerun of run 38994335119; attempt 2 confirmed |
|
MOI agent follow-up (由LW授权的MOI智能体提交) Attempt-2 CI readback at 2026-10-17T03:08Z (run 38994335119, head
Evidence limitation, now confirmed at the maximum budget: a failed-log retrieval with the full 1,048,576-byte allowance against run 38994335119 returned zero extractable content ( Assessment: after rebase + one rerun, DB Tests has failed twice consecutively while Unit/Clippy stay green; this is currently treated as likely a real failure (or an environment-level DB issue on the runner), not a flake that further blind reruns would clear. No further rerun is queued by this agent this window; follow-up will instead target the job's own diagnostics the moment a surface that can read them is available. No merge/close/branch-target actions. |
|
The incomplete hardcoded catalog is a real issue, and the shared catalog / matching JSON text and structuredContent implementation looks correct. However, this PR needs a test update before it is ready. [P2, test] Update both existing capabilities integration tests for the new response contract. The response change at
Please update these existing tests to parse the JSON, compare text and structuredContent against the advertised tool catalog, and check trust-tier guidance in the memory_store schema. Preserve exclusion checks for genuinely unadvertised debug tools. Keep the result parseable; do not restore the old prose suffix just to satisfy the old assertion. Then rerun the DB suite and its remaining regression steps. Validation at 894b8eb: all 45 MCP library unit tests passed locally. A temporary no-database reproduction through the actual RemoteClient confirmed the new response exactly matches the public catalog, while the three legacy checks above fail. I did not run the full MatrixOne integration suites locally; the upstream failure was verified from its log. All three changed files were reviewed (3/3, none skipped); no additional implementation findings. Issue-scope clarification: plain TextContent is allowed by the MCP specification. The confirmed problem is incomplete, non-machine-readable capability discovery; I did not find an 80-character response truncation in this implementation. |
|
由 LW 授权的 ChatGPT Personal 智能体提交。 本轮回访并核对了 @loveRhythm1990 的评审意见、当前 PR 的全部 3 个文件 diff,以及 main 本任务每个完整 PR(含后续修订)最多 3 个文件。当前 PR 已修改 tools.rs、remote.rs、server.rs;直接补齐 api_e2e.rs 与 core_tools_e2e.rs 会达到 5 个文件。即使撤回 server.rs 的 catalog helper 改动,保留正确的 embedded/remote 行为并更新这两处集成测试仍需至少 4 个文件。因此当前交付受此范围门禁阻塞;本轮未修改或推送该 PR,也不通过移除必要测试或恢复旧 prose 来规避限制。保留 draft,等待仓库方按完整修复范围接续;这不是测试或独立审核通过的声明。 只读核验主体为以上智能体。另在当前 main 实际运行 Python SDK 单测:471 passed(Python 3.12.14,HTTPX 0.28.1),该结果不覆盖此 Rust MCP PR,也不能代替其失败的 DB/集成测试。 补充同轮离线验证:Hermes 插件在固定宿主 |
What type of PR is this?
Which issue(s) this PR fixes
Fixes #213
What this PR does / why we need it
memory_capabilitiescurrently returns a partial, hardcoded prose list. A JSON parser fails and the list does not match actual advertised tools.structuredContentcarrying the same{"tools":[...]}representation.tools/listentrypoint, including Git-backed tools; both embedded and remote modes use the same result.Changes are limited to three files. No authorization, storage, database, or execution flow was changed.
Verification and limitations
mainatcf682a0376fb4fee6f6ac44c4acfcc147cb871e2.memoria/crates/memoria-mcp/src/{tools,remote,server}.rs.make check,make test-unit, and independent review are pending. No claim of successful unit/integration tests is made.由 LW 授权的 ChatGPT Business 智能体提交。