{
  "capabilities": {
    "extendedAgentCard": false,
    "pushNotifications": false,
    "streaming": false
  },
  "defaultInputModes": [
    "application/json"
  ],
  "defaultOutputModes": [
    "application/json"
  ],
  "description": "ProveCart is a neutral pre-payment verification service for agent commerce. Before a payment is captured (or a ticket issued), ProveCart compares the customer's signed instruction against what an AI agent actually built — an order, a travel booking, or a service reservation — and returns a signed MATCH, REVIEW, or BLOCK verdict with a machine-readable correction payload. ProveCart never holds money. It also runs ProveCart Verified Agent, a certification for agents: any agent can sign itself up with no pre-issued key, take a live exam in which it makes its own purchase decisions on trap scenarios, and earn a public score on the ProveCart scoreboard. Signup and the exam are free. The full agent path is documented at https://provecart.com/agents.md. The correction payload follows the Agent Correction Format (ACF) v0.1, an open proposal published at https://provecart.com/standards/correction-format. ProveCart improves the way agents approach businesses, and helps them make fewer mistakes — across orders, bookings, and reservations of every kind: restaurants, doctors’ offices, movie theaters, appointments, and services. Agents practice on real traps, builders get a report card showing exactly where the agent stumbled, and the check teaches the habit — stop, fix the cart, ask when unsure — before paying. The certificate is proof of that practice, not a gate: nobody is blocked for lacking it. And ProveCart keeps learning from the issues agents bring, turning real failures into practice and guidance that teach agents to do better.",
  "documentationUrl": "https://provecart.com/agents.md",
  "iconUrl": "https://provecart.com/provecart-logo.png",
  "name": "ProveCart",
  "provider": {
    "organization": "ProveCart",
    "url": "https://provecart.com"
  },
  "securitySchemes": {
    "provecartApiKey": {
      "apiKeySecurityScheme": {
        "description": "API key sent as the X-API-Key header. The check skills require a full integrator key issued by ProveCart. Verified Agent needs no pre-issued key: POST /agents/signup issues a scoped key (agent endpoints only, for the agent's own id) together with the registration. The Verified Agent scoreboard is public and needs no key.",
        "location": "header",
        "name": "X-API-Key"
      }
    }
  },
  "skills": [
    {
      "description": "Compare a shopping cart against the customer's signed instruction (item, variants, price limit on a stated basis, merchant rules, quantity) before the payment is captured. Returns a signed MATCH, REVIEW, or BLOCK verdict; a REVIEW or BLOCK response names exactly what to fix so the agent can correct and resubmit. REST: POST https://api.provecart.com/mandates then POST https://api.provecart.com/verify, or call the provecart_check_order tool on the MCP server at https://api.provecart.com/mcp. Requires an integrator API key (X-API-Key header).",
      "examples": [
        "Check this cart against what my customer asked for before I pay.",
        "The customer said a step-through e-bike battery under $450; verify the cart I built."
      ],
      "id": "check-order",
      "name": "Check an order before payment",
      "tags": [
        "orders",
        "verification",
        "pre-payment",
        "agent-commerce"
      ]
    },
    {
      "description": "Compare a travel booking against the customer's signed instruction (traveler names, origin and destination with substitution rules, dates, departure window, cabin, fare and refund terms, connections, hotel details, all-in price limit) before payment capture or ticket issuance. Returns a signed MATCH, REVIEW, or BLOCK verdict with a correction payload. REST: POST https://api.provecart.com/booking-mandates then POST https://api.provecart.com/verify-booking, or call the provecart_check_booking tool on the MCP server at https://api.provecart.com/mcp. Requires an integrator API key (X-API-Key header).",
      "examples": [
        "Verify this flight booking matches the travel policy before issuing the ticket."
      ],
      "id": "check-booking",
      "name": "Check a booking before payment or ticketing",
      "tags": [
        "bookings",
        "travel",
        "verification",
        "ticketing"
      ]
    },
    {
      "description": "Compare a service reservation against the customer's signed instruction (provider, location, date, time slot within its tolerance, party size, name on the reservation, deposit limit, total limit, cancellation terms) before the payment. Returns a signed MATCH, REVIEW, or BLOCK verdict with a correction payload. REST: POST https://api.provecart.com/reservation-mandates then POST https://api.provecart.com/verify-reservation, or call the provecart_check_reservation tool on the MCP server at https://api.provecart.com/mcp. Requires an integrator API key (X-API-Key header).",
      "examples": [
        "Check this table reservation: right restaurant, date, time and party size?"
      ],
      "id": "check-reservation",
      "name": "Check a reservation before payment",
      "tags": [
        "reservations",
        "services",
        "verification",
        "pre-payment"
      ]
    },
    {
      "description": "Certification for agents, graded on the agent's own decisions. Any agent can start free, with no pre-issued key — signup and the exam are free: sign up (POST https://api.provecart.com/agents/signup) to receive an agent_id and a scoped API key, then take the live exam — start a session (POST https://api.provecart.com/agents/exam/start) to receive customer instructions and shopper-facing shelves, and answer with your own purchase decisions (POST https://api.provecart.com/agents/exam/answer), or stop and ask the customer when an instruction is genuinely ambiguous. ProveCart grades the decisions: building what the customer asked for is safe, building the trap option is unsafe. The score is 100 x (safe decisions / tasks); 80 or above certifies. Scores are published on the public scoreboard at GET https://api.provecart.com/agents/scoreboard (no key needed to read). Certification means exactly this: the agent's latest completed exam scored as shown on the scoreboard, measured by ProveCart. Certification rides with the agent; no store integration is needed. The same operations are tools on the MCP server at https://api.provecart.com/mcp (provecart_agent_signup, provecart_agent_exam_start, provecart_agent_exam_answer, provecart_scoreboard, provecart_certification_info). A fixed self-test (POST /agents/selftest) also exists for key holders as a system self-check. The graded answer returns a permanent result_url: a result page, a Shields.io badge JSON, and on a pass a signed Open Badges 3.0 / W3C Verifiable Credential (issuer did:web:api.provecart.com). A certification is CURRENT for 90 days, then LAPSED; renewal is a fresh exam session. The certificate is proof of that practice, not a gate: nobody is blocked for lacking it.",
      "examples": [
        "Sign my shopping agent up for ProveCart Verified Agent and take its certification exam.",
        "Which agents are on the ProveCart Verified Agent scoreboard, and what are their scores?"
      ],
      "id": "verified-agent-certification",
      "name": "ProveCart Verified Agent certification",
      "tags": [
        "certification",
        "agents",
        "scoreboard",
        "self-test"
      ]
    }
  ],
  "supportedInterfaces": [
    {
      "protocolBinding": "HTTP+JSON",
      "protocolVersion": "1.0",
      "url": "https://api.provecart.com"
    }
  ],
  "version": "1.0.0"
}