CanAgentUse tools

UCP Suite

Validate Universal Commerce Protocol discovery, then test product search, carts, checkout links, and merchant handoff flows.

MCP Playground

Connect to remote MCP servers, inspect tools and resources, test prompts, auth, headers, notifications, and JSON-RPC responses.

A2A Playground

Inspect Agent Cards, validate advertised endpoints, and prepare safe requests for agent-to-agent workflows.

Agent Website Viewer

Enter a public URL and see the roles, names, landmarks, controls, and blockers that shape how AI agents understand the page.

SCANNED
Jul 6, 2026, 5:50 AM
VISIBILITY
Public
Rescan Report
Share Report
Copy Report Link
Export Report
69/100

OVERALL SCORE

Level 3, Bot-Aware

Moderate readiness for AI agents
AIDiscoverability61%Agent Easeof Use59%Security& Trust82%GEO, AIO, AEO69%SEO92%Performance77%Accessibility81%
  • AI Discoverability 61 out of 100
  • Agent Ease of Use 59 out of 100
  • Security & Trust 82 out of 100
  • GEO, AIO and AEO 69 out of 100
  • SEO 92 out of 100
  • Performance 77 out of 100
  • Accessibility 81 out of 100

CAPTURED SCREENSHOT

Captured website desktop screenshot

What AI sees of your website

Astronomer: The Best Place to Run Apache Airflow® favicon

Astronomer: The Best Place to Run Apache Airflow®

Apache Airflow® orchestrates the world’s data, ML, and AI pipelines. Astro is the best way to build, run, and observe them at scale.

Open Agent View

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.

Fix with MCP / CLI
Detailed report scores grouped by capability area
MetricScoreStatusPassedFailedWarningEvidence
AI Discoverability
61
Needs work3042View details
Discoverability
63
Needs work700
Content Readiness
79
Mostly ready2232View details
Bot Access Control
45
Priority fix110View details
Agent Ease of Use
59
Needs work800
API
50
Needs work400
Auth
48
Priority fix100
Google Agentic Browsing
100
Strong300
GEO, AIO and AEO
69
Needs work1000
GEO Readiness
Not Applicable
Not Applicable300
AIO Readiness
Not Applicable
Not Applicable400
AEO Readiness
Not Applicable
Not Applicable300
SEO
92
Strong900
SEO
92
Strong900
Security & Trust
82
Mostly ready2222View details
Security & Trust
82
Mostly ready2222View details
Performance
77
Mostly ready1600
Performance
77
Mostly ready1600

Prioritized recommendations

Issues ranked by score impact

3 items need attention

AI DiscoverabilityContent ReadinessEstablished

Content freshness signals

Content freshness signals is missing or incomplete.

75 Fail

Needs attention

Content freshness signals

Failed check
01

Issue

Content freshness signals are invalid: json-ld datePublished is not a parseable date ()..

Details

02

Why it matters

Freshness signals help agents, crawlers, and search systems decide whether content is current enough to cite, summarize, cache, or compare against newer sources.

Check name

Content freshness signals

Score

25/100

Status

fail

Category

Content Readiness

Maturity

Established

Goal

Expose modified and published dates for freshness-aware retrieval, citation, and ranking.

Result

Content freshness signals is missing or incomplete.

Validation steps

  1. Validate Last-Modified header

    No valid Last-Modified HTTP header was found.

    Last-Modified freshness signal is missing or invalid
  2. Validate structured freshness dates

    No Schema.org freshness dates were found.

    Structured freshness dates are missing or invalid
  3. Validate metadata freshness dates

    No Open Graph, Dublin Core, or generic meta freshness date was found.

    Metadata freshness dates are missing or invalid
  4. Corroborate with sitemap lastmod

    Add a sitemap entry with a valid lastmod for the canonical page URL when sitemap corroboration is useful.

    Sitemap lastmod corroboration is missing
  5. Check date validity and consistency

    json-ld datePublished is not a parseable date ().

    Freshness dates are invalid or inconsistent
Evidence log5 steps · 20 lines
Validate Last-Modified header [fail]! No valid Last-Modified HTTP header was found.INFOValidate Last-Modified headerINFOReading Last-Modified response headerFAILCheck Last-Modified header is present and parseable actual="missing" expected="valid" alternateDates=[]FAILLast-Modified header is missing or invalidValidate structured freshness dates [warning]! No Schema.org freshness dates were found.INFOValidate structured freshness datesINFOCollecting Schema.org freshness dates from JSON-LD, Microdata, and RDFaWARNCheck structured freshness date count actual=1 expected="> 0" invalidDateCount=1 formats={"json-ld":1} alternateDates=[]WARNStructured freshness dates include invalid values invalidDateCount=1Validate metadata freshness dates [fail]! No Open Graph, Dublin Core, or generic meta freshness date was found.INFOValidate metadata freshness datesINFOCollecting Open Graph, Dublin Core, and generic meta freshness datesFAILCheck metadata freshness date count actual=0 expected="> 0" metaDateCount=0 invalidDateCount=0 alternateDates=[]FAILNo metadata freshness dates foundCorroborate with sitemap lastmod [warning]INFOCorroborate with sitemap lastmodINFODiscovering sitemap candidates and matching the scanned page URL candidateCount=3 attempts=2WARNCheck matching sitemap lastmod actual="invalid match" expected="valid match when available" sitemapUrl="https://www.astronomer.io/sitemap-0.xml" robotsStatusCode=200WARNNo matching sitemap lastmod found after sitemap attempts attempts=2Check date validity and consistency [fail]! json-ld datePublished is not a parseable date ().INFOCheck date validity and consistencyINFOChecking collected freshness dates for invalid values, future dates, and inconsistent orderingFAILCheck critical freshness issue count actual=1 expected=0 warningIssueCount=0 issues=[{"severity":"fail","message":"json-ld datePublished is not a parseable date ()."}]FAILInvalid freshness date issue found issues=["json-ld datePublished is not a parseable date ()."]

AI DiscoverabilityBot Access ControlEstablished

AI bot rules in robots.txt

AI bot rules in robots.txt failed at "Classify AI crawler rules".

69 Fail

Needs attention

AI bot rules in robots.txt

Failed check
01

Issue

No explicit User-agent rules were found for major AI crawler tokens.

Details

02

Why it matters

AI crawler product tokens have different meanings. Explicit robots.txt groups make training, search, and retrieval access policy auditable for compliant crawler operators.

Check name

AI bot rules in robots.txt

Score

31/100

Status

fail

Category

Bot Access Control

Maturity

Established

Goal

Declare deliberate robots.txt rules for major AI training, AI search, user-triggered, and dataset crawlers.

Result

AI bot rules in robots.txt failed at "Classify AI crawler rules".

Validation steps

  1. Classify AI crawler rules

    No explicit User-agent rules were found for major AI crawler tokens.

    robots.txt lacks explicit AI crawler rules
Evidence log1 step · 6 lines
Classify AI crawler rules [fail]! No explicit User-agent rules were found for major AI crawler tokens.INFOClassify AI crawler rulesINFOParsing User-agent groups and Allow/Disallow records for known AI crawler tokens evaluatedPath="/"INFOEvaluating exact User-agent matches before wildcard fallback exactAiPolicyCount=0 totalCrawlerTokens=18FAILNo explicit AI crawler User-agent groups were found examplesExpected=["GPTBot","OAI-SearchBot","ClaudeBot","Google-Extended","CCBot"]FAILCompare explicit AI crawler coverage actual=0 expected="> 0 explicit non-search AI crawler policies" missingTokens=["GPTBot","OAI-SearchBot","ChatGPT-User","ClaudeBot","Claude-SearchBot","Claude-User","Google-Extended","Applebot-Extended","Amazonbot","Amzn-SearchBot","Amzn-User","PerplexityBot"]INFOResolved effective root-path policy for crawler tokens blocked=0 allowed=21 unspecified=0

Security & TrustSecurity & TrustEstablished

Content-Security-Policy

Content-Security-Policy failed at "Evaluate fetch baseline".

50 Fail

Needs attention

Content-Security-Policy

Failed check
01

Issue

default-src is present but not meaningfully restrictive.

Details

02

Why it matters

Content Security Policy reduces the impact of injection bugs by limiting where scripts, styles, frames, forms, and other browser resources can load or execute.

Check name

Content-Security-Policy

Score

50/100

Status

fail

Category

Security & Trust

Maturity

Established

Goal

Constrain browser resource loading and script execution with an enforcing Content-Security-Policy header.

Result

Content-Security-Policy failed at "Evaluate fetch baseline".

Validation steps

  1. Evaluate fetch baseline

    default-src is present but not meaningfully restrictive.

    CSP fetch baseline is too broad or missing
  2. Evaluate script execution

    default-src leaves script execution broadly unrestricted.

    CSP script execution policy is unsafe
  3. Review hardening directives

    CSP is missing recommended hardening directives: form-action.

    CSP hardening directives are missing or weak
  4. Review CSP reporting

    CSP does not define a reporting endpoint.

    CSP reporting is missing or incomplete
Evidence log4 steps · 16 lines
Evaluate fetch baseline [fail]! default-src is present but not meaningfully restrictive.INFOEvaluate fetch baselineINFOEvaluate resource loading fallback defaultSrc=["https:","blob:","data:","ws:","wss:","'self'","'unsafe-inline'","'unsafe-eval'"] explicitFetchDirectives=["object-src"]FAILCompare fetch baseline actual=["https:","blob:","data:","ws:","wss:","'self'","'unsafe-inline'","'unsafe-eval'"] expected="restricted default-src or broad explicit fetch coverage" issue="default-src is present but not meaningfully restrictive."FAILdefault-src is present but not meaningfully restrictive.Evaluate script execution [fail]! default-src leaves script execution broadly unrestricted.INFOEvaluate script executionINFOInspect effective script directive effectiveDirective="default-src" sources=["https:","blob:","data:","ws:","wss:","'self'","'unsafe-inline'","'unsafe-eval'"]FAILCompare script execution posture actual={"hasNonce":false,"hasHash":false,"hasStrictDynamic":false,"hasUnsafeInline":true,"hasUnsafeEval":true,"hasWildcardHost":false,"hasBroadScheme":true,"dangerousSchemes":["blob:","data:"]} expected="constrained script sources without unsafe execution allowances" issue="default-src leaves script execution broadly unrestricted."FAILdefault-src leaves script execution broadly unrestricted.Review hardening directives [warning]! CSP is missing recommended hardening directives: form-action.INFOReview hardening directivesINFOInspect CSP hardening directives objectSrc=["'none'"] baseUri=["'self'"] frameAncestors=["'self'","astronomer.mindtickle.com","admin.mindtickle.com"] formCount=1WARNCompare recommended hardening coverage actual=["form-action"] expected="no missing object-src/base-uri/form-action requirements" issue="CSP is missing recommended hardening directives: form-action."WARNCSP is missing recommended hardening directives: form-action.Review CSP reporting [warning]! CSP does not define a reporting endpoint.INFOReview CSP reportingINFOInspect CSP reporting directives reportOnlyHeaderPresent=false reportOnlyDirectives=[]WARNCompare violation reporting configuration actual="no reporting endpoint" expected="report-to or report-uri present" issue="CSP does not define a reporting endpoint."WARNCSP does not define a reporting endpoint.

Sign in to see 34 other issues and the full report

Create a free account to unlock every issue, evidence details, exports, and higher free limits.

Email code

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.

Fix with MCP / CLI

Score history

Public scan score over time

Public reports for this website origin. Select any point or report link to open that canonical report.

2 reports
Public score history report links
Scan dateScoreReadinessReport
66/100Level 3, Bot-AwareView report
69/100Level 3, Bot-AwareCurrent report