{"serverInfo":{"name":"mandateshield","title":"MandateShield AI Payment Authority","version":"1.13.3","websiteUrl":"https://mandateshield.com"},"transport":{"type":"streamable-http","url":"https://mandateshield.com/api/mcp"},"authentication":{"required":false,"note":"Initialization, discovery, protocol projection, and v1 analysis are public. Strict production verification requires an optional VERIFY-scoped Bearer credential. Never provide a PROCESSOR credential to an AI client."},"tools":[{"name":"normalize_agent_payment_protocol","title":"Project Agent Payment Fields","description":"Use when an agent encounters an AP2 terminal closed-payment projection, x402 v2 PAYMENT-REQUIRED offer, or explicitly profiled MPP Payment challenge and needs the supported fields projected before an authority check. Map those documented fields into a deterministic MandateShield purchase envelope. X402 requires source-matched network+payTo identity and MPP requires source-matched HTTPS service-origin+method identity; merchant_id alone is insufficient. Evidence references are not independently verified. projection_fields_valid is not full protocol conformance: this tool never verifies delegated authority or a payment credential and always returns enforcement_authorized=false under assurance.","inputSchema":{"type":"object","additionalProperties":false,"required":["adapter","source","context"],"properties":{"adapter":{"type":"string","enum":["AP2_CLOSED_PAYMENT_SD_JWT","X402_V2_PAYMENT_REQUIRED","MPP_HTTP_PAYMENT_CHALLENGE"]},"source":{"description":"Raw protocol input: AP2 compact SD-JWT, x402 PAYMENT-REQUIRED base64 JSON, MPP WWW-Authenticate Payment challenge, or the documented decoded object."},"context":{"type":"object","additionalProperties":false,"required":["mandate_id","agent_id"],"properties":{"mandate_id":{"type":"string","minLength":1,"maxLength":240},"agent_id":{"type":"string","minLength":1,"maxLength":240},"idempotency_key":{"type":"string","minLength":1,"maxLength":256},"created_at":{"type":"string","format":"date-time"},"merchant_id":{"type":"string","minLength":1,"maxLength":240},"resource":{"type":"string","minLength":1,"maxLength":2048},"asset_id":{"type":"string","minLength":1,"maxLength":500},"asset_decimals":{"type":"integer","minimum":0,"maximum":30},"user_consent":{"type":"boolean"},"amount_unit":{"type":"string","enum":["MINOR_UNITS","ATOMIC_UNITS"]},"mpp_request_profile":{"type":"string","enum":["MANDATESHIELD_PORTABLE_CHARGE_V1"],"description":"Required for MPP because the core protocol delegates request field semantics to method-specific specifications."},"x402_execution_profile":{"type":"string","enum":["MANDATESHIELD_X402_V2_EXACT_EIP3009_V1"],"description":"Opt-in strict first-party x402 execution binding. Requires method and exact request digests."},"http_method":{"type":"string","enum":["GET","HEAD","POST","PUT","PATCH","DELETE"]},"http_body_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"http_headers_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"payee_identity":{"type":"object","additionalProperties":false,"required":["profile","provider","merchant_id","binding","verification"],"properties":{"profile":{"const":"MANDATESHIELD_PAYEE_IDENTITY_V1"},"provider":{"type":"string","enum":["X402","MPP","STRIPE","CUSTOM"]},"merchant_id":{"type":"string","minLength":1,"maxLength":240},"binding":{"type":"object"},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"type":"string","enum":["TRUSTED_MERCHANT_MAPPING","TLS_SERVICE_ORIGIN","STRIPE_ACCOUNT_CONFIGURATION","HTTPS_WELL_KNOWN"]},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}},"oneOf":[{"properties":{"provider":{"const":"X402"},"binding":{"type":"object","additionalProperties":false,"required":["network","pay_to"],"properties":{"network":{"type":"string","minLength":1,"maxLength":240},"pay_to":{"type":"string","minLength":1,"maxLength":500}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TRUSTED_MERCHANT_MAPPING"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"MPP"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","method"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"method":{"type":"string","pattern":"^[a-z]+$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TLS_SERVICE_ORIGIN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"STRIPE"},"binding":{"type":"object","additionalProperties":false,"required":["connected_account_id","merchant_account_id"],"properties":{"connected_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"},"merchant_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"STRIPE_ACCOUNT_CONFIGURATION"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","pattern":"^urn:stripe:connected-account:acct_[A-Za-z0-9_]{8,240}$"}}}}},{"properties":{"provider":{"const":"CUSTOM"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","provider_id"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"provider_id":{"type":"string","minLength":1,"maxLength":240}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"HTTPS_WELL_KNOWN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","format":"uri","pattern":"^https://[^/?#]+/\\.well-known/mandateshield-payee\\.json$"}}}}}],"description":"Versioned canonical payee identity bound into the signed purchase envelope. The model records exact provider identifiers and verification evidence; it does not independently validate an external registry, TLS session, provider account or domain-control document."}}},"selection":{"type":"object","additionalProperties":false,"properties":{"index":{"type":"integer","minimum":0,"maximum":24}}}}},"outputSchema":{"type":"object","additionalProperties":true,"required":["adapter","adapter_version","protocol","source_digest","envelope_digest","envelope","assurance","next_step","warnings"],"properties":{"adapter":{"type":"string"},"adapter_version":{"type":"string"},"protocol":{"type":"string","enum":["AP2","X402","MPP"]},"source_digest":{"type":"string"},"envelope_digest":{"type":"string"},"envelope":{"type":"object","additionalProperties":true,"required":["protocol","mandate_id","agent_id","merchant_id","amount","idempotency_key"],"properties":{"protocol":{"type":"string","enum":["AP2","TAP","UCP","X402","MPP","ACP","CUSTOM"],"description":"Source protocol or CUSTOM for a normalized envelope."},"mandate_id":{"type":"string","minLength":1,"description":"Stable identifier for the user-approved authority."},"agent_id":{"type":"string","minLength":1,"description":"Stable identifier for the acting AI agent."},"merchant_id":{"type":"string","minLength":1,"description":"Stable identifier for the final seller or payee."},"payee_identity":{"type":"object","additionalProperties":false,"required":["profile","provider","merchant_id","binding","verification"],"properties":{"profile":{"const":"MANDATESHIELD_PAYEE_IDENTITY_V1"},"provider":{"type":"string","enum":["X402","MPP","STRIPE","CUSTOM"]},"merchant_id":{"type":"string","minLength":1,"maxLength":240},"binding":{"type":"object"},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"type":"string","enum":["TRUSTED_MERCHANT_MAPPING","TLS_SERVICE_ORIGIN","STRIPE_ACCOUNT_CONFIGURATION","HTTPS_WELL_KNOWN"]},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}},"oneOf":[{"properties":{"provider":{"const":"X402"},"binding":{"type":"object","additionalProperties":false,"required":["network","pay_to"],"properties":{"network":{"type":"string","minLength":1,"maxLength":240},"pay_to":{"type":"string","minLength":1,"maxLength":500}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TRUSTED_MERCHANT_MAPPING"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"MPP"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","method"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"method":{"type":"string","pattern":"^[a-z]+$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TLS_SERVICE_ORIGIN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"STRIPE"},"binding":{"type":"object","additionalProperties":false,"required":["connected_account_id","merchant_account_id"],"properties":{"connected_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"},"merchant_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"STRIPE_ACCOUNT_CONFIGURATION"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","pattern":"^urn:stripe:connected-account:acct_[A-Za-z0-9_]{8,240}$"}}}}},{"properties":{"provider":{"const":"CUSTOM"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","provider_id"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"provider_id":{"type":"string","minLength":1,"maxLength":240}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"HTTPS_WELL_KNOWN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","format":"uri","pattern":"^https://[^/?#]+/\\.well-known/mandateshield-payee\\.json$"}}}}}],"description":"Versioned canonical payee identity bound into the signed purchase envelope. The model records exact provider identifiers and verification evidence; it does not independently validate an external registry, TLS session, provider account or domain-control document."},"amount":{"type":"object","additionalProperties":false,"oneOf":[{"required":["value","currency"]},{"required":["atomic_units","asset_decimals"]}],"properties":{"value":{"type":"number","exclusiveMinimum":0},"minor_units":{"type":"integer","minimum":1,"description":"Optional exact integer amount in the currency's minor unit."},"currency":{"type":"string","pattern":"^[A-Za-z]{3}$","description":"Three-letter ISO currency code."},"atomic_units":{"type":"string","pattern":"^(?:0|[1-9][0-9]{0,77})$","description":"Exact integer atomic-asset amount. This string is authoritative for X402."},"asset_decimals":{"type":"integer","minimum":0,"maximum":30}}},"limits":{"type":"object","properties":{"max_amount":{"type":"number","exclusiveMinimum":0},"max_amount_minor":{"type":"integer","exclusiveMinimum":0},"max_atomic_units":{"type":"string","pattern":"^[1-9][0-9]{0,77}$"},"asset_decimals":{"type":"integer","minimum":0,"maximum":30},"currencies":{"type":"array","minItems":1,"items":{"type":"string","pattern":"^[A-Za-z]{3}$"}},"merchants":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"assets":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"networks":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"resources":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}}},"oneOf":[{"required":["currencies","merchants"],"anyOf":[{"required":["max_amount_minor"]},{"required":["max_amount"]}]},{"required":["max_atomic_units","asset_decimals","assets","networks","resources","merchants"]}],"description":"Sandbox analysis policy. Live v2 ignores caller policy and loads the registered mandate."},"asset_id":{"type":"string","minLength":1,"description":"Exact token or asset identifier; required for atomic X402 payments."},"network":{"type":"string","minLength":1,"description":"Exact network or chain identifier; required for atomic X402 payments."},"resource":{"type":"string","minLength":1,"description":"Exact paid resource identifier; required for atomic X402 payments."},"http_request":{"type":"object","additionalProperties":false,"required":["profile","url","method","body_sha256","headers_sha256","redirect_policy"],"properties":{"profile":{"const":"MANDATESHIELD_X402_V2_EXACT_EIP3009_V1"},"url":{"type":"string","format":"uri"},"method":{"type":"string","enum":["GET","HEAD","POST","PUT","PATCH","DELETE"]},"body_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"headers_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"redirect_policy":{"const":"ERROR"}},"description":"Optional signed HTTP action projection used by the narrow first-party x402 v2 exact/EIP-3009 Gate adapter."},"created_at":{"type":"string","format":"date-time"},"expires_at":{"type":"string","format":"date-time"},"idempotency_key":{"type":"string","minLength":1,"maxLength":256,"pattern":"^[A-Za-z0-9._:~-]+$","description":"Unique identifier for this intended payment attempt."},"intent_hash":{"type":"string"},"checkout_hash":{"type":"string","minLength":1,"description":"Digest or stable identifier for the exact final checkout."},"user_consent":{"type":"boolean"},"credential_binding":{"type":"string"},"purpose":{"type":"string","description":"Non-sensitive plain-language purchase purpose."}}},"assurance":{"type":"object","required":["projection_fields_valid","source_signature_verified","source_trust_verified","delegated_authority_verified","payment_credential_verified","settlement_verified","enforcement_authorized"],"properties":{"projection_fields_valid":{"const":true},"source_signature_verified":{"const":false},"source_trust_verified":{"const":false},"delegated_authority_verified":{"const":false},"payment_credential_verified":{"const":false},"settlement_verified":{"const":false},"enforcement_authorized":{"const":false}}},"next_step":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}}}},"annotations":{"readOnlyHint":true,"openWorldHint":false,"destructiveHint":false,"idempotentHint":true},"_meta":{"openai/toolInvocation/invoking":"Normalizing payment protocol…","openai/toolInvocation/invoked":"Payment protocol normalized"}},{"name":"check_ai_payment_authority","title":"Check AI Payment Authority","description":"Use before an AI agent buys, subscribes, transfers value, calls a metered API, or accesses a paid resource when the user wants a payment-authority check. Analyze whether the proposed purchase fits supplied policy facts. This v1 entry check is non-executable and always returns enforcement_authorized=false; use the strict cryptographic tool for a production gate. Never send payment credentials or private keys.","inputSchema":{"type":"object","additionalProperties":true,"required":["protocol","mandate_id","agent_id","merchant_id","amount","idempotency_key"],"properties":{"protocol":{"type":"string","enum":["AP2","TAP","UCP","X402","MPP","ACP","CUSTOM"],"description":"Source protocol or CUSTOM for a normalized envelope."},"mandate_id":{"type":"string","minLength":1,"description":"Stable identifier for the user-approved authority."},"agent_id":{"type":"string","minLength":1,"description":"Stable identifier for the acting AI agent."},"merchant_id":{"type":"string","minLength":1,"description":"Stable identifier for the final seller or payee."},"payee_identity":{"type":"object","additionalProperties":false,"required":["profile","provider","merchant_id","binding","verification"],"properties":{"profile":{"const":"MANDATESHIELD_PAYEE_IDENTITY_V1"},"provider":{"type":"string","enum":["X402","MPP","STRIPE","CUSTOM"]},"merchant_id":{"type":"string","minLength":1,"maxLength":240},"binding":{"type":"object"},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"type":"string","enum":["TRUSTED_MERCHANT_MAPPING","TLS_SERVICE_ORIGIN","STRIPE_ACCOUNT_CONFIGURATION","HTTPS_WELL_KNOWN"]},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}},"oneOf":[{"properties":{"provider":{"const":"X402"},"binding":{"type":"object","additionalProperties":false,"required":["network","pay_to"],"properties":{"network":{"type":"string","minLength":1,"maxLength":240},"pay_to":{"type":"string","minLength":1,"maxLength":500}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TRUSTED_MERCHANT_MAPPING"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"MPP"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","method"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"method":{"type":"string","pattern":"^[a-z]+$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TLS_SERVICE_ORIGIN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"STRIPE"},"binding":{"type":"object","additionalProperties":false,"required":["connected_account_id","merchant_account_id"],"properties":{"connected_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"},"merchant_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"STRIPE_ACCOUNT_CONFIGURATION"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","pattern":"^urn:stripe:connected-account:acct_[A-Za-z0-9_]{8,240}$"}}}}},{"properties":{"provider":{"const":"CUSTOM"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","provider_id"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"provider_id":{"type":"string","minLength":1,"maxLength":240}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"HTTPS_WELL_KNOWN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","format":"uri","pattern":"^https://[^/?#]+/\\.well-known/mandateshield-payee\\.json$"}}}}}],"description":"Versioned canonical payee identity bound into the signed purchase envelope. The model records exact provider identifiers and verification evidence; it does not independently validate an external registry, TLS session, provider account or domain-control document."},"amount":{"type":"object","additionalProperties":false,"oneOf":[{"required":["value","currency"]},{"required":["atomic_units","asset_decimals"]}],"properties":{"value":{"type":"number","exclusiveMinimum":0},"minor_units":{"type":"integer","minimum":1,"description":"Optional exact integer amount in the currency's minor unit."},"currency":{"type":"string","pattern":"^[A-Za-z]{3}$","description":"Three-letter ISO currency code."},"atomic_units":{"type":"string","pattern":"^(?:0|[1-9][0-9]{0,77})$","description":"Exact integer atomic-asset amount. This string is authoritative for X402."},"asset_decimals":{"type":"integer","minimum":0,"maximum":30}}},"limits":{"type":"object","properties":{"max_amount":{"type":"number","exclusiveMinimum":0},"max_amount_minor":{"type":"integer","exclusiveMinimum":0},"max_atomic_units":{"type":"string","pattern":"^[1-9][0-9]{0,77}$"},"asset_decimals":{"type":"integer","minimum":0,"maximum":30},"currencies":{"type":"array","minItems":1,"items":{"type":"string","pattern":"^[A-Za-z]{3}$"}},"merchants":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"assets":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"networks":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"resources":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}}},"oneOf":[{"required":["currencies","merchants"],"anyOf":[{"required":["max_amount_minor"]},{"required":["max_amount"]}]},{"required":["max_atomic_units","asset_decimals","assets","networks","resources","merchants"]}],"description":"Sandbox analysis policy. Live v2 ignores caller policy and loads the registered mandate."},"asset_id":{"type":"string","minLength":1,"description":"Exact token or asset identifier; required for atomic X402 payments."},"network":{"type":"string","minLength":1,"description":"Exact network or chain identifier; required for atomic X402 payments."},"resource":{"type":"string","minLength":1,"description":"Exact paid resource identifier; required for atomic X402 payments."},"http_request":{"type":"object","additionalProperties":false,"required":["profile","url","method","body_sha256","headers_sha256","redirect_policy"],"properties":{"profile":{"const":"MANDATESHIELD_X402_V2_EXACT_EIP3009_V1"},"url":{"type":"string","format":"uri"},"method":{"type":"string","enum":["GET","HEAD","POST","PUT","PATCH","DELETE"]},"body_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"headers_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"redirect_policy":{"const":"ERROR"}},"description":"Optional signed HTTP action projection used by the narrow first-party x402 v2 exact/EIP-3009 Gate adapter."},"created_at":{"type":"string","format":"date-time"},"expires_at":{"type":"string","format":"date-time"},"idempotency_key":{"type":"string","minLength":1,"maxLength":256,"pattern":"^[A-Za-z0-9._:~-]+$","description":"Unique identifier for this intended payment attempt."},"intent_hash":{"type":"string"},"checkout_hash":{"type":"string","minLength":1,"description":"Digest or stable identifier for the exact final checkout."},"user_consent":{"type":"boolean"},"credential_binding":{"type":"string"},"purpose":{"type":"string","description":"Non-sensitive plain-language purchase purpose."}}},"outputSchema":{"type":"object","required":["decision","score","receipt","checked_at","protocol","findings","risk","recommended_action","controls","mode","persisted","enforcement_authorized"],"properties":{"decision":{"type":"string","enum":["ALLOW","REVIEW","BLOCK"]},"score":{"type":"integer","minimum":0,"maximum":100,"description":"Deterministic control-coverage indicator, not a calibrated probability of fraud or loss."},"receipt":{"type":"string"},"checked_at":{"type":"string","format":"date-time"},"protocol":{"type":"string"},"findings":{"type":"array","items":{"type":"object","required":["code","message","severity"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"severity":{"type":"string","enum":["high","medium","low"]}}}},"risk":{"type":"object","required":["level","requested_value","mandate_headroom","blocked_value","primary_reason"],"properties":{"level":{"type":"string","enum":["CLEAR","GUARDED","ELEVATED","CRITICAL"]},"requested_value":{"type":["number","null"]},"mandate_headroom":{"type":["number","null"]},"blocked_value":{"type":"number","minimum":0},"primary_reason":{"type":["string","null"]}}},"recommended_action":{"type":"string"},"controls":{"type":"object","required":["evaluated","passed"],"properties":{"evaluated":{"type":"integer","minimum":0},"passed":{"type":"integer","minimum":0}}},"mode":{"type":"string"},"persisted":{"type":"boolean"},"enforcement_authorized":{"type":"boolean","description":"True only when strict live verification durably creates a trusted, consumable execution reservation. It never permits a direct provider call."},"error":{"type":"string"}}},"annotations":{"readOnlyHint":false,"openWorldHint":false,"destructiveHint":false,"idempotentHint":true},"_meta":{"ui":{"resourceUri":"ui://mandateshield/preflight-v1.html","visibility":["model","app"]},"openai/outputTemplate":"ui://mandateshield/preflight-v1.html","openai/toolInvocation/invoking":"Checking payment authority…","openai/toolInvocation/invoked":"Payment authority checked"}},{"name":"verify_cryptographic_payment_authority","title":"Verify Cryptographic Payment Authority","description":"Use only for a production pre-payment authority gate after the caller has a registered mandate, pinned issuer key, fresh challenge, VERIFY-scoped key, exact final purchase and supported signed evidence. Fail closed for JWS, an AP2-shaped closed-payment SD-JWT projection with RFC 9901 KB-JWT, or normalized TAP-shaped RFC 9421-style evidence. Full AP2 checkout/delegate-chain and Visa TAP structured-field/trust-store processing remain external. A qualifying live ALLOW creates only a short RESERVED authorization and cumulative-budget allocation. This MCP tool never executes payment and exposes no processor transition: a separate trusted gateway with an audience-bound PROCESSOR key must CONSUME and freshly redeem the provider-bound permit before attempting an idempotent provider operation, then reconcile the outcome.","inputSchema":{"type":"object","additionalProperties":false,"required":["envelope","evidence"],"properties":{"envelope":{"type":"object","additionalProperties":true,"required":["protocol","mandate_id","agent_id","merchant_id","amount","idempotency_key"],"properties":{"protocol":{"type":"string","enum":["AP2","TAP","UCP","X402","MPP","ACP","CUSTOM"],"description":"Source protocol or CUSTOM for a normalized envelope."},"mandate_id":{"type":"string","minLength":1,"description":"Stable identifier for the user-approved authority."},"agent_id":{"type":"string","minLength":1,"description":"Stable identifier for the acting AI agent."},"merchant_id":{"type":"string","minLength":1,"description":"Stable identifier for the final seller or payee."},"payee_identity":{"type":"object","additionalProperties":false,"required":["profile","provider","merchant_id","binding","verification"],"properties":{"profile":{"const":"MANDATESHIELD_PAYEE_IDENTITY_V1"},"provider":{"type":"string","enum":["X402","MPP","STRIPE","CUSTOM"]},"merchant_id":{"type":"string","minLength":1,"maxLength":240},"binding":{"type":"object"},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"type":"string","enum":["TRUSTED_MERCHANT_MAPPING","TLS_SERVICE_ORIGIN","STRIPE_ACCOUNT_CONFIGURATION","HTTPS_WELL_KNOWN"]},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}},"oneOf":[{"properties":{"provider":{"const":"X402"},"binding":{"type":"object","additionalProperties":false,"required":["network","pay_to"],"properties":{"network":{"type":"string","minLength":1,"maxLength":240},"pay_to":{"type":"string","minLength":1,"maxLength":500}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TRUSTED_MERCHANT_MAPPING"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"MPP"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","method"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"method":{"type":"string","pattern":"^[a-z]+$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"TLS_SERVICE_ORIGIN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","minLength":1,"maxLength":2048}}}}},{"properties":{"provider":{"const":"STRIPE"},"binding":{"type":"object","additionalProperties":false,"required":["connected_account_id","merchant_account_id"],"properties":{"connected_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"},"merchant_account_id":{"type":"string","pattern":"^acct_[A-Za-z0-9_]{8,240}$"}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"STRIPE_ACCOUNT_CONFIGURATION"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","pattern":"^urn:stripe:connected-account:acct_[A-Za-z0-9_]{8,240}$"}}}}},{"properties":{"provider":{"const":"CUSTOM"},"binding":{"type":"object","additionalProperties":false,"required":["service_origin","provider_id"],"properties":{"service_origin":{"type":"string","pattern":"^https://[^/?#]+$"},"provider_id":{"type":"string","minLength":1,"maxLength":240}}},"verification":{"type":"object","additionalProperties":false,"required":["method","verifier","evidence_ref"],"properties":{"method":{"const":"HTTPS_WELL_KNOWN"},"verifier":{"type":"string","minLength":1,"maxLength":240},"evidence_ref":{"type":"string","format":"uri","pattern":"^https://[^/?#]+/\\.well-known/mandateshield-payee\\.json$"}}}}}],"description":"Versioned canonical payee identity bound into the signed purchase envelope. The model records exact provider identifiers and verification evidence; it does not independently validate an external registry, TLS session, provider account or domain-control document."},"amount":{"type":"object","additionalProperties":false,"oneOf":[{"required":["value","currency"]},{"required":["atomic_units","asset_decimals"]}],"properties":{"value":{"type":"number","exclusiveMinimum":0},"minor_units":{"type":"integer","minimum":1,"description":"Optional exact integer amount in the currency's minor unit."},"currency":{"type":"string","pattern":"^[A-Za-z]{3}$","description":"Three-letter ISO currency code."},"atomic_units":{"type":"string","pattern":"^(?:0|[1-9][0-9]{0,77})$","description":"Exact integer atomic-asset amount. This string is authoritative for X402."},"asset_decimals":{"type":"integer","minimum":0,"maximum":30}}},"limits":{"type":"object","properties":{"max_amount":{"type":"number","exclusiveMinimum":0},"max_amount_minor":{"type":"integer","exclusiveMinimum":0},"max_atomic_units":{"type":"string","pattern":"^[1-9][0-9]{0,77}$"},"asset_decimals":{"type":"integer","minimum":0,"maximum":30},"currencies":{"type":"array","minItems":1,"items":{"type":"string","pattern":"^[A-Za-z]{3}$"}},"merchants":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"assets":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"networks":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}},"resources":{"type":"array","minItems":1,"items":{"type":"string","minLength":1}}},"oneOf":[{"required":["currencies","merchants"],"anyOf":[{"required":["max_amount_minor"]},{"required":["max_amount"]}]},{"required":["max_atomic_units","asset_decimals","assets","networks","resources","merchants"]}],"description":"Sandbox analysis policy. Live v2 ignores caller policy and loads the registered mandate."},"asset_id":{"type":"string","minLength":1,"description":"Exact token or asset identifier; required for atomic X402 payments."},"network":{"type":"string","minLength":1,"description":"Exact network or chain identifier; required for atomic X402 payments."},"resource":{"type":"string","minLength":1,"description":"Exact paid resource identifier; required for atomic X402 payments."},"http_request":{"type":"object","additionalProperties":false,"required":["profile","url","method","body_sha256","headers_sha256","redirect_policy"],"properties":{"profile":{"const":"MANDATESHIELD_X402_V2_EXACT_EIP3009_V1"},"url":{"type":"string","format":"uri"},"method":{"type":"string","enum":["GET","HEAD","POST","PUT","PATCH","DELETE"]},"body_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"headers_sha256":{"type":"string","pattern":"^sha256:[a-f0-9]{64}$"},"redirect_policy":{"const":"ERROR"}},"description":"Optional signed HTTP action projection used by the narrow first-party x402 v2 exact/EIP-3009 Gate adapter."},"created_at":{"type":"string","format":"date-time"},"expires_at":{"type":"string","format":"date-time"},"idempotency_key":{"type":"string","minLength":1,"maxLength":256,"pattern":"^[A-Za-z0-9._:~-]+$","description":"Unique identifier for this intended payment attempt."},"intent_hash":{"type":"string"},"checkout_hash":{"type":"string","minLength":1,"description":"Digest or stable identifier for the exact final checkout."},"user_consent":{"type":"boolean"},"credential_binding":{"type":"string"},"purpose":{"type":"string","description":"Non-sensitive plain-language purchase purpose."}}},"evidence":{"type":"object","additionalProperties":false,"required":["format","public_key"],"properties":{"format":{"type":"string","enum":["jws","sd-jwt","http-message-signature"]},"compact":{"type":"string"},"public_key":{"type":"object"},"expected_audience":{"type":"string"},"expected_nonce":{"type":"string"},"expected_authority":{"type":"string"},"algorithm":{"type":"string","enum":["ES256","RS256","PS256"]},"signature":{"type":"string"},"signature_input":{"type":"object"},"components":{"type":"object"}}}}},"outputSchema":{"type":"object","required":["decision","score","receipt","checked_at","protocol","findings","risk","recommended_action","controls","mode","persisted","enforcement_authorized","assurance","signed_receipt","transparency","execution_authorization"],"properties":{"decision":{"type":"string","enum":["ALLOW","REVIEW","BLOCK"]},"score":{"type":"integer","minimum":0,"maximum":100,"description":"Deterministic control-coverage indicator, not a calibrated probability of fraud or loss."},"receipt":{"type":"string"},"checked_at":{"type":"string","format":"date-time"},"protocol":{"type":"string"},"findings":{"type":"array","items":{"type":"object","required":["code","message","severity"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"severity":{"type":"string","enum":["high","medium","low"]}}}},"risk":{"type":"object","required":["level","requested_value","mandate_headroom","blocked_value","primary_reason"],"properties":{"level":{"type":"string","enum":["CLEAR","GUARDED","ELEVATED","CRITICAL"]},"requested_value":{"type":["number","null"]},"mandate_headroom":{"type":["number","null"]},"blocked_value":{"type":"number","minimum":0},"primary_reason":{"type":["string","null"]}}},"recommended_action":{"type":"string"},"controls":{"type":"object","required":["evaluated","passed"],"properties":{"evaluated":{"type":"integer","minimum":0},"passed":{"type":"integer","minimum":0}}},"mode":{"type":"string"},"persisted":{"type":"boolean"},"enforcement_authorized":{"type":"boolean","description":"True only when strict live verification durably creates a trusted, consumable execution reservation. It never permits a direct provider call."},"error":{"type":"string"},"assurance":{"type":"object","required":["status","format","key_trust","signature_valid","authority_valid","input_digest","findings"]},"signed_receipt":{"type":"object","required":["format","compact","receipt_id","key_id","jwks_uri","verify_uri","transparency_uri"]},"transparency":{"type":"object","required":["status","uri"],"properties":{"status":{"type":"string","enum":["RECORDED","NOT_RECORDED"]},"uri":{"type":"string"}}},"execution_authorization":{"type":"object","required":["state","consumable","transition_uri","processor_integration_required"],"properties":{"state":{"type":"string","enum":["RESERVED","NOT_RESERVED","ARCHIVAL_ONLY"]},"consumable":{"type":"boolean"},"transition_uri":{"type":"string"},"expires_at":{"type":["string","null"]},"processor_integration_required":{"type":"boolean","const":true}}}}},"annotations":{"readOnlyHint":false,"openWorldHint":false,"destructiveHint":false,"idempotentHint":true},"_meta":{"ui":{"resourceUri":"ui://mandateshield/preflight-v1.html","visibility":["model","app"]},"openai/outputTemplate":"ui://mandateshield/preflight-v1.html","openai/toolInvocation/invoking":"Verifying signed authority…","openai/toolInvocation/invoked":"Cryptographic authority verified"}}],"prompts":[],"resources":[{"uri":"https://mandateshield.com/openapi.json","name":"MandateShield OpenAPI","mimeType":"application/json"}],"evaluation":{"url":"https://mandateshield.com/.well-known/mandateshield-evaluation.json","humanUrl":"https://mandateshield.com/trust","note":"External HTTPS evaluation document; it is not advertised as an MCP resource."},"claim_boundary":{"payment_execution":false,"processor_operations_exposed":false,"registry_listing_establishes_adoption":false,"independent_audit_claimed":false}}