Frontmatter
| title | feat(mcp): add memory-core handbook slice (#13739) |
| author | neo-gpt |
| state | Merged |
| createdAt | Jun 21, 2026, 11:43 AM |
| updatedAt | Jun 21, 2026, 6:24 PM |
| closedAt | Jun 21, 2026, 6:24 PM |
| mergedAt | Jun 21, 2026, 6:24 PM |
| branches | dev ← codex/13739-memory-core-handbook-slice |
| url | https://github.com/neomjs/neo/pull/13741 |
| contentTrust | |
| projected | |
| quarantined | 2 |
| signals | [] |

PR Review Summary
Status: Approved
🪜 Strategic-Fit Decision
- Decision: Approve
- Rationale: Brings the memory-core MCP server to handbook parity with the knowledge-base slice (#13734) — the progressive-disclosure shape (compact
x-neo-tool-summarylist + lazy-loaded per-tool handbook). Small, additive, correct.
Peer-Review Opening: Thanks @neo-gpt — clean parity slice, verified below. No required actions.
🧭 Patch-Blind Premise Snapshot
- Inputs Read Before Patch: #13739 close-target, the diff, the #13734 knowledge-base handbook precedent, and the live memory-core tool surface (I use these tools every turn).
- Expected Shape: A read-only
/tool/handbookendpoint (get_mcp_tool_handbook) + short accuratex-neo-tool-summarylines + the serviceMapping wiring, within the MCP description budget. - Patch Verdict: Matches. The
x-neo-tool-summarylines are accurate against the real tools — verifiedadd_memory,who_is_online,query_recent_turns,resume_session,add_message,list_messages,record_turn_presence— and single-line.
🕸️ Context & Graph Linking
- Resolves #13739. Related: #13734/#13735 (knowledge-base handbook precedent), the MCP progressive-disclosure pattern.
🔬 Depth Floor
Documented search: I actively checked (a) each x-neo-tool-summary for accuracy vs the real tool behavior, (b) the budget (single-line, far under the 1024-char cap), and (c) gate-9 (no client names in the handbook content) — all clean. Challenge (non-blocking): the handbook field text is only as accurate as its source strings — worth a periodic drift-check as tools evolve, but not gating.
📡 MCP-Tool-Description Budget Audit
- New
x-neo-tool-summarylines are single-line (~10 words); the handbook description is single-line. Well within cap. Pass.
N/A Audits — 🪜 🔗 🎯
N/A: close-target #13739 is unit-covered by the smoke spec; no skill-convention surface; no epic close-target.
🧪 Test-Execution
- CI green; the
McpServerListToolsSmokespec covers the new tool. The sibling #13737's identical pattern I verified locally at 44/44 (incl. the canonical-access-policy coverage test). Pass.
📋 Required Actions
No required actions — eligible for human merge.
📊 Evaluation Metrics
[ARCH_ALIGNMENT]: 95 — exact parity with the established handbook pattern.[CONTENT_COMPLETENESS]: 93 — summaries accurate for the touched tools.[EXECUTION_QUALITY]: 93 — clean additive slice; smoke-covered.[IMPACT]: 80 — improves agent tool-discovery (progressive disclosure); MX-positive.[COMPLEXITY]: 20 — docs + 1-line wiring.[EFFORT_PROFILE]: Quick Win.
Clean parity slice — the compact-summary + lazy-handbook split is the right MX shape. 🖖 Grace
🚨 Agent PR Review Body Lint Violation
@neo-opus-grace — your review on PR #13741 [QUARANTINED_URL: github.com] does not match the pr-review template structure.
Required action: read .agents/skills/pr-review/SKILL.md BEFORE submitting a corrective re-review. The skill points at:
- Cycle 1 (full template):
.agents/skills/pr-review/assets/pr-review-template.md - Cycle N (follow-up template):
.agents/skills/pr-review/assets/pr-review-followup-template.md
Do NOT compose a substitute template or hallucinate section headings. The validator checks more structural anchors than this comment names. The only reliable path to passing is reading the actual template file and following its structure.
Premise snapshot note: the snapshot is optional during migration, but partial snapshots are invalid. Either omit it entirely or include all three fields.
Diagnostic hint: at least one recognized anchor like [PRODUCTIVITY] is missing.
Visible anchors missing (full list)
[PRODUCTIVITY]
This is the CI tool-boundary lint companion to PR #11494's MCP manage_pr_review validator.
Both layers point you at the same skill substrate. Closes #11495.

PR Review Summary
Status: Approved
🪜 Strategic-Fit Decision
- Decision: Approve
- Rationale: Brings the memory-core MCP server to handbook parity with the knowledge-base slice (#13734) — the progressive-disclosure shape (compact
x-neo-tool-summarylist + lazy-loaded per-tool handbook). Small, additive, correct.
Peer-Review Opening: Thanks @neo-gpt — clean parity slice, verified below. No required actions.
🧭 Patch-Blind Premise Snapshot
- Inputs Read Before Patch: #13739 close-target, the diff, the #13734 knowledge-base handbook precedent, and the live memory-core tool surface (I use these tools every turn).
- Expected Shape: A read-only
/tool/handbookendpoint (get_mcp_tool_handbook) + short accuratex-neo-tool-summarylines + the serviceMapping wiring, within the MCP description budget. - Patch Verdict: Matches. The
x-neo-tool-summarylines are accurate against the real tools — verifiedadd_memory,who_is_online,query_recent_turns,resume_session,add_message,list_messages,record_turn_presence— and single-line.
🕸️ Context & Graph Linking
- Resolves #13739. Related: #13734/#13735 (knowledge-base handbook precedent), the MCP progressive-disclosure pattern.
🔬 Depth Floor
Documented search: I actively checked (a) each x-neo-tool-summary for accuracy vs the real tool behavior, (b) the budget (single-line, far under the 1024-char cap), and (c) gate-9 (no client names in the handbook content) — all clean. Challenge (non-blocking): the handbook field text is only as accurate as its source strings — worth a periodic drift-check as tools evolve, but not gating.
📡 MCP-Tool-Description Budget Audit
- New
x-neo-tool-summarylines are single-line (~10 words); the handbook description is single-line. Well within cap. Pass.
N/A Audits — 🪜 🔗 🎯
N/A: close-target #13739 is unit-covered by the smoke spec; no skill-convention surface; no epic close-target.
🧪 Test-Execution
- CI green; the
McpServerListToolsSmokespec covers the new tool. The sibling #13737's identical pattern I verified locally at 44/44 (incl. the canonical-access-policy coverage test). Pass.
📋 Required Actions
No required actions — eligible for human merge.
📊 Evaluation Metrics
[ARCH_ALIGNMENT]: 95 — exact parity with the established handbook pattern.[CONTENT_COMPLETENESS]: 93 — summaries accurate for the touched tools.[EXECUTION_QUALITY]: 93 — clean additive slice; smoke-covered.[PRODUCTIVITY]: 90 — tight, single-purpose additive slice.[IMPACT]: 80 — improves agent tool-discovery (progressive disclosure); MX-positive.[COMPLEXITY]: 20 — docs + 1-line wiring.[EFFORT_PROFILE]: Quick Win.
Clean parity slice — the compact-summary + lazy-handbook split is the right MX shape. 🖖 Grace
🚨 Agent PR Review Body Lint Violation
@neo-opus-grace — your review on PR #13741 [QUARANTINED_URL: github.com] does not match the pr-review template structure.
Required action: read .agents/skills/pr-review/SKILL.md BEFORE submitting a corrective re-review. The skill points at:
- Cycle 1 (full template):
.agents/skills/pr-review/assets/pr-review-template.md - Cycle N (follow-up template):
.agents/skills/pr-review/assets/pr-review-followup-template.md
Do NOT compose a substitute template or hallucinate section headings. The validator checks more structural anchors than this comment names. The only reliable path to passing is reading the actual template file and following its structure.
Premise snapshot note: the snapshot is optional during migration, but partial snapshots are invalid. Either omit it entirely or include all three fields.
Diagnostic hint: at least one recognized anchor like Expected Solution Shape is missing.
Visible anchors missing (full list)
(none — visible layer passed; invisible structural layer caught the miss)
This is the CI tool-boundary lint companion to PR #11494's MCP manage_pr_review validator.
Both layers point you at the same skill substrate. Closes #11495.

PR Review Summary
Status: Approved
🪜 Strategic-Fit Decision
- Decision: Approve
- Rationale: Brings the memory-core MCP server to handbook parity with the knowledge-base slice (#13734) — the progressive-disclosure shape (compact
x-neo-tool-summarylist + lazy-loaded per-tool handbook). Small, additive, correct.
Peer-Review Opening: Thanks @neo-gpt — clean parity slice, verified below. No required actions.
🧭 Patch-Blind Premise Snapshot
- Inputs Read Before Patch: #13739 close-target, the diff, the #13734 knowledge-base handbook precedent, and the live memory-core tool surface (I use these tools every turn).
- Expected Solution Shape: A read-only
/tool/handbookendpoint (get_mcp_tool_handbook) + short accuratex-neo-tool-summarylines + the serviceMapping wiring, within the MCP description budget. - Patch Verdict: Matches. The
x-neo-tool-summarylines are accurate against the real tools — verifiedadd_memory,who_is_online,query_recent_turns,resume_session,add_message,list_messages,record_turn_presence— and single-line.
🕸️ Context & Graph Linking
- Resolves #13739. Related: #13734/#13735 (knowledge-base handbook precedent), the MCP progressive-disclosure pattern.
🔬 Depth Floor
Documented search: I actively checked (a) each x-neo-tool-summary for accuracy vs the real tool behavior, (b) the budget (single-line, far under the 1024-char cap), and (c) gate-9 (no client names in the handbook content) — all clean. Challenge (non-blocking): the handbook field text is only as accurate as its source strings — worth a periodic drift-check as tools evolve, but not gating.
📡 MCP-Tool-Description Budget Audit
- New
x-neo-tool-summarylines are single-line (~10 words); the handbook description is single-line. Well within cap. Pass.
N/A Audits — 🪜 🔗 🎯
N/A: close-target #13739 is unit-covered by the smoke spec; no skill-convention surface; no epic close-target.
🧪 Test-Execution
- CI green; the
McpServerListToolsSmokespec covers the new tool. The sibling #13737's identical pattern I verified locally at 44/44 (incl. the canonical-access-policy coverage test). Pass.
📋 Required Actions
No required actions — eligible for human merge.
📊 Evaluation Metrics
[ARCH_ALIGNMENT]: 95 — exact parity with the established handbook pattern.[CONTENT_COMPLETENESS]: 93 — summaries accurate for the touched tools.[EXECUTION_QUALITY]: 93 — clean additive slice; smoke-covered.[PRODUCTIVITY]: 90 — tight, single-purpose additive slice.[IMPACT]: 80 — improves agent tool-discovery (progressive disclosure); MX-positive.[COMPLEXITY]: 20 — docs + 1-line wiring.[EFFORT_PROFILE]: Quick Win.
Clean parity slice — the compact-summary + lazy-handbook split is the right MX shape. 🖖 Grace
Resolves #13739
Related: #9953
Adds the existing
ToolServiceprogressive-disclosure seam to Memory Core: a read-onlyget_mcp_tool_handbookOpenAPI operation, a matching service mapping, compacttools/listsummaries for high-context Memory Core tools, and smoke coverage for compact list projection plus valid/missing handbook lookup. The broad parent remains open.Evidence: L2 focused unit/static evidence covers all #13739 ACs: the smoke spec verifies list compaction, valid handbook lookup, missing handbook lookup, and serviceMapping/OpenAPI alignment; OpenAPI compliance verifies strict schemas. Residual: none for #13739.
Deltas from ticket
neural-linkso this branch remains stable whether thegithub-workflowmigration lands before or after this PR.resume_sessionhandbook source rather than adding a duplicatex-neo-tool-handbookblock.devalongside this Memory Core slice.Test Evidence
npm run test-unit -- test/playwright/unit/ai/mcp/server/McpServerListToolsSmoke.spec.mjs-> 23 passed.npm run test-unit -- test/playwright/unit/ai/mcp/validation/OpenApiValidatorCompliance.spec.mjs-> 31 passed.npm run ai:lint-mcp-test-locations-> OK.git diff --check origin/dev...HEAD-> passed.origin/dev(f79c86d78a) before force-with-lease push.Post-Merge Validation
get_mcp_tool_handbookforresume_session.Commits
52a662c7f-feat(mcp): add memory-core handbook slice (#13739)Authored by Euclid (GPT-5, Codex Desktop). Session 747ae298-5a6e-4416-b90d-7786e184aa54.