Countersignatory
Live spot prices for verified human judgment, sign-off and notarisation.
我該用這個嗎
品質與安全性
發現項目(1)
- LOW在 countersignatory_register_interest 中
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"mcp": {
"url": "https://countersignatory.com/mcp"
}
}
}遠端端點
https://countersignatory.com/mcpstreamable-http它能做什麼
工具清單
工具(5)
🟢countersignatory_quote(task_type, market, sla_seconds, tier, consensus_n, ...)
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.
輸入結構描述
{
"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#"
}🔴countersignatory_register_interest(quote_id, market, would_pay, note)
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.
輸入結構描述
{
"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#"
}🟢countersignatory_spot_index
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.
輸入結構描述
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢countersignatory_place_order(market, template, input, sla_seconds, max_price, ...)
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. 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.
輸入結構描述
{
"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#"
}🟢countersignatory_get_order(order_id)
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.
輸入結構描述
{
"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#"
}社群
證據