AgenticWebScore
Scan

Protocol Discovery · Recommended · High impact

Service/product scope machine-readable

An agent must be able to answer "what does this site offer, and to whom".

  • Recommended
  • High impact
  • Draft standard
Service/product scope machine-readable — Property, Value
Property Value
Check idservice-schema
DimensionProtocol Discovery (25%)
TierRecommended — pool 20 pts
Weight inside tier2
ImpactHigh
MaturityDraft — A published specification that is not yet ratified.
ConditionalNo
Publishing skillservice-schema
Standards—

What is measured

The scanner reads the homepage JSON-LD and looks for a schema.org statement of what is offered and to whom: a Service (or Product) node with serviceType or category, a provider, and areaServed or audience. It passes when such a node names the service type, the provider organization and the served area or audience; it partially passes when only a generic Organization or WebSite node is present, so an agent cannot tell what is offered or which customers it is for.

Reproduce it yourself

You do not have to take our word for any of this. Run the same measurement against your own domain:

              DOMAIN=https://your-domain.example
curl -sS "$DOMAIN/" | tr -d '\n' | grep -oE '"@type":"(Service|Product|ProfessionalService|Organization)"|"(serviceType|category|provider|areaServed|audience)":' | sort -u
            

The fix

This is the artifact to ship. It is the complete change, not a description of one.

              {
  "@context": "https://schema.org",
  "@type": "Service",
  "name": "Agent readiness audit",
  "serviceType": "Website agent-readiness audit and remediation",
  "category": "Consulting",
  "provider": { "@type": "Organization", "name": "Example Inc.", "url": "https://your-domain.example" },
  "areaServed": [
    { "@type": "Country", "name": "United States" },
    { "@type": "Country", "name": "Germany" }
  ],
  "audience": { "@type": "BusinessAudience", "name": "E-commerce and SaaS teams" },
  "termsOfService": "https://your-domain.example/terms",
  "availableChannel": {
    "@type": "ServiceChannel",
    "serviceUrl": "https://your-domain.example/contact",
    "availableLanguage": ["en", "de"]
  }
}
            

Related checks

Related checks — Check, Tier, Impact, Same skill
Check Tier Impact Same skill
mcp-card — MCP server cardEssentialHigh—
openapi — OpenAPI definitionEssentialHigh—
oauth-discovery — OAuth discovery documentsEssentialHigh—
api-catalog — API catalogRecommendedMedium—
agent-skills — Agent Skills declarationRecommendedMedium—
a2a-card — A2A agent cardRecommendedMedium—
a2a-signed — Cryptographically signed agent cardEmergingMedium—
auth-md — /auth.md agent authentication guideEmergingMedium—