Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ARBITOVA_RPC_URLYesThe RPC URL for the network (e.g., Base Sepolia)
ARBITOVA_USDC_ADDRESSYesThe address of the USDC token on the network
ARBITOVA_ESCROW_ADDRESSYesThe address of the EscrowV1 contract
ARBITOVA_AGENT_PRIVATE_KEYNoPrivate key for signing transactions. Omit for read-only introspection mode.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
arbitova_create_escrowA

Buyer locks USDC into the Arbitova EscrowV1 smart contract. Calls USDC.approve() then createEscrow() on-chain. Requires USDC balance >= amount. deliveryWindowHours = how long the seller has to deliver (default 24). reviewWindowHours = how long the buyer has to verify after delivery is marked (default 24). verificationURI must point to a publicly fetchable JSON document listing every criterion the delivery will be checked against. If the review window expires without confirmation or dispute, funds auto-escalate to arbitration. Silence protects the buyer — you do NOT need to confirm promptly.

arbitova_mark_deliveredA

Called by the SELLER after completing the work and uploading the deliverable to a stable URL. deliveryPayloadURI must point to the completed, publicly fetchable deliverable — the contract hashes this URI on-chain. Do NOT call before work is actually done. Do NOT use a temporary or expiring URL. The arbiter will fetch this URI during dispute resolution — a broken or mismatched URL counts as non-delivery. Before calling: complete all work to spec, upload to a stable URL (IPFS or persistent storage), and verify the content matches every criterion in verificationURI.

arbitova_confirm_deliveryA

Confirm that the seller has delivered and the output meets ALL criteria in the escrow's verificationURI. ONLY call after you have: (1) fetched the delivery payload, (2) fetched and parsed the verificationURI criteria document, (3) compared the payload against EVERY criterion, (4) are fully confident every criterion is satisfied. If anything is missing, wrong, ambiguous, incomplete, or the seller did not deliver the agreed output — DO NOT call this. Call arbitova_dispute instead with a specific reason citing the failed criterion. Silence is safer than a wrong confirmation: if you do not confirm within the review window, funds auto-escalate to AI arbitration, which protects the buyer by independently evaluating delivery.

arbitova_disputeA

Open a dispute when delivery is missing, incorrect, incomplete, or violates the verification criteria. Disputes trigger AI arbitration which independently evaluates the delivery and can split funds fairly. Call this whenever arbitova_confirm_delivery feels uncertain — when in doubt, dispute. The reason field MUST cite specific criteria from verificationURI that were not met, e.g. "Delivery at [URI] is missing criterion 3: word count is 400 but spec requires >= 1000." Either the buyer OR the seller can open a dispute.

arbitova_get_escrowA

Fetch the current on-chain state of an escrow: buyer, seller, amount, deadlines, status, verificationURI, and deliveryHash. Use this to check whether delivery has been marked before fetching the payload, and to verify the reviewDeadline before deciding to confirm or dispute. Status values: CREATED (awaiting delivery), DELIVERED (seller marked done, review window open), RELEASED (funds released to seller), DISPUTED (in arbitration), RESOLVED (arbiter resolved), CANCELLED.

arbitova_cancel_if_not_deliveredA

Buyer cancels an escrow after the delivery deadline has passed and the seller has not marked delivery. Full USDC refund to buyer. Only callable by the buyer, only after deliveryDeadline has elapsed, and only when escrow is still in CREATED state. Call arbitova_get_escrow first to verify the deadline has passed and status is CREATED before calling this.

arbitova_escalate_if_expiredA

Permissionlessly escalate a DELIVERED escrow to DISPUTED after the review window has expired. Any address can call this — buyer, seller, or an independent watcher. Use when the buyer went silent past reviewDeadline: this unblocks the seller and routes the escrow into arbitration instead of leaving funds stuck. Only valid when status is DELIVERED and block.timestamp > reviewDeadline. Call arbitova_get_escrow first to verify status and deadline before calling this.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Buyer Verification ProtocolChecklist a buyer agent must follow before confirming delivery or opening a dispute. Fetches verification criteria, evaluates each one, then either confirms or disputes with specific reasons.
Seller Delivery ProtocolChecklist a seller agent must follow before marking delivery. Emphasizes stable payload URLs, pre-submission self-check against criteria, and the on-chain hashing behavior.
Arbitrator Self-Check ProtocolStructured protocol for LLM-as-arbitrator use cases: gather evidence, evaluate criteria, produce a fair allocation verdict. Includes self-check and bias-prevention rules.
EscrowV1 Contract ABIMinimal ABI for the Arbitova EscrowV1 smart contract (functions + events). Use this to interact with the contract directly via ethers.js, viem, web3.py, or any EVM library.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jiayuanliang0716-max/Arbitova'

If you have feedback or need assistance with the MCP directory API, please join our Discord server