Real transports + the kit board: MCP (Streamable HTTP), ACP core REST, and the agent kit page - #5
Merged
Merged
Conversation
…kthrough - agent-kit.tsx: the sixth view — the counter's HTTP contract rendered as a product page: the one endpoint (request/response cards), the eight-message protocol, the five tool schemas, the trust ladder, and the raw kit JSON fetched live from /api/agent/kit - the proof is in-page: 'run the walkthrough' speaks JSON to /api/chat exactly as an outside client would — search → add → attest → checkout → approve — and prints the real verdicts (gate ALLOW, captured, receipt, chain verifies); nothing mocked - shell/footer: Agent kit joins the nav between Paper and Playground - registered: verify.mjs REQUIRED, README filemap (six surfaces), llms.txt, JUDGE.md reading surfaces (two → three)
The half-measure is gone: - /api/mcp — a REAL MCP server over Streamable HTTP (spec 2025-06-18): initialize handshake with version negotiation, Mcp-Session-Id sessions, notifications → 202, tools/list, tools/call with content/isError results, ping, GET → 405, DELETE → teardown, batches → 400 (removed in 2025-06-18). Any MCP client can connect. - /api/acp — ACP core REST: agents descriptor (publishes the Ed25519 public key), sessions, messages; every result carries an ack and a receipt signed with the mandate's own key — verified offline during the build (digest match + ed25519 verify = true). - consent moves INTO the tool layer: bind_and_pay refuses with MANDATE_NOT_APPROVED until approve_mandate runs — chat, MCP and ACP all refuse the same way; no transport routes around the principal. attest_tier joins as the second protocol tool (7 tools total). - the kit page becomes the felt board: a hand-cut mat with seven tool patches wired by running stitch to the counter, dye washes on the same screen-blend law, two pompoms, stitched three-doors cards, a copy-agent-context button (context ships in the kit JSON too), and the two stamps that say exactly what is real now. - twins updated: PAPER.md + paper.tsx §7, ARCHITECTURE.md decision 9, adapters honesty note, ENGINEERING_LOG D2 → amended D6, why page, JUDGE.md, AGENT_KIT.md (MCP + ACP connect sections), README, llms.txt, verify.mjs REQUIRED verified live: MCP walk (refuse → approve → capture, manifest issued), ACP walk (receipt verifies offline), make kit green, lint + typecheck + verify green, light + dark screenshots
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
/api/mcp— a REAL MCP server over Streamable HTTP (spec 2025-06-18): initialize handshake with version negotiation,Mcp-Session-Idsessions, notifications → 202,tools/list,tools/call, ping, GET → 405, DELETE → teardown, batches → 400. Any MCP client (Claude, Cursor, Inspector) can connect and shop through the gate./api/acp— ACP core REST: agents descriptor publishing the Ed25519 public key, sessions, messages; every result carries an ack + a receipt signed with the mandate's own key. Verified offline during the build (digest match + ed25519 verify = true).bind_and_payrefuses withMANDATE_NOT_APPROVEDuntilapprove_mandateruns — chat, MCP and ACP all refuse the same way; no transport routes around the principal.attest_tierjoins as the second protocol tool (7 tools total)./api/agent/kit), and the in-page walkthrough that runs the golden path over pure HTTP.Verification
make kitgreen · lint + typecheck +make verifygreen · light + dark screenshots