{"slug":"grain-sk2vay","companyName":"Grain","domain":"grain.com","url":"https://grain.com","headline":"0 human and 6 agent dimensions measured from the pages checked; remaining dimensions are not scored.","compositeScore":48,"humanScore":null,"agentScore":48,"doorGap":null,"humanMeasured":0,"agentMeasured":6,"percentile":null,"humanPercentile":null,"agentPercentile":null,"isPartial":true,"depth":"free","siteClass":"b2b_saas","scannerVersion":49,"scannerRelease":"c49d1def936f56a5ab0871f38c5e6412433ec37a","scoringMethodologyVersion":1,"evidenceSchemaVersion":1,"benchmarkEdition":"methodology-1","scannedAt":"2026-09-10T20:26:03.104Z","unlocked":false,"mission":{"steps":[{"url":"https://grain.com","outcome":"ok","purpose":"reach the site at all"},{"url":"https://grain.com/robots.txt","outcome":"ok","purpose":"find out whether machines are welcome"},{"url":"https://grain.com","outcome":"ok","purpose":"ask whether the door opens for requests carrying the AI crawlers' names"},{"url":"https://grain.com/llms.txt","outcome":"missing","purpose":"read the site's own guide for language models"},{"url":"https://grain.com/sitemap.xml","outcome":"ok","purpose":"find out what pages exist"},{"url":"https://grain.com/.well-known/security.txt","outcome":"missing","purpose":"find a contact route for machines"},{"url":"https://grain.com","outcome":"missing","purpose":"find an MCP manifest at the standard paths checked"},{"url":"https://grain.com/.well-known/ai-plugin.json","outcome":"missing","purpose":"find an agent plugin manifest"},{"url":"https://grain.com","outcome":"missing","purpose":"find out whether verified agents are recognised"},{"url":"https://grain.com","outcome":"ok","purpose":"read the homepage as data rather than as a page"},{"url":"https://grain.com","outcome":"missing","purpose":"find a machine readable API spec"},{"url":"https://grain.com","outcome":"missing","purpose":"read the developer documentation"},{"url":"https://grain.com/pricing","outcome":"ok","purpose":"read the prices without running JavaScript"},{"url":"https://grain.com","outcome":"ok","purpose":"find a comparison page worth citing"},{"url":"https://grain.com/live-demo","outcome":"missing","purpose":"walk the way a visitor would, to a signup form or a product"}],"verdict":"The scanner recorded successful observations for 7 of 15 checks, but could not read the site's own guide for language models. It came up empty on 7 other checks too."},"observations":[{"url":"https://grain.com/live-demo","step":1,"detail":"Primary entry is \"Book a demo\", a sales route. 2 steps from the homepage.","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. No user agent rule refused the tested retrieval crawler names.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":7}},{"key":"programmatic_onboarding","audience":"agent","score":7,"summary":"No API interface was identified through the discovery paths and homepage links checked. OAuth authorization metadata is published. The observed entry link leads to a sales page.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":3}},{"key":"pricing_legibility","audience":"agent","score":96,"summary":"4 prices are readable without JavaScript. An enterprise tier routes to sales, which is standard practice and not counted against the score. The plans are published as Offer structured data too. The pricing page carries FAQ markup.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":2}},{"key":"agent_aware_instrumentation","audience":"agent","score":20,"summary":"No MCP manifest was identified at the discovery paths checked. OAuth authorization-server metadata is published; this alone does not identify an MCP endpoint.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":4}},{"key":"machine_fetchable_trust","audience":"agent","score":40,"summary":"No security.txt was identified at the checked path. The homepage answers automated requests.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":2}},{"key":"commercial_rails","audience":"agent","score":27,"summary":"Prices are published in raw HTML. The entry point is a sales conversation. The plans are published as Offer structured data.","measurement":{"status":"observed"},"evidence":{"locked":true,"count":2}},{"key":"steps_to_first_value","audience":"human","score":null,"summary":"Not measured: this scan did not reach the page or action needed to verify it.","measurement":{"reason":"not_reached","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"required_fields","audience":"human","score":null,"summary":"Not measured: our scanner could not identify the required evidence on the pages checked.","measurement":{"reason":"unsupported_detection","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"verification_walls","audience":"human","score":null,"summary":"Not measured: this scan did not reach the page or action needed to verify it.","measurement":{"reason":"not_reached","status":"unmeasured"},"evidence":{"locked":true,"count":0}},{"key":"error_recovery","audience":"human","score":null,"summary":"Not measured: this scan did not reach the page or action needed to verify it.","measurement":{"reason":"not_reached","status":"unmeasured"},"evidence":{"locked":true,"count":0}}],"issues":[{"rank":1,"title":"No valid security.txt was identified at /.well-known/security.txt.","dimensionKey":"machine_fetchable_trust","evidence":["/.well-known/security.txt: not found (404)","Checked URL: https://grain.com/.well-known/security.txt"],"fix":"Publish /.well-known/security.txt with a contact route."},{"rank":2,"title":"No valid llms.txt was identified at the site root.","dimensionKey":"machine_discoverability","evidence":{"locked":true,"count":2},"fix":null}],"fixArtifacts":{"locked":true,"count":3,"summaries":[{"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."]}},{"id":"security_txt:well-known-security-txt","kind":"security_txt","title":"security.txt","path":"/.well-known/security.txt","effort":{"minutes":10,"role":"owner"},"outcome":{"dimension":"machine_fetchable_trust","external":["Researchers and automated scanners find a disclosure address instead of guessing one."]}},{"id":"llms_txt:llms-txt","kind":"llms_txt","title":"llms.txt","path":"/llms.txt","effort":{"minutes":15,"role":"owner"},"outcome":{"dimension":"machine_discoverability","external":["Assistants that read llms.txt get a curated map of the site instead of guessing from the homepage."]}}]},"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":"machine_fetchable_trust","checkId":"security_txt","key":"issue:machine_fetchable_trust:security_txt"},{"type":"issue","dimensionKey":"machine_discoverability","checkId":"llms_txt","key":"issue:machine_discoverability:llms_txt"}]}}