83trust / 100

Agentic Commerce

by bosonprotocol.io in Onchain & crypto

MCP serverPassing, checked 6 h ago

MCP server for Boson Protocol — on-chain agentic commerce for physical & digital goods.

https://mcp.bosonprotocol.io/mcp

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
104 ms typical, 219 ms slowest 5%
Last check
6 h ago
Next check
in 3 min

How to call it

Add it to any MCP client that supports remote servers.

{
  "mcpServers": {
    "agentic-commerce": {
      "type": "http",
      "url": "https://mcp.bosonprotocol.io/mcp"
    }
  }
}

63 tools

  • get_config_ids

    Returns all valid configId values for this server. Call first to discover which network/deployment to use. No auth required.

  • get_funds

    Reads treasury fund balances for sellers and buyers from the Boson subgraph. Supports pagination/ordering/filtering. Read-only — signerAddress not required. Returns: array of { tokenAddress, availableAmount, accountId }.

  • get_disputes

    Reads dispute records from the Boson subgraph. Supports pagination, ordering, and filtering by buyer/seller/state. Read-only. Returns: array of dispute entities with exchangeId, state, timeout.

  • get_dispute_by_id

    Reads a single dispute by its ID (equals the exchangeId). Read-only. Returns: dispute entity with state, timeout, buyerPercent. Use get_disputes to search first.

  • get_exchanges

    Reads exchange records (offer commitments) from the Boson subgraph. Filter by buyer/seller/state. Read-only. Returns: array of exchanges with offerId, state (Committed/Redeemed/Completed/Disputed/Cancelled/Revoked), and voucher details.

  • get_offers

    Reads offer listings from the Boson subgraph. Supports pagination, ordering, and filtering (e.g. by sellerId). Read-only. Returns: array of offers with price, deposit, dates, and quantity.

  • get_sellers

    Reads seller account entities from the Boson subgraph. Optionally includes related offers, exchanges, funds, and logs. Read-only. Returns: array of seller entities with addresses and metadataUri.

  • get_dispute_resolvers

    Reads registered dispute resolver entities. Use this to find a valid disputeResolverId for create_offer. Read-only. Returns: array of resolvers with ID, fees, escalationResponsePeriod, and supported tokens.

  • create_offer

    Creates a product offer. Caller must have a seller account (create_seller first). Prerequisite: store metadata first with store_product_v1_metadata or store_base_metadata to get metadataUri/metadataHash. All dates in milliseconds; amounts as strings in wei. Returns unsigned tx —

  • create_offer_with_condition

    Creates an offer gated by token-ownership (e.g. hold an ERC-721 to commit). Same prerequisites as create_offer plus a condition object specifying the gate token, method, and threshold. Returns unsigned transaction data.

  • create_buyer

    Creates a buyer account for signerAddress. Required before a buyer can commit to seller-initiated offers for the first time. No prerequisites. Returns unsigned transaction data.

  • sign_full_offer

    Generates EIP-712 typed data for a non-listed (private) offer that the offer creator must sign. Call before create_offer_and_commit or void_non_listed_offer. Returns: typed data structure — sign it locally with your wallet (EIP-712), then use the signature in the next step.

  • create_offer_and_commit

    Atomically creates a private offer and commits a specific buyer in one transaction. Prerequisite: call sign_full_offer, sign the returned typed data locally with your wallet (EIP-712), and provide the signature here. Used for private/bilateral trades. Returns unsigned transaction

  • create_offer_commit_and_redeem

    Atomically creates a private offer, commits a specific buyer, and immediately redeems the voucher in a single transaction via the OrchestrationHandler. Same prerequisites as create_offer_and_commit (sign_full_offer + EIP-712 signature). Use for instant-fulfilment private trades.

  • void_offer

    Voids a listed offer so it can no longer be committed to. Caller must be the seller assistant. Existing exchanges are unaffected. Returns unsigned transaction data.

  • void_non_listed_offer

    Voids a private (non-listed) offer before it is fulfilled. Prerequisite: call sign_full_offer and sign the returned typed data locally with your wallet (EIP-712) to obtain the signature. Returns unsigned transaction data.

  • void_non_listed_offer_batch

    Voids multiple private offers atomically. Same prerequisite as void_non_listed_offer, but for an array of full offer objects. Returns unsigned transaction data.

  • create_seller

    Creates a seller account on Boson Protocol. Required before creating any offers. signerAddress is automatically set as admin, assistant, and treasury. Provide seller metadata and royaltyPercentage. Returns unsigned transaction data.

  • update_seller

    Updates an existing seller account. Caller must be the current seller admin (signerAddress). Use get_sellers_by_address to retrieve the seller id first. Returns unsigned transaction data.

  • send_signed_transaction

    Broadcasts a signed raw Ethereum transaction to the network. signedTransaction must be 0x-prefixed RLP-encoded hex obtained from local wallet signing (e.g. ethers `wallet.signTransaction(tx)`). Returns: transaction hash, block number, and gas used.

  • send_meta_transaction

    Relays a pre-signed meta-transaction via Biconomy so the user pays no gas. Requires sigR/sigS/sigV from a locally-signed EIP-712 payload. Use when the target operation requires metaTx relay. Optionally accepts transferAuthorizations (from the sign_receive_with_* tools, completed

  • send_native_meta_transaction

    Relays a native meta-transaction (EIP-712 signed function call) via Biconomy. Requires ABI-encoded function signature and sigR/sigS/sigV from a locally-signed EIP-712 payload. Returns: relay transaction data.

  • send_forwarded_meta_transaction

    Relays a Biconomy forwarded meta-transaction (ERC-20 gas payment). Requires a complete ERC20ForwardRequest and domain separator signature. Returns: relay transaction data.

  • withdraw_funds

    Withdraws funds from an entity's protocol treasury to the entity's treasury address. Sellers withdraw proceeds; buyers withdraw refunds. Caller must control the entity via signerAddress. Returns unsigned transaction data.

  • deposit_funds

    Deposits ERC-20 or native tokens into an entity's protocol treasury (e.g. seller deposit). For ERC-20, call approve_exchange_token first. In metaTx mode, you can skip the approval by passing transferAuthorizations (built with a sign_receive_with_* tool) to send_meta_transaction.

  • extend_dispute_timeout

    Extends the deadline of an active dispute. Dispute must be in 'Resolving' state. Either party can call this. Returns unsigned transaction data.

  • expire_dispute

    Marks a dispute as expired after its resolution period passes. Permissionless — anyone can call. Exchange must be in 'Disputed' state past its timeout. Returns unsigned transaction data.

  • expire_dispute_batch

    Marks multiple expired disputes in one transaction. All exchanges must be in 'Disputed' state past their respective timeouts. Permissionless. Returns unsigned transaction data.

  • resolve_dispute

    Resolves a dispute by mutual agreement. Workflow: (1) create_dispute_resolution_proposal generates typed data, (2) both parties sign the typed data locally with their wallet (EIP-712), (3) either party submits sigR/sigS/sigV here. Returns unsigned transaction data.

  • raise_dispute

    Raises a dispute on a redeemed exchange. Caller must be the buyer. Must be called within disputePeriodDurationInMS after redemption. Returns unsigned transaction data.

  • retract_dispute

    Retracts a raised dispute, releasing seller deposit and restoring completion flow. Caller must be the buyer who raised it. Returns unsigned transaction data.

  • escalate_dispute

    Escalates a stale dispute to the third-party dispute resolver. Caller must be the buyer. Resolver's escalation fee must be covered. Returns unsigned transaction data.

  • decide_dispute

    Decides an escalated dispute. Caller must be the dispute resolver assigned to the offer's disputeResolverId. Specify buyerPercent in basis points (0=all to seller, 10000=all to buyer). Returns unsigned transaction data.

  • refuse_escalated_dispute

    Dispute resolver refuses to decide an escalated dispute. Returns the escalation fee to the buyer and resets dispute to 'Resolving' state. Returns unsigned transaction data.

  • expire_escalated_dispute

    Expires an escalated dispute once the resolver's response period passes without a decision. Permissionless — anyone can call. Returns unsigned transaction data.

  • create_dispute_resolution_proposal

    Generates EIP-712 typed data for a mutual dispute resolution proposal. Both buyer and seller must sign the same buyerPercentBasisPoints value locally with their wallet (EIP-712) before calling resolve_dispute. Returns: typed data structure (domain, types, message).

  • revoke_voucher

    Revokes a committed (not yet redeemed) voucher on behalf of the seller, returning funds to the buyer. Caller must be the seller assistant. Returns unsigned transaction data.

  • approve_exchange_token

    Grants ERC-20 allowance to the Boson Protocol contract. Must be called before commit_to_offer or deposit_funds when using non-native exchange tokens, unless you relay in metaTx mode with transferAuthorizations (built with a sign_receive_with_* tool) passed to send_meta_transactio

  • sign_receive_with_erc3009_authorization

    Generates EIP-712 typed data for an ERC-3009 ReceiveWithAuthorization (e.g. USDC). Authorizes the spender (default: protocol diamond) to pull `value` from signerAddress between validAfter and validBefore. Sign locally with your wallet (EIP-712); add the resulting signature to the

  • sign_receive_with_erc2612_permit

    Generates EIP-712 typed data for an EIP-2612 Permit. Authorizes the spender (default: protocol diamond) to pull `value` from signerAddress until `deadline`. Sign locally with your wallet (EIP-712); add the resulting signature to the returned transferAuthorization { strategy: 'EIP

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTime
6 h agoPassed200219 ms
15 h agoPassed200321 ms
24 h agoPassed20085 ms
34 h agoPassed200104 ms