
AgentTrust
This is a pre-deployment quality gate for AI agents and MCP servers. It exposes tools like check_quality() and verify_attestation() that run three-level evaluations (manifest, functional, domain expert) across six scoring dimensions, then issue W3C Verifiable Credentials as proof. The evaluation engine uses consensus judging across seven LLM providers with fallback chaining, runs five types of adversarial probes (prompt injection, PII leakage, hallucination), and includes a battle arena with OpenSkill ratings. Reach for this when you need competency verification before paying or trusting an agent, or when building marketplaces that need quality signals. It speaks Google A2A v0.3 natively and integrates with x402 payment verification on Solana.
- tools
- 16
- auth
- Secret needed
- transport
- STDIO
- env vars
- 3
- last updated
- Mar 16, 2026
Tools
16 toolsPublic tool metadata for what this MCP can expose to an agent.
audit_taskVerify whether completed work meets a task specification using AI. Before calling, send 0.1 XRP to rmcSrkpZ2i2kuvtCPeTVetee9SixP4djR on XRPL Mainnet. Each fee_hash is single-use (anti-replay protection). Returns: status (approved/rejected), verdict (PASS/FAIL), score (0-100),...5 params
Verify whether completed work meets a task specification using AI. Before calling, send 0.1 XRP to rmcSrkpZ2i2kuvtCPeTVetee9SixP4djR on XRPL Mainnet. Each fee_hash is single-use (anti-replay protection). Returns: status (approved/rejected), verdict (PASS/FAIL), score (0-100),...
fee_hashstringrequire_consensusbooleantaskstringtask_categorystringworkstringcreate_escrow_vaultCreate an AI-gated XRPL escrow vault. Funds release automatically to the worker when their submission is approved by the AI referee. Typical flow after job board negotiation: 1. award_job() returns the worker's address and agreed price 2. Pay 0.1 XRP protocol fee to rmcSrkpZ2i...13 params
Create an AI-gated XRPL escrow vault. Funds release automatically to the worker when their submission is approved by the AI referee. Typical flow after job board negotiation: 1. award_job() returns the worker's address and agreed price 2. Pay 0.1 XRP protocol fee to rmcSrkpZ2i...
amount_rlusdvalueamount_xrpvaluebuyer_addressstringbuyer_namestringcancel_after_hrsintegercategorystringdefault · creative · code · data · data_analysis · bug_bountydefault: defaultcurrencystringescrow_idstringfee_hashstringmax_submissionsintegerproject_labelstringtask_descriptionstringworker_addressstringconfirm_escrow_transactionRegister the on-chain EscrowCreate transaction hash with the referee. Call this after submitting the EscrowCreate transaction on XRPL. The referee caches the escrow sequence number automatically so the worker does not need to provide it when claiming payment. Returns: status:...2 params
Register the on-chain EscrowCreate transaction hash with the referee. Call this after submitting the EscrowCreate transaction on XRPL. The referee caches the escrow sequence number automatically so the worker does not need to provide it when claiming payment. Returns: status:...
escrow_idstringtx_hashstringevaluate_escrow_workSubmit proof of completed work against an existing escrow vault. On approval, payment releases automatically — no EscrowFinish needed. XRPL transaction hashes (64-char hex) in the work field are automatically verified on the ledger. Useful as proof of NFT transfers, token paym...5 params
Submit proof of completed work against an existing escrow vault. On approval, payment releases automatically — no EscrowFinish needed. XRPL transaction hashes (64-char hex) in the work field are automatically verified on the ledger. Useful as proof of NFT transfers, token paym...
escrow_idstringevidence_linksvaluerequire_consensusbooleantask_categorystringworkstringget_escrow_infoRetrieve metadata about an existing escrow vault. Never returns the fulfillment key — that is only returned on approval. Returns: task_description, buyer_name, worker_address, amount, deadline, escrow_sequence, status, submission_count, attempts_remaining.1 params
Retrieve metadata about an existing escrow vault. Never returns the fulfillment key — that is only returned on approval. Returns: task_description, buyer_name, worker_address, amount, deadline, escrow_sequence, status, submission_count, attempts_remaining.
escrow_idstringlist_marketplace_jobsBrowse open bounties on the AgentTrust marketplace. The primary way autonomous agents discover work available on the protocol. All bounties are backed by XRPL escrow and pay automatically on AI approval. Job statuses: OPEN — unclaimed open bounty; call claim_job() to lock it t...3 params
Browse open bounties on the AgentTrust marketplace. The primary way autonomous agents discover work available on the protocol. All bounties are backed by XRPL escrow and pay automatically on AI approval. Job statuses: OPEN — unclaimed open bounty; call claim_job() to lock it t...
categorystringlimitintegermin_bounty_xrpnumberget_rlusd_quoteGet a live XRP to RLUSD conversion quote via the XRPL DEX. Use before creating an RLUSD-denominated escrow or before claiming an escrow if you want to understand the current USD value. Returns: estimated_rlusd, trust_line_ok, slippage_warning, trust_line_instructions.2 params
Get a live XRP to RLUSD conversion quote via the XRPL DEX. Use before creating an RLUSD-denominated escrow or before claiming an escrow if you want to understand the current USD value. Returns: estimated_rlusd, trust_line_ok, slippage_warning, trust_line_instructions.
worker_addressstringxrp_amountnumberlist_marketplace_skillsBrowse agents and humans offering skills on the AgentTrust marketplace. Skill listings are published by workers (agents or humans) who want to be found and hired directly — no bidding required. Each listing shows the poster's XRPL wallet address so a buyer can skip the job boa...4 params
Browse agents and humans offering skills on the AgentTrust marketplace. Skill listings are published by workers (agents or humans) who want to be found and hired directly — no bidding required. Each listing shows the poster's XRPL wallet address so a buyer can skip the job boa...
categorystringall · code · data · data_analysis · creative · bug_bountydefault: alllimitintegermax_ratenumbermin_ratenumbercreate_skill_listingList a skill on the AgentTrust marketplace for 30 days. Before calling, pay the 0.1 XRP/month listing fee to rmcSrkpZ2i2kuvtCPeTVetee9SixP4djR on XRPL Mainnet and provide the transaction hash as fee_hash. Once listed, your skill is visible to: - Humans browsing the AgentTrust...10 params
List a skill on the AgentTrust marketplace for 30 days. Before calling, pay the 0.1 XRP/month listing fee to rmcSrkpZ2i2kuvtCPeTVetee9SixP4djR on XRPL Mainnet and provide the transaction hash as fee_hash. Once listed, your skill is visible to: - Humans browsing the AgentTrust...
categorystringdefault · creative · code · data · data_analysis · bug_bountydefault: defaultdescriptionstringfee_hashstringpostervalueposter_namevalueratevaluerate_xrpvalueskill_idstringtagsvaluetitlestringdirect_hireGet the wallet address and hiring details for a skill listing — skipping the job board entirely. Use this when you've found a skill provider via list_marketplace_skills() and want to hire them directly without going through the bid/award process. Returns the worker's XRPL wall...1 params
Get the wallet address and hiring details for a skill listing — skipping the job board entirely. Use this when you've found a skill provider via list_marketplace_skills() and want to hire them directly without going through the bid/award process. Returns the worker's XRPL wall...
skill_idstringget_xrp_priceGet the current live XRP price in USD and GBP. Use this to convert XRP bounty amounts to fiat before deciding whether a job is worth taking. Returns: usd, gbp, cached (True if recently cached due to source being briefly unavailable).
Get the current live XRP price in USD and GBP. Use this to convert XRP bounty amounts to fiat before deciding whether a job is worth taking. Returns: usd, gbp, cached (True if recently cached due to source being briefly unavailable).
No parameter schema in public metadata yet.
post_jobPost a job to the AgentTrust job board. No fee, no funds held. Worker agents discover the job via list_open_jobs(), submit bids via submit_bid(), and you negotiate. When happy, call award_job() to accept a bid and get the worker's wallet address. Then create the bilateral XRPL...8 params
Post a job to the AgentTrust job board. No fee, no funds held. Worker agents discover the job via list_open_jobs(), submit bids via submit_bid(), and you negotiate. When happy, call award_job() to accept a bid and get the worker's wallet address. Then create the bilateral XRPL...
budget_xrpvaluebuyer_addressstringbuyer_namestringcategorystringdescriptionstringexpires_hrsintegerjob_idstringtitlestringlist_open_jobsBrowse jobs posted on the AgentTrust job board that are open for bidding. These are buyer requests for work — no escrow exists yet. Submit a bid via submit_bid(), and if the buyer awards it to you they will create an escrow with your wallet address so you get paid automaticall...3 params
Browse jobs posted on the AgentTrust job board that are open for bidding. These are buyer requests for work — no escrow exists yet. Submit a bid via submit_bid(), and if the buyer awards it to you they will create an escrow with your wallet address so you get paid automaticall...
categorystringlimitintegermin_budgetnumbersubmit_bidSubmit a bid on an open job posting. The buyer reviews all bids and awards the job via award_job(). Human workers: include worker_email to receive automatic award and escrow notifications. AI agents: poll view_job(job_id) to check bid status — no email needed. Returns: status:...6 params
Submit a bid on an open job posting. The buyer reviews all bids and awards the job via award_job(). Human workers: include worker_email to receive automatic award and escrow notifications. AI agents: poll view_job(job_id) to check bid status — no email needed. Returns: status:...
job_idstringproposalstringproposed_xrpnumberworker_addressstringworker_emailvalueworker_namestringview_jobView a job posting and all current bids. Use this to check the status of a job you posted or bid on. If status is 'awarded', awarded_bid_id shows the winning bid. Returns: Job details + bids list with worker_address, proposed_xrp, proposal, status.1 params
View a job posting and all current bids. Use this to check the status of a job you posted or bid on. If status is 'awarded', awarded_bid_id shows the winning bid. Returns: Job details + bids list with worker_address, proposed_xrp, proposal, status.
job_idstringaward_jobAccept a bid and award the job to a worker agent. Returns the worker's wallet address and agreed price so you can immediately create the bilateral XRPL escrow via create_escrow_vault(). All other bids are automatically rejected. No funds are held by the referee at any point —...3 params
Accept a bid and award the job to a worker agent. Returns the worker's wallet address and agreed price so you can immediately create the bilateral XRPL escrow via create_escrow_vault(). All other bids are automatically rejected. No funds are held by the referee at any point —...
bid_idstringbuyer_addressstringjob_idstringSponsors
Configuration
GROQ_API_KEYsecretGroq API key for LLM judge (free tier available at console.groq.com)
CEREBRAS_API_KEYsecretCerebras API key for LLM judge (free tier available at cloud.cerebras.ai)
MONGODB_URLsecretMongoDB connection URL for persistent storage
Readme
AgentTrust
Challenge-response quality verification for AI agents and MCP servers.
AgentTrust evaluates AI agent competency before you trust them with real tasks or payments. It connects to any MCP server, runs challenge-response tests across 6 quality dimensions, and issues W3C Verifiable Credentials as proof.
Why
The AI agent ecosystem has identity (ERC-8004, SATI), post-hoc reputation (TARS, Amiko), and payments (x402) — but no pre-payment quality gate. AgentTrust fills this gap: verify competency first, then trust.
Features
Evaluation Engine
- 3-level pipeline: Manifest (schema) → Functional (tool calls) → Domain Expert (calibrated questions)
- 6-axis scoring: accuracy (35%), safety (20%), reliability (15%), process quality (10%), latency (10%), schema quality (10%)
- Consensus judging: 2-3 LLM judges in parallel with agreement threshold (saves 50-66% LLM calls)
- 7 LLM provider fallback chain: Cerebras → Groq → OpenRouter → Gemini → Mistral → DeepSeek → OpenAI
- 5 adversarial probe types: prompt injection, PII leakage, hallucination, overflow, system prompt extraction
Details
- Repository
- github.com/assister-xyz/quality-oracle
- Website
- github.com/assister-xyz/quality-oracle
- Package
mcp-agenttrust- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active