MCPサーバー

agent-surety

io.github.jdhart81/agent-surety

このMCPでできること

Manages surety bonds for agent commitments, including pricing, activation, claims, arbitration-based slashing, release, status, and audit verification.

activate_bond
Mark a POSTED bond ACTIVE (idempotent). funding_ref links the payment rail transaction that funded the stake.
入力スキーマ
{'type': 'object', 'title': 'activate_bondArguments', 'required': ['bond_id'], 'properties': {'bond_id': {'type': 'string', 'title': 'Bond Id'}, 'funding_ref': {'type': 'string', 'title': 'Funding Ref', 'default': ''}}}
出力スキーマ
{'type': 'object', 'title': 'activate_bondOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
bond_status
Current record for a bond (state, balances, claims, audit head).
入力スキーマ
{'type': 'object', 'title': 'bond_statusArguments', 'required': ['bond_id'], 'properties': {'bond_id': {'type': 'string', 'title': 'Bond Id'}}}
出力スキーマ
{'type': 'object', 'title': 'bond_statusOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
describe_agent
Return capabilities and input contract.
入力スキーマ
{'type': 'object', 'title': 'describe_agentArguments', 'properties': {}}
出力スキーマ
{'type': 'object', 'title': 'describe_agentOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
file_claim
File a claim against an ACTIVE bond. Claims pay out ONLY when an arbitration ruling upholds them (see slash_bond).
入力スキーマ
{'type': 'object', 'title': 'file_claimArguments', 'required': ['bond_id', 'claimant', 'amount_minor'], 'properties': {'reason': {'type': 'string', 'title': 'Reason', 'default': ''}, 'bond_id': {'type': 'string', 'title': 'Bond Id'}, 'claimant': {'type': 'string', 'title': 'Claimant'}, 'amount_minor': {'type': 'integer', 'title': 'Amount Minor'}}}
出力スキーマ
{'type': 'object', 'title': 'file_claimOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
list_bonds
List bonds, optionally filtered by state (POSTED|ACTIVE|RELEASED|EXHAUSTED).
入力スキーマ
{'type': 'object', 'title': 'list_bondsArguments', 'properties': {'state': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'State', 'default': None}}}
出力スキーマ
{'type': 'object', 'title': 'list_bondsOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
post_bond
Post a surety bond behind an agent's promises. principal is a positive integer in minor units; expires_at is the ISO-8601 coverage window end. The bond fee (2% default) is computed and frozen at post.
入力スキーマ
{'type': 'object', 'title': 'post_bondArguments', 'required': ['principal_agent', 'principal', 'expires_at'], 'properties': {'coverage': {'type': 'string', 'title': 'Coverage', 'default': ''}, 'currency': {'type': 'string', 'title': 'Currency', 'default': 'USD'}, 'principal': {'type': 'integer', 'title': 'Principal'}, 'expires_at': {'type': 'string', 'title': 'Expires At'}, 'principal_agent': {'type': 'string', 'title': 'Principal Agent'}}}
出力スキーマ
{'type': 'object', 'title': 'post_bondOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
price_bond
Underwrite a surety bond: deterministic actuarial premium quote from a counterparty's track record (attestations, notarized deliveries, completed bonds lower the rate; slashes raise it or decline outright). Integer-only model uw-v1; the returned quote_hash lets any party recompute and verify the quote. Pure — never mutates bond state.
入力スキーマ
{'type': 'object', 'title': 'price_bondArguments', 'required': ['coverage_minor', 'duration_days'], 'properties': {'slashes': {'type': 'integer', 'title': 'Slashes', 'default': 0}, 'attestations': {'type': 'integer', 'title': 'Attestations', 'default': 0}, 'duration_days': {'type': 'integer', 'title': 'Duration Days'}, 'slashed_minor': {'type': 'integer', 'title': 'Slashed Minor', 'default': 0}, 'coverage_minor': {'type': 'integer', 'title': 'Coverage Minor'}, 'bonds_completed': {'type': 'integer', 'title': 'Bonds Completed', 'default': 0}, 'successful_deliveries': {'type': 'integer', 'title': 'Successful Deliveries', 'default': 0}}}
出力スキーマ
{'type': 'object', 'title': 'price_bondOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
release_bond
Release the remaining stake to the principal after the coverage window elapses — refused while any claim is still open.
入力スキーマ
{'type': 'object', 'title': 'release_bondArguments', 'required': ['bond_id'], 'properties': {'bond_id': {'type': 'string', 'title': 'Bond Id'}}}
出力スキーマ
{'type': 'object', 'title': 'release_bondOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
slash_bond
Execute an arbitration ruling against a claim. Requires the ruling's case id + content hash from agent-arbitration — no ruling, no slash; a given ruling pays at most once. Payout caps at the bond's available balance (over-claims exhaust the bond).
入力スキーマ
{'type': 'object', 'title': 'slash_bondArguments', 'required': ['bond_id', 'claim_id', 'ruling_case_id', 'ruling_hash'], 'properties': {'upheld': {'type': 'boolean', 'title': 'Upheld', 'default': True}, 'bond_id': {'type': 'string', 'title': 'Bond Id'}, 'claim_id': {'type': 'string', 'title': 'Claim Id'}, 'ruling_hash': {'type': 'string', 'title': 'Ruling Hash'}, 'ruling_case_id': {'type': 'string', 'title': 'Ruling Case Id'}}}
出力スキーマ
{'type': 'object', 'title': 'slash_bondOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
verify_audit
Validate the tamper-evident audit hash chain for a bond.
入力スキーマ
{'type': 'object', 'title': 'verify_auditArguments', 'required': ['bond_id'], 'properties': {'bond_id': {'type': 'string', 'title': 'Bond Id'}}}
出力スキーマ
{'type': 'object', 'title': 'verify_auditOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
追加
describe_agent
2026年9月17日12:42
追加
price_bond
2026年9月17日12:42
追加
verify_audit
2026年9月17日12:42
追加
list_bonds
2026年9月17日12:42
追加
bond_status
2026年9月17日12:42
追加
release_bond
2026年9月17日12:42
追加
slash_bond
2026年9月17日12:42
追加
file_claim
2026年9月17日12:42
追加
activate_bond
2026年9月17日12:42
追加
post_bond
2026年9月17日12:42