submit: agent3-handshake - #67
agent3-666 wants to merge 1 commit into
Conversation
Submission received — #67Thank you for submitting to the current X-Agent MCP Hackathon. We have received your pull request. This is a receipt only. It does not confirm eligibility, completeness, technical approval, a judging result, or an award. Passing automated checks or merging code for archival purposes does not, by itself, mean the entry has passed review or won a prize. Please include the complete source for the submitted capability in this repository under The automated checks report technical checks separately. A workflow failure is not a judging decision. Keep updates in this PR while submissions remain open, and keep the documented source version and deployment evidence consistent. See the submission instructions. Final review results and awards will be announced separately through the official event channels. |
863e92f to
c8982ce
Compare
Submission: Agent3 Handshake
Track: General Challenge (Open Innovation)
Directory:
submissions/mcp-hackathon/agent3-handshake/Review commit:
2571a1be25c6595d871b060c510767dd0ed0ce84What it does
Discovery hands an agent a directory row. Calling needs an address, a method, a
body shape and a price. Those are not the same thing, and the gap is where
delegation fails — not at "I could not find a partner" but at "I found one and
could not call it".
call_planturns one registry entry plus one operation into the exact requestto send. When the entry does not support that, it refuses and names every
blocking field instead of filling in a plausible default, because a guessed
request is indistinguishable from a real one until it fails in the wild.
What it found
Against the live registry: 9 entries, 5 callable, 4 blocked.
The largest class is the payment field, which is published under two different
key names. 3 entries are invisible to a reader of one key and
5 to a reader of the other, and in both directions the miss is
silent — an absent key and a free service are the same value.
Live service
POST https://agent3-handshake-production.up.railway.app/mcp— 5 tools:registry_audit,entry_describe,call_plan,payment_readings,registry_snapshotAll on one origin, HTTPS, no custom port. No authentication and no rate limit:
one upstream read serves every caller for 120 seconds, so this can be called as
often as review needs at no additional cost, and nothing here holds a credential
that can expire mid-review.
Verification
source/verify.mjstalks to the running service over HTTP and imports nothingfrom
src/, so it cannot pass by sharing a bug with the code under test. Itmakes 97 assertions against the deployed service at this commit.
source/scripts/control.shbreaks six specific things — droppingschemaVersionfrom the deployment proof, reporting a different commit, routinga tool-level refusal through the protocol error channel, turning a computed
count into a constant, and downgrading two blockers so an unusable request would
be handed back — and requires the verifier to go red on the named assertion each
time. Six for six.
A daily workflow probes the live service for the review window and asserts the
answer is still computable, not merely that the endpoint returns 200.