{"name":"com.countersignatory/mcp","slug":"countersignatory-mcp","title":"Countersignatory","description":"Buy a verified human's approval, verification or judgment at a published price, paid by x402 or card","url":"https://mcp.market/server/countersignatory-mcp","rating":null,"grade":"B","score":79,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":18,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-06T01:32:31.000Z","license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-05T15:10:44.054Z","last_ok_at":"2026-11-05T15:10:44.054Z","latency_ms":127},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/Countersignatory/mcp","website":"https://countersignatory.com","version":"0.2.0","remotes":[{"type":"streamable-http","url":"https://countersignatory.com/mcp"}],"packages":[],"tools":[{"name":"countersignatory_get_order","description":"Read one order by the id countersignatory_place_order returned: its status (awaiting_payment, paid, in_progress, answered, refused, refunded or expired), its price, how to pay while it is unpaid, and once answered the answer, the reason, and who gave it and how they are disclosed. A consensus order returns each responder's answer and the majority.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"order_id":{"type":"string","maxLength":64,"description":"The order id, e.g. ord_ followed by 32 hex characters."}},"required":["order_id"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"countersignatory_place_order","description":"Buy one task from a verified human in a market whose state is live on the spot index: an approval (should this action go ahead), a verification (does this page, document or screenshot show X), or a judgment (which is better, or which label applies). The order is priced at current spot and created unpaid; nothing is charged by this call. The response carries two ways to pay: an x402 pay_url that takes USDC on Base in an X-PAYMENT header, for an agent with a wallet, and a checkout_url a person can open to pay by card. Once paid it is answered by hand within the SLA, or refunded in full. Read the answer with countersignatory_get_order. The x402 flow is worked through step by step at https://countersignatory.com/llms.txt. Refused at intake: CAPTCHAs and bot checks, logging in or entering credentials, contacting third parties, medical, legal or financial advice, anything sexual or involving minors.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"market":{"type":"string","maxLength":64,"description":"The id of a market whose state is live on the spot index, e.g. check.general or consensus.3.general. Pass the id verbatim."},"template":{"type":"string","enum":["approval","verification","judgment"],"description":"approval: answers approve or reject. verification: answers true, false or cannot_tell. judgment: answers one label. Every answer comes with a reason."},"input":{"type":"object","additionalProperties":{},"description":"The task. approval: {action, context (up to 20,000 characters), urls? (up to 5), policy?}. verification: {claim, evidence: {url}, instructions?}. judgment: {item, labels (2 to 10)} or {pair: [a, b], labels?}, with an optional rubric."},"sla_seconds":{"type":"integer","exclusiveMinimum":0,"description":"Seconds from payment to answer. 86400 is the base price; a shorter deadline costs more. Not answered in time is refunded in full."},"max_price":{"type":"number","exclusiveMinimum":0,"description":"The most you will pay, in USD. If the price is above it the order is refused and nothing is charged."},"webhook_url":{"type":"string","maxLength":2000,"description":"An https URL that receives the order on every status change."}},"required":["market","template","input","sla_seconds","max_price"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"countersignatory_quote","description":"Get the current spot price to have a verified human check, agree on, sign off or notarise something. Use when an agent needs human judgment, accountability or a signature, and needs to know the cost and time before committing. Returns an indicative price, a band, what would clear at a lower bid, and the implied rate per human minute.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"task_type":{"type":"string","enum":["judgment","verification","approval","physical","signature"]},"market":{"type":"string","maxLength":64,"description":"The market id from the spot index, e.g. countersign.accessibility_statement. Pass the id verbatim."},"sla_seconds":{"type":"integer","exclusiveMinimum":0,"description":"Deadline in seconds. 300 is five minutes."},"tier":{"type":"string","enum":["check","consensus","countersign","seal"],"description":"check: one screened human, a score at stake. consensus: N humans, majority resolves. countersign: a named, register-verified professional attaches their name. seal: a regulated act by a licensed partner."},"consensus_n":{"type":"integer","minimum":3,"maximum":9,"description":"Odd quorum size for the consensus tier."},"unassisted":{"type":"boolean","description":"Require unassisted human perception. Carries a premium."},"jurisdiction":{"type":"string","pattern":"^[A-Za-z]{2}$","description":"Two-letter ISO 3166-1 alpha-2 country code, for example GB or US. UK is accepted as an alias for GB."},"max_price":{"type":"number","exclusiveMinimum":0,"description":"Your maximum bid in USD. The response says whether it clears."},"criteria":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"A WCAG 2.2 success criterion, e.g. 1.4.3: the leading token of an evidence pack's criterion string."},"status":{"type":"string","enum":["automated-fail","automated-review","not-flagged","not-run","manual-only","agent-verified"],"description":"The machine's result for this criterion, from the evidence pack row."},"measured":{"type":"boolean","description":"True when the pack row carries a measured value. A measured automated-fail is priced as a confirmation, which is cheaper."}},"required":["id"],"additionalProperties":false},"minItems":1,"maxItems":55,"description":"Required for a market priced per criterion, currently countersign.accessibility_statement, and rejected for any other. The criteria to examine, each priced from its published effort class and summed. GET /v1/methodology publishes the class table and every valid id."}},"required":["task_type","sla_seconds"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"countersignatory_register_interest","description":"Record that you would buy. Send the quote_id from a countersignatory_quote response to say the quoted price would clear your use case. For a market on the spot index whose state is opening, which cannot be quoted yet, send its market id instead. This is the demand signal that decides which markets open first.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"quote_id":{"type":"string","maxLength":64,"description":"The quote_id from a countersignatory_quote response. Send this or market, not both."},"market":{"type":"string","maxLength":64,"description":"The market id from the spot index, for a market whose state is opening. Pass the id verbatim. Send this or quote_id, not both."},"would_pay":{"type":"boolean","description":"Whether you would buy at the quoted price."},"note":{"type":"string","maxLength":500,"description":"What you would use it for, or what would have to change."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"countersignatory_spot_index","description":"The public Countersignatory Spot Index: the going rate for verified human judgment by market, with the urgency and off-hours multipliers, the published wage floor, and the derivation of every seeded number. Use it for the reference rate table across all markets; use countersignatory_quote when you have a specific task and need a price for it.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":79,"grade":"B","scanned_at":"2026-10-16T11:55:44.795Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-16T11:55:44.784Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1004ms"]},"poisoning":{"score":15,"max":15,"notes":["5 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 2 write-action tools with no auth"]},"maintenance":{"score":12,"max":15,"notes":["last push 40 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","website matches verified namespace"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://countersignatory.com/mcp","reachable":true,"authRequired":false,"latencyMs":1004,"serverInfo":{"name":"countersignatory","version":"0.4.0"}}],"packages":[],"repo":{"found":true,"owner":"Countersignatory","repo":"mcp","archived":false,"pushedAt":"2026-09-06T01:32:31Z","stars":0,"forks":0,"openIssues":0,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/317699414?v=4","ownerCreatedAt":"2026-08-16T22:29:24Z"},"icon":{"url":"https://countersignatory.com/favicon.svg","source":"registry"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":null,"lastPushAt":"2026-09-06T01:32:31.000Z","score":18}}}},"grade_history":[{"kind":"downgrade","fromGrade":"A","toGrade":"B","reason":"score 79: Write-action tools reachable without authentication","createdAt":"2026-10-16T11:55:46.052Z"}],"reviews":[]}