{"slug":"swapcard-uu2rud","companyName":"Swapcard","domain":"swapcard.com","url":"https://swapcard.com","headline":"0 human and 5 agent dimensions measured from the pages checked; remaining dimensions are not scored.","compositeScore":61,"humanScore":null,"agentScore":61,"doorGap":null,"humanMeasured":0,"agentMeasured":5,"percentile":null,"humanPercentile":null,"agentPercentile":null,"isPartial":true,"depth":"free","siteClass":"unknown","scannerVersion":49,"scannerRelease":"c49d1def936f56a5ab0871f38c5e6412433ec37a","scoringMethodologyVersion":1,"evidenceSchemaVersion":1,"benchmarkEdition":"methodology-1","scannedAt":"2026-09-10T20:56:53.258Z","unlocked":false,"mission":{"steps":[{"url":"https://www.swapcard.com","outcome":"ok","purpose":"reach the site at all"},{"url":"https://www.swapcard.com/robots.txt","outcome":"ok","purpose":"find out whether machines are welcome"},{"url":"https://www.swapcard.com/llms.txt","outcome":"ok","purpose":"read the site's own guide for language models"},{"url":"https://wf.swapcard.com/sitemap.xml","outcome":"ok","purpose":"find out what pages exist"},{"url":"https://www.swapcard.com/.well-known/security.txt","outcome":"ok","purpose":"find a contact route for machines"},{"url":"https://www.swapcard.com","outcome":"missing","purpose":"find an MCP manifest at the standard paths checked"},{"url":"https://www.swapcard.com/.well-known/ai-plugin.json","outcome":"missing","purpose":"find an agent plugin manifest"},{"url":"https://www.swapcard.com","outcome":"missing","purpose":"find out whether verified agents are recognised"},{"url":"https://www.swapcard.com","outcome":"ok","purpose":"read the homepage as data rather than as a page"},{"url":"https://www.swapcard.com","outcome":"missing","purpose":"find a machine readable API spec"},{"url":"https://www.swapcard.com","outcome":"ok","purpose":"read the developer documentation"},{"url":"https://www.swapcard.com/pricing-plans","outcome":"ok","purpose":"read the prices without running JavaScript"}],"verdict":"The scanner recorded successful observations for 8 of 12 checks, but could not find an MCP manifest at the standard paths checked. It came up empty on 3 other checks too. 2 checks could not be measured; see the report limitations."},"observations":[{"url":"https://www.swapcard.com/contact","step":1,"detail":"Reached the linked “Contact Us” page. No form was submitted, payment made or account created; this route has no applicable signup or checkout score.","moment":"Entry observation","verdict":"observed"}],"dimensions":[{"key":"machine_discoverability","audience":"agent","score":100,"summary":"No restriction on the tested crawler names was found in robots.txt. On its first visit, our browser read the homepage. Prices on the checked pages are readable without running JavaScript. A sitemap listing 395 URLs.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":5}},{"key":"programmatic_onboarding","audience":"agent","score":18,"summary":"Authentication is documented.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":2}},{"key":"pricing_legibility","audience":"agent","score":93,"summary":"1 prices are readable without JavaScript, with no tier sent to sales. The plans are published as Offer structured data too.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":1}},{"key":"agent_aware_instrumentation","audience":"agent","score":8,"summary":"No MCP manifest was identified at the discovery paths checked.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":4}},{"key":"machine_fetchable_trust","audience":"agent","score":85,"summary":"Security.txt is published with a contact route. The homepage answers automated requests.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":2}},{"key":"commercial_rails","audience":"agent","score":null,"summary":"Not applicable to this scanned surface.","measurement":{"reason":"not_applicable","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"steps_to_first_value","audience":"human","score":null,"summary":"Not applicable to this scanned surface.","measurement":{"reason":"not_applicable","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"required_fields","audience":"human","score":null,"summary":"Not applicable to this scanned surface.","measurement":{"reason":"not_applicable","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"verification_walls","audience":"human","score":null,"summary":"Not applicable to this scanned surface.","measurement":{"reason":"not_applicable","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"error_recovery","audience":"human","score":null,"summary":"Not applicable to this scanned surface.","measurement":{"reason":"not_applicable","status":"unmeasured"},"evidence":{"locked":true,"count":0}}],"issues":[{"rank":1,"title":"No OpenAPI specification was identified at the 6 standard paths checked.","dimensionKey":"programmatic_onboarding","evidence":["No OpenAPI spec at the 6 standard paths checked (/openapi.json, /openapi.yaml, /swagger.json, /api/openapi.json, /api-docs, /.well-known/openapi.json). Documentation links found: https://developer.swapcard.com/","Checked directly: /openapi.json, /openapi.yaml, /swagger.json, /api/openapi.json, /api-docs, /.well-known/openapi.json.","Checked URL: https://www.swapcard.com"],"fix":"Publish the API's OpenAPI document at /openapi.json or /.well-known/openapi.json and link it from the docs."}],"fixArtifacts":{"locked":true,"count":2,"summaries":[{"id":"interfaces_note:notes","kind":"interfaces_note","title":"Machine interfaces: where you stand","path":"notes","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["The developer surface is built in an order where every published pointer answers."]}},{"id":"pricing_md:pricing-md","kind":"pricing_md","title":"pricing.md","path":"/pricing.md","effort":{"minutes":20,"role":"owner"},"outcome":{"dimension":"agent_aware_instrumentation","external":["A plain-text price list is available at the published URL."]}}]},"feedback":{"endpoint":"/api/feedback","mcpTool":"rate_fix","targets":[{"type":"report","key":"report"},{"type":"dimension","dimensionKey":"machine_discoverability","key":"dimension:machine_discoverability"},{"type":"dimension","dimensionKey":"programmatic_onboarding","key":"dimension:programmatic_onboarding"},{"type":"dimension","dimensionKey":"pricing_legibility","key":"dimension:pricing_legibility"},{"type":"dimension","dimensionKey":"agent_aware_instrumentation","key":"dimension:agent_aware_instrumentation"},{"type":"dimension","dimensionKey":"machine_fetchable_trust","key":"dimension:machine_fetchable_trust"},{"type":"dimension","dimensionKey":"commercial_rails","key":"dimension:commercial_rails"},{"type":"dimension","dimensionKey":"steps_to_first_value","key":"dimension:steps_to_first_value"},{"type":"dimension","dimensionKey":"required_fields","key":"dimension:required_fields"},{"type":"dimension","dimensionKey":"verification_walls","key":"dimension:verification_walls"},{"type":"dimension","dimensionKey":"error_recovery","key":"dimension:error_recovery"},{"type":"issue","dimensionKey":"programmatic_onboarding","checkId":"openapi","key":"issue:programmatic_onboarding:openapi"}]}}