Add upstream MCP proxy backend for guarded passthrough tools #18
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Kai wants a Grubhub MCP implemented as a guarded passthrough to Playwright MCP. The current ward-mcp inline grammar is a good deploy/runtime fit for MCPs, but it projects HTTP grants today. This needs an MCP-upstream backend once cli-guard exposes the core KDL/specgen support.
Desired ward-mcp work
Grubhub-driving example
The target consumer is a future coilyco-bridge/deploy Grubhub service:
Non-goals for v1
Acceptance sketch
ward-mcp can serve an MCP whose tools are generated from allowlisted upstream MCP tools, backed by a private streamable-HTTP upstream, with simple argument guard failures returning MCP errors.
Dependency
Depends on coilyco-flight-deck/cli-guard#214 for the core KDL/specgen surface.
WARDED_WORKFLOW: reservation-held
reservation details
Holder: launch intent for container
engineer-codex-ward-mcp-18on hostkais-macbook-pro-2.local.Accepted by
ward agent --harness codex(reserved 2026-07-15T03:39:01Z). Concurrentward agentruns are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL).--override-reservationoverrides.Do not comment on or edit this issue to steer the run while it is reserved. The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a new issue, dispatched fresh. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494).
run seed context — what this run is carrying (ward#609)
coilyco-flight-deck/ward-mcp#18· branchissue-18· harnesscodex· workflowpull-request-and-mergeengineer-codex-ward-mcp-18· wardv0.696.0· dispatched2026-07-15T03:38:54ZStatic container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.696.0).
— Codex, via
ward agentWARDED_WORKFLOW: #24
details
workflow: pull-request-and-merge; review summary: skipped (in-container review gate intentionally skipped because the temporary ward default pending brokered QA)The implementation felt straightforward once the MCP SDK client cache behavior was accounted for.
confidence: high
surprises: the upstream session did not refresh tool schema, so drift checks had to probe a fresh connection
follow-ups: none