Scovant Core — https://example.com/

Profile: commerce (requested auto, confidence 85%)

Core version: 0.1.1

37 PASS, 0 WARN, 0 FAIL, 8 N/A, 0 ERROR (45 checks)

Scovant Core Static Signal Score

100 / 100

Grade: A · Scope: CANONICAL · Status: OK · Coverage: 100% · Errors: 0

Categories

CategoryWeightScoreEvaluated / applicable
Access & Discovery2510025 / 25
Machine Understanding2510023 / 23
Agent Interfaces201005 / 5
Trust & Commerce1510015 / 15
Operability & Efficiency1510011 / 11

Findings

StatusIDTitleSeveritySummary
PASSCORE-ACCESS-001HTTPS reachabilityinfoHTTPS entry URL answered 200.
PASSCORE-ACCESS-002robots.txt availability and syntaxinforobots.txt answered 200 with a well-formed policy.
PASSCORE-ACCESS-003AI search crawler policyinforobots.txt declares all major search and answer-engine crawlers as allowed.
PASSCORE-ACCESS-004Training vs. search crawler separationinfoTraining/content-use crawler(s) GPTBot, Google-Extended are restricted while search/retrieval crawlers remain allowed.
PASSCORE-ACCESS-005Sitemap availabilityinfoA valid urlset sitemap was found at https://example.com/sitemap.xml.
PASSCORE-ACCESS-006Sitemap freshnessinfoSitemap lastmod values look plausible.
PASSCORE-ACCESS-007Canonical URL integrityinfoThe canonical URL matches the entry URL.
PASSCORE-ACCESS-008IndexabilityinfoThe entry page does not declare noindex.
PASSCORE-ACCESS-009llms.txt presence and integrityinfollms.txt is well-formed and its 2 checked references resolve.
PASSCORE-ACCESS-010Content-Signal declarationinfoContent-Signal is declared and internally consistent.
PASSCORE-INTERFACE-001MCP discovery presenceinfoAn MCP discovery file is published and well-formed.
PASSCORE-INTERFACE-002MCP server declaration qualityinfoEvery declared MCP server has a name, url, transport, and a real description.
PASSCORE-MACHINE-001JSON-LD parseabilityinfoEvery JSON-LD block on the sampled pages parses as valid JSON.
PASSCORE-MACHINE-002Organization entityinfoAn Organization entity declares name and url.
PASSCORE-MACHINE-003WebSite/WebPage entityinfoA WebSite or WebPage entity was found on the sampled pages.
PASSCORE-MACHINE-004Product structured datainfoA sampled product page exposes a Product entity with an identifier.
PASSCORE-MACHINE-005Offer price, currency, and availabilityinfoThe product's Offer declares price, currency, and availability.
PASSCORE-MACHINE-006Product identifier countinfoProduct entities declare two or more stable identifiers.
PASSCORE-MACHINE-007BreadcrumbsinfoA sampled non-entry page declares a BreadcrumbList.
PASSCORE-MACHINE-008Metadata qualityinfoThe entry page declares title, description, and Open Graph tags.
PASSCORE-MACHINE-009Heading structureinfoThe entry page has a single H1 and no skipped heading levels.
PASSCORE-MACHINE-010Language declarationinfoThe entry page declares a valid `lang` attribute.
PASSCORE-MACHINE-011Image alt coverageinfo1/1 images have an alt attribute (ratio 100%).
PASSCORE-OPERABILITY-001Server-rendered core contentinfoThe entry page's static HTML carries 337 chars of visible text.
PASSCORE-OPERABILITY-002Redirect chain complexityinfoThe entry URL redirects 0 time(s) before settling.
PASSCORE-OPERABILITY-003Cache validatorsinfoThe entry response carries an ETag or Last-Modified validator.
PASSCORE-OPERABILITY-004Broken machine-consumable endpointsinfoAll 6 checked machine-consumable reference(s) resolve.
PASSCORE-OPERABILITY-005Agent parse costinfoThe entry page's estimated parse cost is ~84 tokens (low).
PASSCORE-TRUST-001Contact/support discoverabilityinfoA contact or support link was found on the entry page.
PASSCORE-TRUST-002Shipping policy discoverabilityinfoA shipping policy page was found with substantive content.
PASSCORE-TRUST-003Returns/refund policy discoverabilityinfoA returns/refund policy page was found with substantive content.
PASSCORE-TRUST-004Privacy policy discoverabilityinfoA privacy policy page was found with substantive content.
PASSCORE-TRUST-005Terms/conditions discoverabilityinfoA terms/conditions page was found with substantive content.
PASSCORE-TRUST-006security.txt discoverabilityinfoA valid security.txt was found with a contact method.
PASSCORE-TRUST-007Pricing discoverabilityinfoPrices are exposed as structured product data.
N/ACORE-INTERFACE-003WebMCP static presenceinfoNo static WebMCP marker was found on the sampled pages.
N/ACORE-INTERFACE-005OpenAPI discoveryinfoNot applicable to the commerce profile.
N/ACORE-INTERFACE-006OAuth authorization-server metadatainfoNot applicable to the commerce profile.
N/ACORE-INTERFACE-007OAuth protected-resource metadatainfoNot applicable to the commerce profile.
N/ACORE-OPERABILITY-006Form/control labelsinfoNo forms were found on any sampled page.

Experimental (not scored)

N/A: CORE-INTERFACE-004, CORE-INTERFACE-009, CORE-OPERABILITY-007

Evidence

CORE-ACCESS-001 — HTTPS reachability
{
  "final_url": "https://example.com/",
  "input_url": "https://example.com/",
  "redirect_chain": [],
  "redirect_count": 0,
  "status": 200
}
CORE-ACCESS-002 — robots.txt availability and syntax
{
  "error": null,
  "resource": "https://example.com/robots.txt",
  "served_as_html": false,
  "sha256": "a3b24ab6056572a5c127bc7a4dba409e656da1245ef936633bab52b8b395efcf",
  "sitemap_count": 1,
  "status": 200,
  "unknown_directives": []
}
CORE-ACCESS-003 — AI search crawler policy
{
  "declared_policy": {
    "Applebot": true,
    "Bingbot": true,
    "Claude-SearchBot": true,
    "Googlebot": true,
    "OAI-SearchBot": true,
    "PerplexityBot": true
  },
  "http_status": 200,
  "resource": "https://example.com/robots.txt",
  "robots_present": true,
  "user_fetch_policy": {
    "ChatGPT-User": true,
    "Claude-User": true,
    "DuckAssistBot": true,
    "Perplexity-User": true
  }
}
CORE-ACCESS-004 — Training vs. search crawler separation
{
  "explicit_separation": true,
  "http_status": 200,
  "resource": "https://example.com/robots.txt",
  "search_blocked": [],
  "training_blocked": [
    "GPTBot",
    "Google-Extended"
  ]
}
CORE-ACCESS-005 — Sitemap availability
{
  "entry_count": 3,
  "exists": true,
  "kind": "urlset",
  "parse_error": null,
  "probe_error": null,
  "probe_status": 200,
  "served_as_html": false,
  "url": "https://example.com/sitemap.xml",
  "valid": true
}
CORE-ACCESS-006 — Sitemap freshness
{
  "dated_entry_count": 3,
  "entry_count": 3,
  "newest": "2026-08-15",
  "oldest": "2026-07-01",
  "url": "https://example.com/sitemap.xml"
}
CORE-ACCESS-007 — Canonical URL integrity
{
  "canonical_url": "https://example.com/",
  "entry_url": "https://example.com/"
}
CORE-ACCESS-008 — Indexability
{
  "robots_meta": null,
  "x_robots_tag": null
}
CORE-ACCESS-009 — llms.txt presence and integrity
{
  "errors": [],
  "references_broken": [],
  "references_checked": 2,
  "references_unresolved": [],
  "resource": "https://example.com/llms.txt",
  "valid": true
}
CORE-ACCESS-010 — Content-Signal declaration
{
  "declared": true,
  "dimensions": {
    "ai-input": "yes",
    "ai-train": "no",
    "search": "yes"
  },
  "syntax_errors": []
}
CORE-INTERFACE-001 — MCP discovery presence
{
  "declared_name": "example-shop",
  "endpoints": [
    "https://example.com/mcp"
  ],
  "exists": true,
  "http_status": 200,
  "resource": "https://example.com/.well-known/mcp.json",
  "server_card": false,
  "valid": true
}
CORE-INTERFACE-002 — MCP server declaration quality
{
  "servers_count": 1
}
CORE-INTERFACE-003 — WebMCP static presence
{
  "pages_scanned": 3,
  "pages_with_marker": []
}
CORE-MACHINE-001 — JSON-LD parseability
{
  "pages": [
    {
      "parsed": 2,
      "raw": 2,
      "url": "https://example.com/"
    },
    {
      "parsed": 2,
      "raw": 2,
      "url": "https://example.com/products/widget"
    },
    {
      "parsed": 0,
      "raw": 0,
      "url": "https://example.com/contact"
    }
  ],
  "parsed_total": 4,
  "raw_total": 4
}
CORE-MACHINE-002 — Organization entity
{
  "found": true,
  "has_description": false,
  "has_logo": true,
  "has_sameAs": false,
  "name": "Example Shop",
  "pages_parsed": 3,
  "url": "https://example.com/"
}
CORE-MACHINE-003 — WebSite/WebPage entity
{
  "found": true,
  "pages_parsed": 3
}
CORE-MACHINE-004 — Product structured data
{
  "has_identifiers": true,
  "pages_parsed": 3,
  "product_pages": [
    "https://example.com/products/widget"
  ]
}
CORE-MACHINE-005 — Offer price, currency, and availability
{
  "availability": "https://schema.org/InStock",
  "currency": "USD",
  "missing": [],
  "price": 19.99,
  "url": "https://example.com/products/widget"
}
CORE-MACHINE-006 — Product identifier count
{
  "count": 2,
  "identifier_keys": [
    "brand",
    "sku"
  ],
  "pages_parsed": 3
}
CORE-MACHINE-007 — Breadcrumbs
{
  "has_breadcrumb": true,
  "non_entry_pages": [
    "https://example.com/products/widget",
    "https://example.com/contact"
  ],
  "non_entry_parsed": 2
}
CORE-MACHINE-008 — Metadata quality
{
  "entry_url": "https://example.com/",
  "issues": [],
  "meta_description": "Example Shop sells widgets.",
  "missing": [],
  "title": "Example Shop — Widgets"
}
CORE-MACHINE-009 — Heading structure
{
  "entry_url": "https://example.com/",
  "h1_count": 1,
  "heading_count": 2,
  "issues": [],
  "levels": [
    "h1",
    "h2"
  ]
}
CORE-MACHINE-010 — Language declaration
{
  "entry_url": "https://example.com/",
  "html_lang": "en"
}
CORE-MACHINE-011 — Image alt coverage
{
  "covered": 1,
  "empty_alt": 0,
  "pages_parsed": 3,
  "ratio": 1.0,
  "total": 1,
  "with_alt": 1
}
CORE-OPERABILITY-001 — Server-rendered core content
{
  "entry_url": "https://example.com/",
  "spa_shell_marker": false,
  "visible_text_chars": 337
}
CORE-OPERABILITY-002 — Redirect chain complexity
{
  "redirect_chain": [],
  "redirect_count": 0
}
CORE-OPERABILITY-003 — Cache validators
{
  "cache_control": null,
  "etag": "\"commerce-good-v1\"",
  "last_modified": null
}
CORE-OPERABILITY-004 — Broken machine-consumable endpoints
{
  "broken": [],
  "broken_count": 0,
  "inconclusive": [
    {
      "source": "mcp_endpoint",
      "status": 404,
      "url": "https://example.com/mcp"
    }
  ],
  "refs_checked": 7,
  "refs_resolved": 6,
  "unresolved": []
}
CORE-OPERABILITY-005 — Agent parse cost
{
  "dom_nodes": 24,
  "estimated_tokens": 84,
  "html_bytes": 1315,
  "level": "LOW",
  "link_count": 7,
  "script_bytes": 247,
  "script_ratio": 0.18783269961977186,
  "structured_bytes": 247,
  "text_chars": 337,
  "token_chars_ratio": 4
}
CORE-OPERABILITY-006 — Form/control labels
{
  "totals": {
    "forms": 0,
    "inputs": 0,
    "unlabeled_inputs": 0,
    "unlabeled_selects": 0,
    "unnamed_buttons": 0
  }
}
CORE-TRUST-001 — Contact/support discoverability
{
  "contact_url": "https://example.com/contact",
  "kind": "page"
}
CORE-TRUST-002 — Shipping policy discoverability
{
  "served_as_html": true,
  "status": 200,
  "text_chars": 300,
  "url": "https://example.com/shipping"
}
CORE-TRUST-003 — Returns/refund policy discoverability
{
  "served_as_html": true,
  "status": 200,
  "text_chars": 312,
  "url": "https://example.com/returns"
}
CORE-TRUST-004 — Privacy policy discoverability
{
  "served_as_html": true,
  "status": 200,
  "text_chars": 303,
  "url": "https://example.com/privacy"
}
CORE-TRUST-005 — Terms/conditions discoverability
{
  "served_as_html": true,
  "status": 200,
  "text_chars": 334,
  "url": "https://example.com/terms"
}
CORE-TRUST-006 — security.txt discoverability
{
  "contact": true,
  "expires": "2030-01-01T00:00:00Z",
  "expires_valid": true,
  "found_url": "https://example.com/.well-known/security.txt",
  "status": 200
}
CORE-TRUST-007 — Pricing discoverability
{
  "structured_price": 19.99,
  "url": "https://example.com/products/widget"
}

Remediation

Limitations

Not tested by Scovant Core

Core vs Cloud

CapabilityCoreCloud
HTTP reachability
robots.txt
Sitemap
llms.txt
Structured data (JSON-LD)
Product/Offer data
Static crawler policy
Content-Signal
MCP discovery
WebMCP static presence
OpenAPI presence
OAuth authorization-server / protected-resource metadata
UCP profile validity✅ (experimental)
Agent discovery surface (A2A cards, AI-plugin, agents.json, Agent Skills)✅ (experimental)
Core Score
Cloud's full compatibility score
Cloud's full production ruleset
Observed WAF/bot-firewall behavior
Real crawler network access
Browser-based agent simulation
Multi-model execution
MCP tool invocation
WebMCP tool execution/state parity
Tool/UI parity checking
Checkout/task completion
CAPTCHA/challenge behavior
Verified-agent access
Failure attribution
Temporal stability / regressions
Scheduled monitoring
Alerts/webhooks
Hosted, shareable reports
Contextual fix plan

Core measures what a site declares. Cloud measures what real agents actually experience.

Methodology

Category weights are 25/25/20/15/15. Each check contributes PASS = 1, WARN = 0.5, FAIL = 0 to its category; ERROR lowers coverage (a document that could not be read counts against evidence), and N/A is excluded entirely. A scan scores INSUFFICIENT_EVIDENCE below a 60% coverage floor of its applicable weight. A full-selection scan that clears that floor but falls short of 85% coverage, or that hit any ERROR, is reported as DEGRADED (a score, no letter grade) rather than being silently graded on incomplete evidence. Running with checks narrowed or widened via --include/--exclude/--experimental instead reports a NOT_CANONICAL Subset Diagnostic Score over that subset, not the full Core Score. Full reference: docs/methodology.md.

Provenance

scan_id
local-golden
started_at
2026-09-04T00:00:00Z
completed_at
2026-09-04T00:00:00Z
schema_version
1.0
core_version
0.1.1
ruleset_version
2026.09
ruleset_digest
ea4ada4fffbf
python
<runtime>
platform
<runtime>
user_agent
ScovantCore/0.1.1 (+https://github.com/Scovant/scovant-core)
timeout
60.0
max_pages
5
network_mode
fixture
experimental
False
allow_private_networks
False
scan_scope
CANONICAL
included_checks
[]
excluded_checks
[]
error_count
0
evidence_min_coverage
0.6
canonical_min_coverage
0.85