{"openapi":"3.1.0","info":{"title":"Foundry Machine Services by InversoLabs","version":"0.1.19"},"servers":[{"url":"https://auth.inversolabs.us"}],"paths":{"/v1/services/mcp-auth-preflight/invoke":{"post":{"operationId":"mcp_auth_compatibility_preflight","summary":"MCP OAuth Protected Resource Metadata, PKCE & Authorization Compatibility Preflight","description":"Validate MCP protected-resource and OAuth authorization-server metadata; diagnose PKCE and client compatibility; and predict interoperability failures before connecting, without accepting credentials.","requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"authorization_server_metadata":{"type":"object"},"client":{"type":"object"},"commerce_context":{"type":"object"},"probe_status":{"type":"string"},"protected_resource_metadata":{"type":"object"},"request_id":{"maxLength":256,"type":"string"},"resource_url":{"format":"uri","type":"string"},"www_authenticate":{"type":"string"}},"required":["resource_url","protected_resource_metadata","authorization_server_metadata","client"],"type":"object"},"example":{"authorization_server_metadata":{"authorization_endpoint":"https://auth.example.com/authorize","code_challenge_methods_supported":["S256"],"issuer":"https://auth.example.com","registration_endpoint":"https://auth.example.com/register","token_endpoint":"https://auth.example.com/token"},"client":{"supports_dcr":true,"supports_protected_resource_metadata":true,"supports_resource_parameter":true},"protected_resource_metadata":{"authorization_servers":["https://auth.example.com"],"resource":"https://mcp.example.com/mcp"},"resource_url":"https://mcp.example.com/mcp"}}}},"responses":{"200":{"description":"Structured compatibility result","content":{"application/json":{"schema":{"properties":{"checks":{"type":"array"},"compatible":{"type":"boolean"},"failures":{"type":"array"},"remediation":{"type":"array"},"ruleset_version":{"type":"string"},"spec_version":{"type":"string"},"status":{"type":"string"},"token_handling":{"type":"string"},"verdict":{"enum":["compatible","incompatible","unknown"],"type":"string"},"warnings":{"type":"array"}},"required":["status","verdict","compatible","spec_version","ruleset_version","failures","warnings","checks","remediation","token_handling"],"type":"object"},"example":{"status":"completed","verdict":"compatible","compatible":true,"spec_version":"2025-11-25","ruleset_version":"2026-08-25.1","failures":[],"warnings":[],"checks":[{"name":"protected_resource_matches","passed":true},{"name":"authorization_servers","passed":true},{"name":"issuer_https","passed":true},{"name":"authorization_endpoint","passed":true},{"name":"token_endpoint","passed":true},{"name":"pkce_s256","passed":true},{"name":"resource_indicators","passed":true},{"name":"protected_resource_discovery","passed":true},{"name":"registration_path","passed":true}],"remediation":[],"token_handling":"tokens_not_accepted_or_retained"}}}},"402":{"description":"x402 v2 payment required"},"422":{"description":"Input schema invalid"},"503":{"description":"Service unavailable or execution failed"}},"x-x402-price-usdc":"0.03","x-price":"$0.03","x-x402-price":{"amount":"0.03","currency":"USDC","network":"eip155:8453","networks":["solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","eip155:8453"]},"x-x402-primary-network":"eip155:8453","x-x402-networks":["solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","eip155:8453"],"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.03"},"protocols":[{"x402":{}}]}}}}}