Export Report
OVERALL SCORE
Level 3, Bot-Aware
- AI Discoverability 61 out of 100
- Agent Ease of Use 51 out of 100
- Security & Trust 46 out of 100
- GEO, AIO and AEO 71 out of 100
- SEO 92 out of 100
- Performance 73 out of 100
- Accessibility 11 out of 100
What AI sees of your website

24/7 Outsourced IT Support in Westchester | Cloud 9 Internet
Outsourced 24/7 IT support for Westchester businesses since 1993. Managed IT, cybersecurity, helpdesk, and cloud services from Cloud 9 Internet. Free IT assessment.
Next step
Turn this report into a fix workflow
3 failed checks are ready to move into MCP or CLI remediation. Generate a repair prompt, connect the scanner to your coding agent, or open the integration docs before your next rescan.
| Metric | Score | Status | Passed | Failed | Warning | Evidence |
|---|---|---|---|---|---|---|
| AI Discoverability | 61 | Needs work | 34 | 3 | 0 | View details |
| Discoverability | 67 | Needs work | 8 | 0 | 0 | |
| Content Readiness | 66 | Needs work | 20 | 0 | 0 | |
| Bot Access Control | 52 | Needs work | 6 | 3 | 0 | View details |
| Agent Ease of Use | 51 | Needs work | 24 | 7 | 1 | View details |
| API | 44 | Priority fix | 7 | 4 | 1 | View details |
| Auth | 41 | Priority fix | 6 | 3 | 0 | View details |
| MCP | 45 | Priority fix | 2 | 0 | 0 | |
| Agent Commerce | 58 | Needs work | 7 | 0 | 0 | |
| Google Agentic Browsing | 67 | Needs work | 2 | 0 | 0 | |
| GEO, AIO and AEO | 71 | Needs work | 9 | 0 | 0 | |
| GEO Readiness | Not Applicable | Not Applicable | 3 | 0 | 0 | |
| AIO Readiness | Not Applicable | Not Applicable | 3 | 0 | 0 | |
| AEO Readiness | Not Applicable | Not Applicable | 3 | 0 | 0 | |
| SEO | 92 | Strong | 9 | 0 | 0 | |
| SEO | 92 | Strong | 9 | 0 | 0 | |
| Security & Trust | 46 | Priority fix | 8 | 0 | 0 | |
| Security & Trust | 46 | Priority fix | 8 | 0 | 0 | |
| Performance | 73 | Needs work | 12 | 0 | 0 | |
| Performance | 73 | Needs work | 12 | 0 | 0 |
Prioritized recommendations
Issues ranked by score impact
3 items need attention
Agent Ease of UseAuthEmerging recommendation
Auth.md Agent Registration
Auth.md Agent Registration failed at "Fetch and validate /auth.md".
90 Fail
Agent Ease of UseAuthEmerging recommendation
Auth.md Agent Registration
Auth.md Agent Registration failed at "Fetch and validate /auth.md".
Needs attention
Auth.md Agent Registration
Issue
auth.md response did not match Auth.md v1 agent registration guidance. Content-Type "text/html; charset=utf-8" is not Markdown or text/plain; missing OAuth Protected Resource Metadata discovery guidance; missing OAuth authorization-server metadata guidance; missing Auth.md credential type guidance.
Details
Why it matters
Human login and signup flows are often opaque to agents. Auth.md gives automated clients a stable registration contract instead of forcing them to scrape docs, automate browser forms, or guess credential flows.
Check name
Auth.md Agent Registration
Score
10/100
Status
fail
Category
Auth
Maturity
Emerging recommendation
Goal
Publish Auth.md v1 metadata so agents can discover how to register, claim a user, and obtain credentials.
Result
Auth.md Agent Registration failed at "Fetch and validate /auth.md".
Validation steps
Fetch and validate /auth.md
auth.md response did not match Auth.md v1 agent registration guidance. Content-Type "text/html; charset=utf-8" is not Markdown or text/plain; missing OAuth Protected Resource Metadata discovery guidance; missing OAuth authorization-server metadata guidance; missing Auth.md credential type guidance.
/auth.md is missing or not usable as agent registration guidance
Validate protected resource metadata
Response is not valid JSON.
Auth.md protected-resource metadata is missing or incomplete
Validate Auth.md authorization metadata
Response is not valid JSON.
Authorization-server metadata lacks Auth.md v1 fields
Evidence log3 steps · 19 lines
Fetch and validate /auth.md [fail]! auth.md response did not match Auth.md v1 agent registration guidance. Content-Type "text/html; charset=utf-8" is not Markdown or text/plain; missing OAuth Protected Resource Metadata discovery guidance; missing OAuth authorization-server metadata guidance; missing Auth.md credential type guidance.INFOFetch and validate /auth.mdINFOFetch Auth.md-related resource path="/auth.md" statusCode=200 contentType="text/html; charset=utf-8" bytes=1447418FAILCompare response Content-Type with expected Auth.md media type actual=false expected=trueFAILCompare Auth.md/OAuth metadata validation result actual=false expected=trueFAILCompare Auth.md content length actual=1316369 expected=">= 80 characters"FAILAuth.md validation issue issue="auth.md response did not match Auth.md v1 agent registration guidance. Content-Type \"text/html; charset=utf-8\" is not Markdown or text/plain; missing OAuth Protected Resource Metadata discovery guidance; missing OAuth authorization-server metadata guidance; missing Auth.md credential type guidance."FAILauth.md response did not match Auth.md v1 agent registration guidance. Content-Type "text/html; charset=utf-8" is not Markdown or text/plain; missing OAuth Protected Resource Metadata discovery guidance; missing OAuth authorization-server metadata guidance; missing Auth.md credential type guidance.Validate protected resource metadata [fail]! Response is not valid JSON.INFOValidate protected resource metadataINFOFetch Auth.md-related resource path="/.well-known/oauth-protected-resource" statusCode=200 contentType="text/html; charset=utf-8" bytes=1447418FAILCompare response Content-Type with expected Auth.md media type actual=false expected=trueFAILCompare Auth.md/OAuth metadata validation result actual=false expected=trueFAILAuth.md validation issue issue="Response is not valid JSON."FAILResponse is not valid JSON.Validate Auth.md authorization metadata [fail]! Response is not valid JSON.INFOValidate Auth.md authorization metadataINFOFetch Auth.md-related resource path="/.well-known/oauth-authorization-server" statusCode=200 contentType="text/html; charset=utf-8" bytes=1447418FAILCompare response Content-Type with expected Auth.md media type actual=false expected=trueFAILCompare Auth.md/OAuth metadata validation result actual=false expected=trueFAILAuth.md validation issue issue="Response is not valid JSON."FAILResponse is not valid JSON.
AI DiscoverabilityBot Access ControlEmerging recommendation
ai.txt policy
ai.txt policy failed at "Validate transport".
80 Fail
AI DiscoverabilityBot Access ControlEmerging recommendation
ai.txt policy
ai.txt policy failed at "Validate transport".
Needs attention
ai.txt policy
Issue
ai.txt appears to be an HTML page or error document rather than a plain-text policy.
Details
Why it matters
ai.txt is a fragmented emerging convention. It can communicate human-readable AI crawling, training, attribution, restriction, and contact guidance, but it is not a standard access-control mechanism and absence should not be penalized.
Check name
ai.txt policy
Score
20/100
Status
fail
Category
Bot Access Control
Maturity
Emerging recommendation
Goal
Publish an advisory human-readable AI usage policy only when the site intentionally needs one.
Result
ai.txt policy failed at "Validate transport".
Validation steps
Validate transport
ai.txt appears to be an HTML page or error document rather than a plain-text policy.
/ai.txt transport is invalid or not plain text
Parse ai.txt policy
Transport validation failed before policy parsing could be trusted.
/ai.txt policy format is missing required sections or non-standard
Validate policy content
ai.txt appears to expose secrets, tokens, or credentials.
/ai.txt content is incomplete or unsafe
Evidence log3 steps · 14 lines
Validate transport [fail]! ai.txt appears to be an HTML page or error document rather than a plain-text policy.INFOValidate transportINFOChecking ai.txt media type, size, line count, and whether the response looks like plain text contentType="text/html; charset=utf-8" length=1447418 lineCount=4419FAILCompare media type to preferred text/plain transport actual="text/html" expected="text/plain preferred; readable text required"FAILai.txt appears to be an HTML page or error document rather than a plain-text policy.Parse ai.txt policy [fail]! Transport validation failed before policy parsing could be trusted.INFOParse ai.txt policyINFODetecting ai.txt convention from bracket sections, frontmatter, headings, and ai.txt context linksINFODetected policy structure convention="unknown-text" sections=[] markdownHeadings=[]WARNCheck AI Visibility required sections actual="missing identity, permissions, restrictions" expected="identity, permissions, and restrictions" missingRecommended=["attribution","contact","content-types"]WARNTransport validation failed before policy parsing could be trusted.Validate policy content [fail]! ai.txt appears to expose secrets, tokens, or credentials.INFOValidate policy contentINFOChecking required section content, permission/restriction language, attribution, contact details, and safety risks convention="unknown-text"INFODetected policy signals hasPermissionLanguage=true hasRestrictionLanguage=true hasTrainingLanguage=true hasAttributionLanguage=true hasContact=falseFAILCheck required and recommended section coverage actual={"missingRequired":["identity","permissions","restrictions"],"missingRecommended":["attribution","contact","content-types"]} expected={"missingRequired":[],"recommendedPresentWhenPossible":true}FAILai.txt appears to expose secrets, tokens, or credentials. possibleSecrets=["/ai.txt: Public metadata appears to expose a secret detected by Betterleaks. match=\"generic-api-key\" snippet=\"pmc_...mJUL\"","/ai.txt: Public metadata appears to expose a secret detected by Betterleaks. match=\"generic-api-key\" snippet=\"pmc_...mcvS\"","/ai.txt: Public metadata appears to expose a secret detected by Betterleaks. match=\"generic-api-key\" snippet=\"6LeD...DDpX\"","/ai.txt: Public metadata appears to expose a secret detected by Betterleaks. match=\"generic-api-key\" snippet=\"6Lfj...SUu7\""]
Agent Ease of UseAPIEstablished
API Catalog
API Catalog failed at "Validate API catalog media type".
63 Fail
Agent Ease of UseAPIEstablished
API Catalog
API Catalog failed at "Validate API catalog media type".
Needs attention
API Catalog
Issue
Content-Type "text/html; charset=utf-8" is not valid for an RFC 9727 API catalog.
Details
Why it matters
API catalogs help agents find API endpoints, service descriptions, documentation, status resources, auth metadata, and related machine-readable contracts without guessing entry points.
Check name
API Catalog
Score
37/100
Status
fail
Category
API
Maturity
Established
Goal
Publish an API catalog for automated public API discovery using RFC 9727 when this origin exposes public APIs.
Result
API Catalog failed at "Validate API catalog media type".
Validation steps
Check API catalog HEAD Link header
HEAD /.well-known/api-catalog did not expose a Link header with rel="api-catalog".
API catalog HEAD Link discovery is incomplete
Validate API catalog media type
Content-Type "text/html; charset=utf-8" is not valid for an RFC 9727 API catalog.
API catalog media type is not application/linkset+json
Validate Linkset shape
Unexpected token '<', "<!DOCTYPE "... is not valid JSON
API catalog Linkset shape is invalid
Unexpected token '<', "<!DOCTYPE "... is not valid JSON
Classify API catalog relations
API catalog did not include API endpoint links or useful API discovery relations.
API catalog lacks useful API relations
Validate API catalog targets
API catalog did not expose any href targets to validate.
API catalog targets are unreachable or media types mismatch
Evidence log5 steps · 23 lines
Check API catalog HEAD Link header [warning]! HEAD /.well-known/api-catalog did not expose a Link header with rel="api-catalog".INFOCheck API catalog HEAD Link headerINFOSend HEAD request to API catalog path attempted=true statusCode=200 contentType="text/html; charset=utf-8"WARNCompare HEAD Link rel=api-catalog count actual=0 expected="> 0"WARNHEAD /.well-known/api-catalog did not expose a Link header with rel="api-catalog". status="warning"Validate API catalog media type [fail]! Content-Type "text/html; charset=utf-8" is not valid for an RFC 9727 API catalog.INFOValidate API catalog media typeFAILCompare API catalog media type actual="text/html; charset=utf-8" expected="application/linkset+json"FAILCompare JSON compatibility fallback actual=false expected=trueFAILContent-Type "text/html; charset=utf-8" is not valid for an RFC 9727 API catalog.Validate Linkset shape [fail]! Unexpected token '<', "<!DOCTYPE "... is not valid JSONINFOValidate Linkset shapeFAILCompare Linkset JSON parse result actual=false expected=trueFAILCompare top-level linkset item count actual=0 expected="> 0"FAILCompare extracted href target count actual=0 expected="> 0"FAILLinkset shape issue issue="Unexpected token '<', \"<!DOCTYPE \"... is not valid JSON"FAILLinkset JSON parse error error="Unexpected token '<', \"<!DOCTYPE \"... is not valid JSON"FAILUnexpected token '<', "<!DOCTYPE "... is not valid JSONClassify API catalog relations [fail]! API catalog did not include API endpoint links or useful API discovery relations.INFOClassify API catalog relationsINFOClassify API catalog relation types relations=[] summary={"registered":[],"metadata":[],"adjacent":[],"community":[],"legacy":[],"unknown":[]}FAILCompare registered or metadata API relation count actual=0 expected="> 0"FAILAPI catalog did not include API endpoint links or useful API discovery relations.Validate API catalog targets [fail]! API catalog did not expose any href targets to validate.INFOValidate API catalog targetsINFOFetch same-origin API catalog targets and record same-site/external skipsFAILCompare API catalog target failure count actual=0 expected=0FAILAPI catalog did not expose any href targets to validate.
Sign in to see 46 other issues and the full report
Create a free account to unlock every issue, evidence details, exports, and higher free limits.
Fix with MCP or CLI
Use this report as the handoff into remediation. Generate a coding-agent prompt with the failing checks attached, or jump to the MCP and CLI setup docs before your next rescan.
Score history
Public scan score over time
Public reports for this website origin. Select any point or report link to open that canonical report.
| Scan date | Score | Readiness | Report |
|---|---|---|---|
| 51/100 | Level 3, Bot-Aware | Current report |