Tom Boucher
|
2b38356275
|
feat(#1681): ADR-1239 Phase C-2 — companion MCP server module (points 1 + 5) [slice 3a] (#1809)
* feat(#1681): ADR-1239 Phase C-2 — companion MCP server module (points 1 + 5) [slice 3a]
Phase 4 slice 3a. A minimal, dependency-free stdio JSON-RPC 2.0 server exposing
two of the six interface points so any MCP-consuming host (Claude/Codex/OpenCode/
VS Code/Gemini/Cursor/Cline/Hermes) can drive GSD with no bespoke plugin:
- point 1 (command): tool gsd_invoke_command -> createHub/dispatch.
- point 5 (state IO): tools gsd_read_state / gsd_write_state -> the Phase 3
stateIO seam (filesystem default).
- src/mcp-server.cts: handleMessage(request, ctx) pure JSON-RPC handler
(initialize / tools/list / tools/call) + runServer({input, output}) thin
line-delimited-JSON loop over injectable streams. 3 tools wired to the
existing engine surfaces. NO new dependency (hand-rolled JSON-RPC; the repo
ships only claude-agent-sdk + ws — an MCP SDK is a separate packaging call).
- tests/gsd-mcp-server.test.cjs: 9 tests (initialize, tools/list, state
read/write round-trip, command dispatch, unknown tool / missing name /
unknown method / notification / parse error, injectable-stream round-trip).
Bin entry / packaging / manifest-version-sync / process-lifecycle docs ->
slice 3b. This slice ships the importable, tested server surface a host (or the
bin shim) drives. Proactive CI gates: ADR-457 ignores + INVENTORY-MANIFEST +
injection-scan audit. All clean locally (9 tests + security 15/15 + inventory +
eslint 0 problems).
* chore(changeset): add Changed fragment for companion MCP server module (#1681)
|
2026-06-28 12:45:25 -04:00 |
|