{"server_name":"quattrino","transport":"streamable-http","endpoint_path":"/api/mcp/","url":"https://quattrino.io/api/mcp/","authentication":"Authorization: Bearer <agent API credential (qtrn_sk_...)> on every request","environment":"TEST/SANDBOX - no real money moves","start_here":["whoami","authority_discover","authorize {amount_minor: 1999, merchant: 'Amazon', purpose: 'USB-C cable', commitment: 'ONE_TIME', task: {max_amount_minor: 2000}}  -> AUTHORIZED","authorize {mode: 'binding', idempotency_key: 'order-1001', execution: 'external', ...}  -> authorization_id + portable_proof","authorization_outcome {authorization_id, success: true, actual_amount_minor: 1999, provider_reference: '114-2233'}","authorization_explain {authorization_id}"],"groups":{"core_authorize":["whoami","authority_discover","authorize","authorization_status","authorization_outcome","authorization_explain"],"intent_and_envelopes":["compile_intent","authority_gap","envelope_propose_change","disclosure_release"],"portable_proof":["authorization_proof","verify_authorization_proof","reason_codes"],"execution_adapters_sandbox":["wallet_status","request_transaction","get_transaction","list_recent_transactions","check_approval","get_quote","purchase_preflight","submit_purchase_receipt","purchase_prepare","checkout_requirements_submit","checkout_request_fields","payment_credential_request","purchase_status","merchant_quote","merchant_purchase"],"marketplace_buyer":["marketplace_search","get_service_quote","purchase_service","marketplace_get_trust_profile","negotiate_service_price","get_purchase_result"],"recurring_authorities":["authority_charge","recurring_authority_get","recurring_authority_cancel"],"seller_operator":["list_jobs","complete_job","fail_job"]},"docs":{"setup":"https://quattrino.io/docs#mcp","canonical":"docs/MCP_SETUP.md","config_example":"https://quattrino.io/api/v1/public/examples/mcp_config.json","well_known":"https://quattrino.io/.well-known/mcp.json"},"tool_count":49,"tools":[{"name":"whoami","description":"Identify the authenticated agent: name, organization, environment and\n    the scopes this credential holds.","input_schema":{"properties":{},"title":"whoamiArguments","type":"object"}},{"name":"wallet_status","description":"Check this agent's spending wallet: available authority, reserved\n    holds, period spend and the active policy limits (all integer minor units).\n    Call this BEFORE requesting a transaction to avoid avoidable declines.","input_schema":{"properties":{},"title":"wallet_statusArguments","type":"object"}},{"name":"request_transaction","description":"Request a spend. amount_minor is integer minor units (cents: $12.50 =\n    1250). idempotency_key (>=8 chars) MUST be unique per new purchase and\n    REUSED verbatim when retrying the same purchase - replays return the\n    original result and never double-charge. Outcomes: COMPLETE (paid),\n    APPROVAL_REQUIRED (poll check_approval with the returned approval_id),\n    POLICY_BLOCKED / RISK_BLOCKED (final - do not retry).\n    Routing is chosen by Quattrino BEFORE any money moves: transaction_type\n    'merchant_purchase' -> Stripe Shared Payment Token merchant (see the\n    merchant_purchase tool); 'marketplace_purchase' / 'service_call' ->\n    Quattrino Credits first (see purchase_service); 'machine_payment' -> x402.\n    Fees always come from the live rule engine (get_quote / public discovery),\n    never from this text. The default 'external_purchase' is a SANDBOX\n    rules-check simulation only ($0 fee, no merchant is paid); in production it\n    is retired and fails closed with LEGACY_EXTERNAL_PURCHASE_RAIL_RETIRED -\n    never a card charge for an arbitrary website.","input_schema":{"properties":{"amount_minor":{"title":"Amount Minor","type":"integer"},"merchant":{"title":"Merchant","type":"string"},"idempotency_key":{"title":"Idempotency Key","type":"string"},"currency":{"default":"USD","title":"Currency","type":"string"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Category"},"purpose":{"default":"","title":"Purpose","type":"string"},"transaction_type":{"default":"external_purchase","title":"Transaction Type","type":"string"},"recurring":{"default":false,"title":"Recurring","type":"boolean"},"mission_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mission Id"},"delegated_authority_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Delegated Authority Id"},"task_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Task Id"}},"required":["amount_minor","merchant","idempotency_key"],"title":"request_transactionArguments","type":"object"}},{"name":"get_transaction","description":"Fetch one of this agent's transactions with its full event timeline\n    (state machine history, policy decision and provider outcome).","input_schema":{"properties":{"transaction_id":{"title":"Transaction Id","type":"string"}},"required":["transaction_id"],"title":"get_transactionArguments","type":"object"}},{"name":"list_recent_transactions","description":"List this agent's most recent transactions (newest first).","input_schema":{"properties":{"limit":{"default":20,"title":"Limit","type":"integer"}},"title":"list_recent_transactionsArguments","type":"object"}},{"name":"check_approval","description":"Poll a pending human approval (after request_transaction returned\n    next_action=await_approval). Returns status pending/approved/rejected/\n    expired plus next_action: keep_waiting, none (executed - keep the\n    approval_token as proof) or stop (do NOT retry the purchase).","input_schema":{"properties":{"approval_id":{"title":"Approval Id","type":"string"}},"required":["approval_id"],"title":"check_approvalArguments","type":"object"}},{"name":"get_quote","description":"Preview the full economic breakdown (fees, totals) for a spend BEFORE\n    committing to it. amount_minor is integer minor units.","input_schema":{"properties":{"amount_minor":{"title":"Amount Minor","type":"integer"},"transaction_type":{"default":"marketplace_purchase","title":"Transaction Type","type":"string"}},"required":["amount_minor"],"title":"get_quoteArguments","type":"object"}},{"name":"purchase_preflight","description":"Check EVERYTHING about a purchase BEFORE committing money - moves\n    nothing, creates nothing. Returns can_purchase, a policy dry-run with the\n    exact reasons, whether human approval would be required, merchant trust\n    state, the commerce route, the full fee economics and risk warnings. Call\n    this before request_transaction to avoid blocked or surprising spends.","input_schema":{"properties":{"amount_minor":{"title":"Amount Minor","type":"integer"},"merchant":{"title":"Merchant","type":"string"},"category":{"default":"","title":"Category","type":"string"},"recurring":{"default":false,"title":"Recurring","type":"boolean"}},"required":["amount_minor","merchant"],"title":"purchase_preflightArguments","type":"object"}},{"name":"authorize","description":"Ask Quattrino whether this economic action is AUTHORIZED. Returns one\n    of AUTHORIZED / APPROVAL_REQUIRED / DENIED / NEEDS_INFORMATION with the\n    effective maximum, the binding authority layer and the reasons.\n    mode=\"dry_run\" evaluates only; mode=\"binding\" (needs idempotency_key)\n    issues a portable EconomicAuthorization that expires, can be revoked and is\n    consumed exactly once - either by a Quattrino execution adapter\n    (execution_package tells you how) or by YOUR OWN executor, after which you\n    call authorization_outcome. `task` holds structured constraints such as\n    {\"max_amount_minor\": 2000, \"categories\": [\"electronics\"],\n    \"prohibited_side_effects\": [\"subscription\"]} - a task can narrow standing\n    authority, never expand it. Ambiguity returns NEEDS_INFORMATION.\n    Phase 30: pass envelope_id (from compile_intent) to run under a compiled\n    task authority; action_class (NON_CONSEQUENTIAL_RESEARCH is always allowed,\n    PAYMENT / ECONOMIC_COMMITMENT / ... need authority); commitment (ONE_TIME,\n    SUBSCRIPTION, ... - never assumed); attributes (ram_gb, refurbished, ...);\n    fulfillment (physical/digital/service) for purpose-bound disclosures;\n    subactions [{name, class, amount_minor}] for per-step verdicts. When\n    authority is missing the response carries question_required + question\n    (the latest safe question) and missing_authority. proof_audience (binding\n    mode) binds portable_proof to the verifier that will check it (merchant\n    domain / service id) - the same field as REST. project_id (Agent-Native\n    multi-scope) runs the action under this agent's envelope in that project;\n    authority never bleeds between projects.","input_schema":{"properties":{"amount_minor":{"default":0,"title":"Amount Minor","type":"integer"},"merchant":{"default":"","title":"Merchant","type":"string"},"purpose":{"default":"","title":"Purpose","type":"string"},"action_type":{"default":"purchase","title":"Action Type","type":"string"},"mode":{"default":"dry_run","title":"Mode","type":"string"},"currency":{"default":"USD","title":"Currency","type":"string"},"category":{"default":"","title":"Category","type":"string"},"service_id":{"default":"","title":"Service Id","type":"string"},"task":{"additionalProperties":true,"default":null,"title":"Task","type":"object"},"delegated_authority_id":{"default":"","title":"Delegated Authority Id","type":"string"},"disclosures":{"default":null,"items":{},"title":"Disclosures","type":"array"},"recurring":{"default":false,"title":"Recurring","type":"boolean"},"execution":{"default":"auto","title":"Execution","type":"string"},"idempotency_key":{"default":"","title":"Idempotency Key","type":"string"},"envelope_id":{"default":"","title":"Envelope Id","type":"string"},"action_class":{"default":"","title":"Action Class","type":"string"},"commitment":{"default":"","title":"Commitment","type":"string"},"attributes":{"additionalProperties":true,"default":null,"title":"Attributes","type":"object"},"fulfillment":{"default":"","title":"Fulfillment","type":"string"},"subactions":{"default":null,"items":{},"title":"Subactions","type":"array"},"proof_audience":{"default":"","title":"Proof Audience","type":"string"},"project_id":{"default":"","title":"Project Id","type":"string"}},"title":"authorizeArguments","type":"object"}},{"name":"authorization_status","description":"Current state of an EconomicAuthorization (AUTHORIZED, APPROVAL_PENDING,\n    CONSUMED, EXPIRED, REVOKED, ...) including its execution_package, the\n    approval state and any recorded outcome.","input_schema":{"properties":{"authorization_id":{"title":"Authorization Id","type":"string"}},"required":["authorization_id"],"title":"authorization_statusArguments","type":"object"}},{"name":"authorization_outcome","description":"Record what YOUR executor did under a binding authorization that\n    Quattrino did not execute itself (Quattrino authorized; you paid through\n    your own provider). The authorization is immutable; Quattrino reconciles\n    the outcome against the authorized terms (amount, counterparty, commitment\n    class, data disclosed, delegation, time, purpose) and returns compliance\n    findings (COMPLIANT / UNAUTHORIZED_COMMITMENT / UNAUTHORIZED_DISCLOSURE ...).\n    Report `commitment` honestly (ONE_TIME vs SUBSCRIPTION) and the fields you\n    actually disclosed. If the executor verified a portable proof first, pass\n    its `proof_id` (and proof_verified=true) so the outcome is linked to it.","input_schema":{"properties":{"authorization_id":{"title":"Authorization Id","type":"string"},"success":{"title":"Success","type":"boolean"},"provider":{"default":"","title":"Provider","type":"string"},"provider_reference":{"default":"","title":"Provider Reference","type":"string"},"actual_amount_minor":{"default":0,"title":"Actual Amount Minor","type":"integer"},"merchant":{"default":"","title":"Merchant","type":"string"},"material_result":{"default":"","title":"Material Result","type":"string"},"currency":{"default":"","title":"Currency","type":"string"},"commitment":{"default":"","title":"Commitment","type":"string"},"recurring":{"default":false,"title":"Recurring","type":"boolean"},"disclosed_fields":{"default":null,"items":{},"title":"Disclosed Fields","type":"array"},"delegations_performed":{"default":null,"items":{},"title":"Delegations Performed","type":"array"},"category":{"default":"","title":"Category","type":"string"},"proof_id":{"default":"","title":"Proof Id","type":"string"},"proof_verified":{"default":null,"title":"Proof Verified","type":"boolean"}},"required":["authorization_id","success"],"title":"authorization_outcomeArguments","type":"object"}},{"name":"authorization_proof","description":"R4 (SANDBOX): the signed portable proof (EdDSA / Ed25519 JWS) of a\n    binding AUTHORIZED authorization that YOUR executor will carry out. Give\n    the `token` to the executor / counterparty; they verify it (no credential\n    needed) with verify_authorization_proof or POST /api/v1/authorizations/verify\n    before acting. Dry runs, denials, approval-pending and Quattrino-executed\n    authorizations have no proof. The proof is audience-bound (merchant /\n    service / proof_audience), expires with the authorization and is single\n    use: once an outcome is recorded, or the authorization is revoked, every\n    verification fails closed. It authorizes simulated sandbox execution only.","input_schema":{"properties":{"authorization_id":{"title":"Authorization Id","type":"string"}},"required":["authorization_id"],"title":"authorization_proofArguments","type":"object"}},{"name":"verify_authorization_proof","description":"R4 (SANDBOX): verify a portable proof the way an external executor /\n    counterparty does (fail closed). Checks signature + key + version + issuer\n    + expiry + audience + registration + terms + revocation + single use + live\n    authority and returns {valid, status, reason_codes, reasons, checks,\n    authorization}. Never act unless valid is true. `audience` must be the\n    audience the proof was bound to (the merchant / counterparty identifier).","input_schema":{"properties":{"proof":{"title":"Proof","type":"string"},"audience":{"default":"","title":"Audience","type":"string"},"expected":{"additionalProperties":true,"default":null,"title":"Expected","type":"object"},"verifier":{"default":"","title":"Verifier","type":"string"}},"required":["proof"],"title":"verify_authorization_proofArguments","type":"object"}},{"name":"reason_codes","description":"R7: the stable reason-code registry behind every denial_reasons /\n    needs_information / approval_reasons / outcome flag / proof verifier code.\n    Each code has a normalized family (AMOUNT_LIMIT, AGGREGATE_BUDGET, COMMITMENT,\n    COUNTERPARTY, TIME_WINDOW, DATA_DISCLOSURE, DELEGATION, PROOF_INTEGRITY ...),\n    a severity (deny | approval | information | advisory | compliance | invalid),\n    deterministic human copy and a remedy. Pass `code` for one entry or\n    `family` to list a family. Versioned; legacy aliases stay resolvable.","input_schema":{"properties":{"family":{"default":"","title":"Family","type":"string"},"code":{"default":"","title":"Code","type":"string"}},"title":"reason_codesArguments","type":"object"}},{"name":"authorization_explain","description":"Explain an authorization: who asked, on whose behalf, why, what\n    standing authority existed, what narrowed it, the effective maximum, which\n    policy/risk checks applied, whether a human approved, the execution route,\n    what actually happened and whether the outcome matched. Machine-readable\n    plus a plain_language paragraph.","input_schema":{"properties":{"authorization_id":{"title":"Authorization Id","type":"string"}},"required":["authorization_id"],"title":"authorization_explainArguments","type":"object"}},{"name":"compile_intent","description":"Turn the human's instruction (as they said it) into a CompiledIntent and\n    an AuthorityEnvelope you can authorize against. You may pass `proposal`\n    with your structured reading (purpose_category, merchants, categories,\n    data_fields, deadline ...) - it is a hypothesis: Quattrino classifies every\n    field SAFE_TO_INFER / INHERIT_FROM_POLICY / DEFER_UNTIL_NEEDED / ASK_OWNER /\n    MUST_NOT_INFER and NEVER turns it into spending, disclosure, commitment or\n    delegation permission. The result tells you what is authorized now\n    (research, comparison), what is not yet authorized and the open questions\n    to ask the owner only when a consequential step becomes imminent.","input_schema":{"properties":{"statement":{"title":"Statement","type":"string"},"proposal":{"additionalProperties":true,"default":null,"title":"Proposal","type":"object"},"statement_ref":{"default":"","title":"Statement Ref","type":"string"},"parent_envelope_id":{"default":"","title":"Parent Envelope Id","type":"string"}},"required":["statement"],"title":"compile_intentArguments","type":"object"}},{"name":"authority_discover","description":"What may I currently do? Summarized effective capabilities (allowed /\n    conditional / denied) for this agent, optionally under an envelope. Never\n    returns the owner's policy internals.","input_schema":{"properties":{"envelope_id":{"default":"","title":"Envelope Id","type":"string"}},"title":"authority_discoverArguments","type":"object"}},{"name":"authority_gap","description":"What additional authority would I need to do X? Runs the real pipeline\n    as a dry run (nothing recorded) and returns missing_authority (e.g. \"+$127\n    owner authorization required\") plus the precise question to ask.","input_schema":{"properties":{"amount_minor":{"default":0,"title":"Amount Minor","type":"integer"},"merchant":{"default":"","title":"Merchant","type":"string"},"purpose":{"default":"","title":"Purpose","type":"string"},"envelope_id":{"default":"","title":"Envelope Id","type":"string"},"action_type":{"default":"purchase","title":"Action Type","type":"string"},"commitment":{"default":"","title":"Commitment","type":"string"},"action_class":{"default":"","title":"Action Class","type":"string"},"attributes":{"additionalProperties":true,"default":null,"title":"Attributes","type":"object"},"fulfillment":{"default":"","title":"Fulfillment","type":"string"}},"title":"authority_gapArguments","type":"object"}},{"name":"envelope_propose_change","description":"Propose a change to your task authority (for example a higher ceiling\n    after you found the best option). Nothing changes until the owner decides;\n    your reason is evidence, not authority. To self-restrict, use narrower\n    dimensions with the REST endpoint /envelopes/{id}/narrow.","input_schema":{"properties":{"envelope_id":{"title":"Envelope Id","type":"string"},"dimensions":{"additionalProperties":true,"title":"Dimensions","type":"object"},"reason":{"default":"","title":"Reason","type":"string"}},"required":["envelope_id","dimensions"],"title":"envelope_propose_changeArguments","type":"object"}},{"name":"disclosure_release","description":"Release ONE field (e.g. shipping_address) cleared as RELEASE / RELEASE_ONCE /\n    RELEASE_REDACTED under an authorization, to the exact counterparty it is\n    bound to. Single-use decisions are consumed atomically; payment data and\n    secrets can never be released.","input_schema":{"properties":{"authorization_id":{"title":"Authorization Id","type":"string"},"scope":{"title":"Scope","type":"string"},"recipient":{"title":"Recipient","type":"string"}},"required":["authorization_id","scope","recipient"],"title":"disclosure_releaseArguments","type":"object"}},{"name":"submit_purchase_receipt","description":"Submit proof of purchase after completing an external transaction.\n    Ties the merchant order to the Quattrino transaction so the owner sees an\n    honest receipt and delivery record on the Commerce Timeline. NEVER include\n    card numbers, CVCs or credentials - the receipt will be rejected.","input_schema":{"properties":{"transaction_id":{"title":"Transaction Id","type":"string"},"order_number":{"default":"","title":"Order Number","type":"string"},"final_amount_minor":{"default":0,"title":"Final Amount Minor","type":"integer"},"tax_minor":{"default":0,"title":"Tax Minor","type":"integer"},"shipping_minor":{"default":0,"title":"Shipping Minor","type":"integer"},"confirmation_reference":{"default":"","title":"Confirmation Reference","type":"string"},"delivery_information":{"default":"","title":"Delivery Information","type":"string"}},"required":["transaction_id"],"title":"submit_purchase_receiptArguments","type":"object"}},{"name":"marketplace_search","description":"Search the machine-service marketplace for listed services (name,\n    price in integer minor units, trust score 0-100, delivered call counts).\n    Filters: max_price_minor, pricing_model, verified_only, min_trust (0-100).\n    Sort: price | trust | reliability | latency (default: your agent's\n    configured procurement preference, else relevance).\n    Use the returned service_id with purchase_service to buy one metered call.","input_schema":{"properties":{"query":{"default":"","title":"Query","type":"string"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Category"},"max_price_minor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Max Price Minor"},"pricing_model":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Pricing Model"},"verified_only":{"default":false,"title":"Verified Only","type":"boolean"},"min_trust":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Min Trust"},"sort":{"default":"","title":"Sort","type":"string"}},"title":"marketplace_searchArguments","type":"object"}},{"name":"get_service_quote","description":"Get an immutable machine-readable quote for a marketplace service\n    BEFORE buying: exact unit price, estimated total, pricing unit, measured\n    latency, delivery expectations, refund terms and identity requirements.\n    The quote expires in 15 minutes; pass its quote_id to purchase_service to\n    lock the quoted price even if list pricing changes.","input_schema":{"properties":{"service_id":{"title":"Service Id","type":"string"},"quantity":{"default":1,"title":"Quantity","type":"integer"}},"required":["service_id"],"title":"get_service_quoteArguments","type":"object"}},{"name":"purchase_service","description":"Buy metered usage of a listed marketplace service (quantity = units\n    for metered pricing models like per_call/per_token/per_job; must be 1 for\n    fixed pricing). idempotency_key (>=8 chars) must be unique per new\n    purchase and reused verbatim on retry.\n    For AGENT-OPERATED services pass input_json (a JSON document describing\n    the job you want done) - the response returns SERVICE_PENDING with a job;\n    poll get_purchase_result until the operator delivers.\n    For success_based pricing pass outcome_value_minor; for value_based\n    pricing pass declared_value_minor (integer minor units).\n    COMPLETE means delivered and settled; SERVICE_FAILED means the call\n    failed and you were automatically refunded in full. APPROVAL_REQUIRED\n    means a human must approve first (poll check_approval).","input_schema":{"properties":{"service_id":{"title":"Service Id","type":"string"},"idempotency_key":{"title":"Idempotency Key","type":"string"},"quantity":{"default":1,"title":"Quantity","type":"integer"},"quote_id":{"default":"","title":"Quote Id","type":"string"},"input_json":{"anyOf":[{"type":"string"},{"additionalProperties":true,"type":"object"},{"items":{},"type":"array"},{"type":"null"}],"default":"","title":"Input Json"},"outcome_value_minor":{"default":0,"title":"Outcome Value Minor","type":"integer"},"declared_value_minor":{"default":0,"title":"Declared Value Minor","type":"integer"},"max_amount_minor":{"default":0,"title":"Max Amount Minor","type":"integer"}},"required":["service_id","idempotency_key"],"title":"purchase_serviceArguments","type":"object"}},{"name":"marketplace_get_trust_profile","description":"Retrieve a service's machine-readable trust profile BEFORE buying:\n    verification level 0-3 (UNVERIFIED / IDENTITY_VERIFIED /\n    TECHNICALLY_VERIFIED / TRUSTED), MEASURED delivery metrics (from real\n    transactions, not seller claims), the Data Use Contract (retention,\n    training, sharing, PII acceptance), resource requirements, external\n    tools and refund policy. Verification means checks were completed - it\n    is not a guarantee of honesty or accuracy.","input_schema":{"properties":{"service_id":{"title":"Service Id","type":"string"}},"required":["service_id"],"title":"marketplace_get_trust_profileArguments","type":"object"}},{"name":"negotiate_service_price","description":"Negotiate the unit price of a NEGOTIATED-pricing marketplace service.\n    The seller pre-authorized deterministic automatic negotiation down to a\n    standing floor: a proposal at/above the floor is ACCEPTED (an immutable\n    quote_id is returned - purchase with it); below the floor you get a\n    COUNTERED price. To answer a counter, pass the negotiation_id with\n    action='accept_counter' (uses the countered price) or action='propose'\n    with a higher proposed_unit_price_minor. Max 5 rounds, 60 minute expiry.\n    Never charges anything by itself.","input_schema":{"properties":{"service_id":{"title":"Service Id","type":"string"},"proposed_unit_price_minor":{"title":"Proposed Unit Price Minor","type":"integer"},"quantity":{"default":1,"title":"Quantity","type":"integer"},"negotiation_id":{"default":"","title":"Negotiation Id","type":"string"},"action":{"default":"propose","title":"Action","type":"string"}},"required":["service_id","proposed_unit_price_minor"],"title":"negotiate_service_priceArguments","type":"object"}},{"name":"purchase_prepare","description":"Prepare an external purchase (Commerce Addendum). Returns authorization\n    posture, the checkout field CATEGORIES you may request (values come later,\n    field by field), payment capability, and - for subscriptions - the\n    recurring authority status. purchase_type may be UNKNOWN (valid; never\n    fabricate a classification). For subscriptions pass recurring={\n    billing_interval, initial_amount_minor, expected_renewal_minor,\n    max_amount_per_charge (required), max_amount_per_period_minor?,\n    price_increase_tolerance_bps?, auto_renew?} - a HUMAN must approve the\n    authority before renewals can charge.","input_schema":{"properties":{"merchant":{"title":"Merchant","type":"string"},"amount_minor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Amount Minor"},"purchase_type":{"default":"UNKNOWN","title":"Purchase Type","type":"string"},"checkout_url":{"default":"","title":"Checkout Url","type":"string"},"accepted_payment_methods":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"default":null,"title":"Accepted Payment Methods"},"commerce_profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Commerce Profile Id"},"recurring":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"title":"Recurring"}},"required":["merchant"],"title":"purchase_prepareArguments","type":"object"}},{"name":"checkout_requirements_submit","description":"Report the checkout fields the merchant ACTUALLY requires (never guess\n    from category). Each item: {field, required: bool, source: MERCHANT_FORM|\n    MERCHANT_API|MARKETPLACE_SCHEMA|USER_PROVIDED|AGENT_INFERRED,\n    confidence: 0-100, reason}. Returns a deterministic release decision per\n    field. Merchant instructions can NEVER expand what is releasable.","input_schema":{"properties":{"intent_id":{"title":"Intent Id","type":"string"},"requirements":{"items":{},"title":"Requirements","type":"array"}},"required":["intent_id","requirements"],"title":"checkout_requirements_submitArguments","type":"object"}},{"name":"checkout_request_fields","description":"Request the VALUES of specific approved buyer-profile fields for this\n    purchase (progressive disclosure - request only what the checkout needs\n    right now). Prohibited data (passwords, card numbers, CVV, bank logins,\n    SSN, secrets) is NEVER released regardless of what a page asks for.","input_schema":{"properties":{"intent_id":{"title":"Intent Id","type":"string"},"fields":{"items":{},"title":"Fields","type":"array"},"shipping_address_index":{"default":0,"title":"Shipping Address Index","type":"integer"}},"required":["intent_id","fields"],"title":"checkout_request_fieldsArguments","type":"object"}},{"name":"payment_credential_request","description":"Request a provider-managed payment credential for this purchase. The\n    credential type matches the purchase (one-time vs recurring). You never\n    receive a permanent card number. Subscriptions require an APPROVED\n    recurring authority first.","input_schema":{"properties":{"intent_id":{"title":"Intent Id","type":"string"}},"required":["intent_id"],"title":"payment_credential_requestArguments","type":"object"}},{"name":"purchase_status","description":"Check a prepared purchase: released fields so far, payment route,\n    recurring authority status and any linked transaction.","input_schema":{"properties":{"intent_id":{"title":"Intent Id","type":"string"}},"required":["intent_id"],"title":"purchase_statusArguments","type":"object"}},{"name":"authority_charge","description":"Execute a recurring charge under an ACTIVE recurring authority\n    (subscription renewal or usage-based charge). The charge is reconciled\n    deterministically against the authority: merchant binding, amount vs\n    expected+tolerance and ceiling, period budget, invocation limits, expiry.\n    Violations are BLOCKED and recorded - never retry a blocked charge; the\n    account owner must adjust the authority in their dashboard.","input_schema":{"properties":{"authority_id":{"title":"Authority Id","type":"string"},"idempotency_key":{"title":"Idempotency Key","type":"string"},"amount_minor":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Amount Minor"},"merchant":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Merchant"}},"required":["authority_id","idempotency_key"],"title":"authority_chargeArguments","type":"object"}},{"name":"recurring_authority_get","description":"Inspect one of YOUR recurring purchase authorities: status, merchant,\n    ceilings (max per charge / per period), expected renewal amount, price\n    tolerance, current period usage and next expected billing date. Use this\n    BEFORE authority_charge to know exactly what is permitted.","input_schema":{"properties":{"authority_id":{"title":"Authority Id","type":"string"}},"required":["authority_id"],"title":"recurring_authority_getArguments","type":"object"}},{"name":"recurring_authority_cancel","description":"Cancel one of YOUR recurring purchase authorities (subscription).\n    Cancellation is immediate and permanent: no further renewal charge can\n    execute under it. The account owner is notified.","input_schema":{"properties":{"authority_id":{"title":"Authority Id","type":"string"},"reason":{"default":"","title":"Reason","type":"string"}},"required":["authority_id"],"title":"recurring_authority_cancelArguments","type":"object"}},{"name":"list_jobs","description":"List fulfillment JOBS waiting for this agent (you are the OPERATOR of\n    one or more marketplace services). Each job contains the buyer's\n    input_payload describing the work. Do the work, then call complete_job\n    with your result BEFORE expires_at - otherwise the buyer is refunded\n    automatically and your service's trust score drops.","input_schema":{"properties":{"status":{"default":"QUEUED","title":"Status","type":"string"}},"title":"list_jobsArguments","type":"object"}},{"name":"complete_job","description":"Deliver the REAL result for a job you operate. result_json is your\n    work product (JSON document or string) - the buyer paid for it.\n    Settlement to your seller balance happens exactly once, now.","input_schema":{"properties":{"job_id":{"title":"Job Id","type":"string"},"result_json":{"anyOf":[{"type":"string"},{"additionalProperties":true,"type":"object"},{"items":{},"type":"array"}],"title":"Result Json"}},"required":["job_id","result_json"],"title":"complete_jobArguments","type":"object"}},{"name":"fail_job","description":"Honestly report that a job you operate CANNOT be completed. The buyer\n    is made whole immediately (full refund or prepaid units restored).","input_schema":{"properties":{"job_id":{"title":"Job Id","type":"string"},"reason":{"default":"","title":"Reason","type":"string"}},"required":["job_id"],"title":"fail_jobArguments","type":"object"}},{"name":"get_purchase_result","description":"Buyer side: fetch the REAL result of an agent-operated purchase you\n    made. Poll until status is COMPLETED (result_payload present) - FAILED or\n    EXPIRED means you were automatically made whole.","input_schema":{"properties":{"transaction_id":{"title":"Transaction Id","type":"string"}},"required":["transaction_id"],"title":"get_purchase_resultArguments","type":"object"}},{"name":"merchant_quote","description":"Quote an agent-commerce (Class C) merchant. Returns the merchant's LIVE\n    material terms and a terms_hash you must present when purchasing; if the\n    merchant changes its price afterwards the purchase is refused.","input_schema":{"properties":{"merchant_key":{"title":"Merchant Key","type":"string"},"sku":{"title":"Sku","type":"string"},"quantity":{"default":1,"title":"Quantity","type":"integer"}},"required":["merchant_key","sku"],"title":"merchant_quoteArguments","type":"object"}},{"name":"merchant_purchase","description":"Buy from a Class C merchant with the terms you quoted. Runs the full\n    Quattrino chain (delegated authority -> policy -> budget -> risk ->\n    approval -> Merchant Payment Seam). Retrying with the same idempotency_key\n    NEVER creates a second purchase.","input_schema":{"properties":{"merchant_key":{"title":"Merchant Key","type":"string"},"sku":{"title":"Sku","type":"string"},"terms_hash":{"title":"Terms Hash","type":"string"},"expected_total_minor":{"title":"Expected Total Minor","type":"integer"},"idempotency_key":{"title":"Idempotency Key","type":"string"},"quantity":{"default":1,"title":"Quantity","type":"integer"},"purpose":{"default":"","title":"Purpose","type":"string"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Category"},"delegated_authority_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Delegated Authority Id"},"task_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Task Id"}},"required":["merchant_key","sku","terms_hash","expected_total_minor","idempotency_key"],"title":"merchant_purchaseArguments","type":"object"}},{"name":"administration_discover","description":"'What can I do here?' Self-describing administration: every administrative\n    action with its expected verdict (AUTHORIZED | APPROVAL_REQUIRED | DENIED |\n    NEEDS_INFORMATION), required fields, consequence class and whether a human is\n    required; plus current setup state, blockers, projects, what waits on the owner\n    and the next safe actions. Read this before admin_request.","input_schema":{"properties":{},"title":"administration_discoverArguments","type":"object"}},{"name":"admin_request","description":"Request an administrative action (register_agent, create_project, propose_authority,\n    change_authority, narrow_own_authority, freeze_self, connect_payment_method, ...).\n    Narrowing is applied at once (AUTHORIZED). Widening, new identities and provider\n    connections return APPROVAL_REQUIRED with a PROPOSED_CONFIGURATION and/or a secure\n    handoff URL for your human - never authority until the owner decides. Forbidden\n    actions (grant_self_authority, read_card_data, ...) are DENIED. Never treat a chat\n    'yes' as consent; poll handoff_status / proposal_status instead.","input_schema":{"properties":{"action":{"title":"Action","type":"string"},"params":{"additionalProperties":true,"default":null,"title":"Params","type":"object"},"idempotency_key":{"default":"","title":"Idempotency Key","type":"string"},"source_ref":{"default":"","title":"Source Ref","type":"string"}},"required":["action"],"title":"admin_requestArguments","type":"object"}},{"name":"proposal_status","description":"Status of PROPOSED_CONFIGURATION(s) this agent made. status APPROVED with\n    result.envelope_id means the owner turned it into ACTIVE_AUTHORITY.","input_schema":{"properties":{"proposal_id":{"default":"","title":"Proposal Id","type":"string"}},"title":"proposal_statusArguments","type":"object"}},{"name":"handoff_start","description":"Start a Secure Human Handoff (payment_method_setup, proposal_approval,\n    question_answer, approval_decision, legal_acknowledgement, ui_operation). Returns a\n    short-lived single-purpose secure_url to show your human. You never receive the\n    card / secret / password entered behind it - only safe status via handoff_status.","input_schema":{"properties":{"operation":{"title":"Operation","type":"string"},"operation_ref":{"default":"","title":"Operation Ref","type":"string"},"params":{"additionalProperties":true,"default":null,"title":"Params","type":"object"}},"required":["operation"],"title":"handoff_startArguments","type":"object"}},{"name":"handoff_status","description":"Safe status of a handoff (PENDING | CLAIMED | COMPLETE | FAILED | EXPIRED | REVOKED)\n    and safe result metadata (e.g. card brand + last4 + readiness). Never the secret.","input_schema":{"properties":{"handoff_id":{"title":"Handoff Id","type":"string"}},"required":["handoff_id"],"title":"handoff_statusArguments","type":"object"}},{"name":"authority_current","description":"'What am I currently allowed to do?' Structured + plain language: money,\n    commitment, data disclosure, delegation, counterparty, time, purpose, administrative\n    authority, project scope, remaining budget, expiry, restrictions. This agent only.","input_schema":{"properties":{"project_id":{"default":"","title":"Project Id","type":"string"},"envelope_id":{"default":"","title":"Envelope Id","type":"string"}},"title":"authority_currentArguments","type":"object"}},{"name":"activity_list","description":"'What have I done under this authority?' Merged authorizations, questions,\n    approvals, administrative decisions, proposals and handoffs for this agent,\n    filterable by project, time, consequence class, decision and outcome.","input_schema":{"properties":{"project_id":{"default":"","title":"Project Id","type":"string"},"since":{"default":"","title":"Since","type":"string"},"until":{"default":"","title":"Until","type":"string"},"consequence":{"default":"","title":"Consequence","type":"string"},"decision":{"default":"","title":"Decision","type":"string"},"outcome":{"default":"","title":"Outcome","type":"string"},"kinds":{"default":"","title":"Kinds","type":"string"},"limit":{"default":50,"title":"Limit","type":"integer"}},"title":"activity_listArguments","type":"object"}},{"name":"owner_attention","description":"'What is waiting on the owner?' Unanswered questions, pending approvals,\n    open handoffs, pending proposals, expiring binding authorizations, setup\n    blockers. Relay once; never re-ask what standing authority already answers.","input_schema":{"properties":{},"title":"owner_attentionArguments","type":"object"}},{"name":"projects_list","description":"Projects (authority scopes) this agent is bound to, each with its own envelope\n    and plain-language authority. Pass project_id to authorize / authority_current;\n    authority never bleeds between projects.","input_schema":{"properties":{},"title":"projects_listArguments","type":"object"}}]}