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 4, 2026, 3:29 AM
VISIBILITY
Public
Rescan Report
Share Report
Copy Report Link
Export Report
76/100

OVERALL SCORE

Level 4, Mostly Ready

Good readiness for AI agents
AIDiscoverability80%Agent Easeof Use60%Security& Trust88%GEO, AIO, AEO64%SEO92%Performance94%Accessibility85%
  • AI Discoverability 80 out of 100
  • Agent Ease of Use 60 out of 100
  • Security & Trust 88 out of 100
  • GEO, AIO and AEO 64 out of 100
  • SEO 92 out of 100
  • Performance 94 out of 100
  • Accessibility 85 out of 100

CAPTURED SCREENSHOT

Captured website desktop screenshot

What AI sees of your website

UptimeRobot: Free Website Monitoring Service favicon

UptimeRobot: Free Website Monitoring Service

Start monitoring in 30 seconds. Use advanced SSL, keyword and cron monitoring. Get notified by email, SMS, Slack and more. Get 50 monitors for FREE!

Open Agent View

Next step

Turn this report into a fix workflow

2 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
80
Mostly ready4110View details
Discoverability
100
Strong1000
Content Readiness
86
Mostly ready2800
Bot Access Control
58
Needs work310View details
Agent Ease of Use
60
Needs work1842View details
API
92
Strong1200
Auth
48
Priority fix100
MCP
50
Needs work200
Skill Discovery
45
Priority fix132View details
Google Agentic Browsing
67
Needs work210View details
GEO, AIO and AEO
64
Needs work800
GEO Readiness
Not Applicable
Not Applicable200
AIO Readiness
Not Applicable
Not Applicable300
AEO Readiness
Not Applicable
Not Applicable300
SEO
92
Strong900
SEO
92
Strong900
Security & Trust
88
Mostly ready2400
Security & Trust
88
Mostly ready2400
Performance
94
Strong1600
Performance
94
Strong1600

Prioritized recommendations

Issues ranked by score impact

3 items need attention

Agent Ease of UseSkill DiscoveryEmerging recommendation

Agent Skills index

Agent Skills index failed at "Validate discovery index schema".

70 Fail

Needs attention

Agent Skills index

Failed check
01

Issue

Agent Skills index must use $schema https://schemas.agentskills.io/discovery/0.2.0/schema.json.

Details

02

Why it matters

An Agent Skills index lets agents discover task-specific instructions through a small trusted index, then verify and load only the skill artifacts they need.

Check name

Agent Skills index

Score

30/100

Status

fail

Category

Skill Discovery

Maturity

Emerging recommendation

Goal

Publish an Agent Skills discovery index that advertises digest-pinned SKILL.md or archive artifacts.

Result

Agent Skills index failed at "Validate discovery index schema".

Validation steps

  1. Validate discovery index schema

    Agent Skills index must use $schema https://schemas.agentskills.io/discovery/0.2.0/schema.json.

    Agent Skills discovery index schema is invalid
    Top-level issues
    • $schema must be https://schemas.agentskills.io/discovery/0.2.0/schema.json
    Skill warnings
    [
      {
        "index": 0,
        "valid": true,
        "name": "bulk-pause",
        "type": "skill-md",
        "description": "Pause (or resume) many UptimeRobot monitors at once — by tag, search term, or state — around a deployment or maintenance window.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md",
        "digest": "sha256:103574fd3f608b30fa7e79aa01bd87136a847c7603ee4cbf4c50d7b51bfc48ac",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "description should explain when to use the skill",
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "index": 1,
        "valid": true,
        "name": "conventions",
        "type": "skill-md",
        "description": "Conventions and gotchas for every UptimeRobot MCP tool call — monitor types, URL formats, HEARTBEAT URL handling, discovery-before-writes, pagination, time ranges, error codes, and output style. Use whenever you call any uptimerobot:* tool.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md",
        "digest": "sha256:374f432a0a6c9fdb8d41802278cfbb12907c1842765529a7639d121cdb8a1bd9",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "index": 2,
        "valid": true,
        "name": "create-api-monitor",
        "type": "skill-md",
        "description": "Create an API monitor that calls an HTTP endpoint and runs up to five JSON/header assertions combined with AND/OR logic; alerts when assertions fail.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md",
        "digest": "sha256:5bd8432dd21f630c2be6b2ed9d7b0f62034443b665e2d21af646d439f56c8b0a",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "index": 3,
        "valid": true,
        "name": "create-dns-monitor",
        "type": "skill-md",
        "description": "Create a DNS monitor that resolves records for a domain and alerts when they change or the DNS server does not respond.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md",
        "digest": "sha256:be85b5fd74a9dfdfcf8d7df3f8862e28686de068331ddc575c3b5970f03008d1",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "truncated": true,
        "omittedCount": 17,
        "originalCount": 21
      }
    ]
  2. Validate skill entries

    One or more Agent Skills entries have quality or trust warnings.

    One or more skill entries are invalid
    Skill entry findings
    [
      {
        "index": 0,
        "valid": true,
        "name": "bulk-pause",
        "type": "skill-md",
        "description": "Pause (or resume) many UptimeRobot monitors at once — by tag, search term, or state — around a deployment or maintenance window.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md",
        "digest": "sha256:103574fd3f608b30fa7e79aa01bd87136a847c7603ee4cbf4c50d7b51bfc48ac",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "description should explain when to use the skill",
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "index": 1,
        "valid": true,
        "name": "conventions",
        "type": "skill-md",
        "description": "Conventions and gotchas for every UptimeRobot MCP tool call — monitor types, URL formats, HEARTBEAT URL handling, discovery-before-writes, pagination, time ranges, error codes, and output style. Use whenever you call any uptimerobot:* tool.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md",
        "digest": "sha256:374f432a0a6c9fdb8d41802278cfbb12907c1842765529a7639d121cdb8a1bd9",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "index": 2,
        "valid": true,
        "name": "create-api-monitor",
        "type": "skill-md",
        "description": "Create an API monitor that calls an HTTP endpoint and runs up to five JSON/header assertions combined with AND/OR logic; alerts when assertions fail.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md",
        "digest": "sha256:5bd8432dd21f630c2be6b2ed9d7b0f62034443b665e2d21af646d439f56c8b0a",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "index": 3,
        "valid": true,
        "name": "create-dns-monitor",
        "type": "skill-md",
        "description": "Create a DNS monitor that resolves records for a domain and alerts when they change or the DNS server does not respond.",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md",
        "digest": "sha256:be85b5fd74a9dfdfcf8d7df3f8862e28686de068331ddc575c3b5970f03008d1",
        "resolvedUrl": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md",
        "originClass": "external",
        "missing": [],
        "invalid": [],
        "warnings": [
          "artifact URL is cross-origin; clients must treat it as a separate trust boundary"
        ]
      },
      {
        "truncated": true,
        "omittedCount": 17,
        "originalCount": 21
      }
    ]
  3. Verify advertised artifacts

    One or more advertised skill artifacts could not be fetched or failed raw-byte digest verification.

    Advertised skill artifacts could not be verified
    Artifact verification failures
    [
      {
        "index": 0,
        "name": "bulk-pause",
        "type": "skill-md",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md",
        "originClass": "external",
        "statusCode": 200,
        "contentType": "text/plain; charset=utf-8",
        "byteLength": 4654,
        "advertisedDigest": "sha256:103574fd3f608b30fa7e79aa01bd87136a847c7603ee4cbf4c50d7b51bfc48ac",
        "actualDigest": "sha256:a7d6e1906f63b0b9fecb316eb0de5127b33175eef5cbad299421a70246fd7a61",
        "digestMatches": false,
        "content": {
          "discarded": true,
          "reason": "[discarded fetched document data]",
          "originalType": "object",
          "originalKeys": [
            "valid",
            "warnings",
            "failures",
            "security",
            "quality",
            "frontmatter"
          ]
        }
      },
      {
        "index": 11,
        "name": "incident-response",
        "type": "skill-md",
        "url": "https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incident-response/SKILL.md",
        "originClass": "external",
        "statusCode": 200,
        "contentType": "text/plain; charset=utf-8",
        "byteLength": 7355,
        "advertisedDigest": "sha256:2524b777871d3752bec8427c3295cc53fb2b5956305ed02e81df7d7de7d8a2be",
        "actualDigest": "sha256:3ffb691cee5d03c172a268e2954c53d5c29542b23c2d0a4a2b11044ced5e1949",
        "digestMatches": false,
        "content": {
          "discarded": true,
          "reason": "[discarded fetched document data]",
          "originalType": "object",
          "originalKeys": [
            "valid",
            "warnings",
            "failures",
            "security",
            "quality",
            "frontmatter"
          ]
        }
      }
    ]
  4. Validate skill content

    description does not clearly state when an agent should activate the skill.

    Skill artifact content is invalid
    Skill content findings
    • description does not clearly state when an agent should activate the skill.
    • description does not clearly state when an agent should activate the skill.
    • description does not clearly state when an agent should activate the skill.
    • description does not clearly state when an agent should activate the skill.
    • {
        "truncated": true,
        "omittedCount": 2,
        "originalCount": 6
      }
  5. Review skill artifact security

    SKILL.md contains prompt-injection-like instructions.

    Skill artifacts contain security findings
    Agent Skills security findings
    • SKILL.md contains prompt-injection-like instructions.
    • SKILL.md references external URLs; fetched content is an additional trust boundary (https://mcp.uptimerobot.com/mcp`, https://heartbeat.uptimerobot.com/m, https://...`).
    • SKILL.md contains prompt-injection-like instructions.
    • SKILL.md references external URLs; fetched content is an additional trust boundary (https://api.example.com/health, https://api.example.com/v1/orders/check).
    • {
        "truncated": true,
        "omittedCount": 16,
        "originalCount": 20
      }
Evidence log5 steps · 89 lines
Validate discovery index schema [fail]! Agent Skills index must use $schema https://schemas.agentskills.io/discovery/0.2.0/schema.json.INFOValidate discovery index schemaINFOParse Agent Skills index JSON validJson=true contentTypeCompatible=trueFAILCompare $schema URI actual="https://agentskills.dev/schemas/index.v0.2.0.json" expected="https://schemas.agentskills.io/discovery/0.2.0/schema.json"FAILCompare top-level schema issue count actual=1 expected=0FAILCompare unknown top-level field count actual=0 expected=0FAILAgent Skills index must use $schema https://schemas.agentskills.io/discovery/0.2.0/schema.json.Validate skill entries [warning]! One or more Agent Skills entries have quality or trust warnings.INFOValidate skill entriesWARNCompare advertised skill count actual=21 expected="> 0"WARNCompare valid skill entry count actual=21 expected="same as advertised skill count"WARNSkill entry warning skill={"index":0,"valid":true,"name":"bulk-pause","type":"skill-md","description":"Pause (or resume) many UptimeRobot monitors at once — by tag, search term, or state — around a deployment or maintenance window.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md","digest":"sha256:103574fd3f608b30fa7e79aa01bd87136a847c7603ee4cbf4c50d7b51bfc48ac","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":1,"valid":true,"name":"conventions","type":"skill-md","description":"Conventions and gotchas for every UptimeRobot MCP tool call — monitor types, URL formats, HEARTBEAT URL handling, discovery-before-writes, pagination, time ranges, error codes, and output style. Use whenever you call any uptimerobot:* tool.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md","digest":"sha256:374f432a0a6c9fdb8d41802278cfbb12907c1842765529a7639d121cdb8a1bd9","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":2,"valid":true,"name":"create-api-monitor","type":"skill-md","description":"Create an API monitor that calls an HTTP endpoint and runs up to five JSON/header assertions combined with AND/OR logic; alerts when assertions fail.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md","digest":"sha256:5bd8432dd21f630c2be6b2ed9d7b0f62034443b665e2d21af646d439f56c8b0a","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":3,"valid":true,"name":"create-dns-monitor","type":"skill-md","description":"Create a DNS monitor that resolves records for a domain and alerts when they change or the DNS server does not respond.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md","digest":"sha256:be85b5fd74a9dfdfcf8d7df3f8862e28686de068331ddc575c3b5970f03008d1","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":4,"valid":true,"name":"create-heartbeat-monitor","type":"skill-md","description":"Create a HEARTBEAT monitor (cron/job monitor) that expects the target to ping a generated URL on a schedule; alerts when expected pings stop arriving.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-heartbeat-monitor/SKILL.md","digest":"sha256:bd39d05df51ebeb72fda79d090bcb2d6fc2e21ae233453534f3d2cb8c7b51a73","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-heartbeat-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":5,"valid":true,"name":"create-http-monitor","type":"skill-md","description":"Create an HTTP monitor in UptimeRobot to check that a URL returns a successful response on an interval.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-http-monitor/SKILL.md","digest":"sha256:6312e052e18d3eded30d933344d18914f2d2a933248c72569f27607d03e8e280","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-http-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":6,"valid":true,"name":"create-keyword-monitor","type":"skill-md","description":"Create a KEYWORD monitor that fetches a URL and alerts when a given keyword appears (or is missing) in the response body.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-keyword-monitor/SKILL.md","digest":"sha256:8ca516577e822791bf23aa7c54ae6da2fd006c6e7a68447eee132772c5ab03c0","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-keyword-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":7,"valid":true,"name":"create-ping-monitor","type":"skill-md","description":"Create a PING monitor that sends ICMP echo requests to a hostname or IP and alerts on packet loss / timeout.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-ping-monitor/SKILL.md","digest":"sha256:2cb19b8d3acdaf8327e92937b5003144767997a24d9ebe12747808bf1b1d6099","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-ping-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":8,"valid":true,"name":"create-port-monitor","type":"skill-md","description":"Create a PORT monitor that opens a TCP connection to a host:port and alerts when the port is not accepting connections.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-port-monitor/SKILL.md","digest":"sha256:a36835be942794ef26445f3919ce412cf79afcf41c36c91bd56436edc1d464fa","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-port-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":9,"valid":true,"name":"create-udp-monitor","type":"skill-md","description":"Create a UDP monitor that sends a UDP packet to a host:port and optionally checks the response keyword or packet-loss threshold.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-udp-monitor/SKILL.md","digest":"sha256:88045a134443edfb3cd5c59fef37cb568f1077f3d499459c92cce7b7644fb216","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-udp-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":10,"valid":true,"name":"errors","type":"skill-md","description":"Handle UptimeRobot MCP errors — codes, meanings, retry policy, and user-facing recovery suggestions.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/errors/SKILL.md","digest":"sha256:fc94651287aef392c8e53ba90f43ea7bc28c1387eb0552487c777312d62feaf2","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/errors/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":11,"valid":true,"name":"incident-response","type":"skill-md","description":"End-to-end incident workflow — find what's down, diagnose it, pause flapping monitors, and verify recovery.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incident-response/SKILL.md","digest":"sha256:2524b777871d3752bec8427c3295cc53fb2b5956305ed02e81df7d7de7d8a2be","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incident-response/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":12,"valid":true,"name":"incidents","type":"skill-md","description":"List downtime incidents and fetch per-incident checker locations, IPs, logs, and traceroute data.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incidents/SKILL.md","digest":"sha256:a9d350be579e2ee83197edcd27a1b1e90346d2fb280c2521e009fc2941e188ec","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incidents/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":13,"valid":true,"name":"list-integrations","type":"skill-md","description":"List the alert-contact integrations configured on the UptimeRobot account so you can attach them to new or existing monitors.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/list-integrations/SKILL.md","digest":"sha256:637758b549d7ab49d576a76da2ae71cf7255d4a55e5051e0fd4e6b5c2dc6d931","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/list-integrations/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":14,"valid":true,"name":"manage-monitors","type":"skill-md","description":"List monitors, fetch details, and pause or resume monitors in UptimeRobot.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/manage-monitors/SKILL.md","digest":"sha256:fe56d2f79b4784c3945eece4087f42d84eea21d1950834a42cc973a954d97b1d","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/manage-monitors/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":15,"valid":true,"name":"monitor-health-summary","type":"skill-md","description":"Generate a one-shot health snapshot — monitor counts by state, which are currently down, recent incident count, and total downtime — useful as a daily brief or ad-hoc check.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/monitor-health-summary/SKILL.md","digest":"sha256:5f503e9f3573c8debb444eafb80fd0ed8a75146c3f8fb24a4701d408bfab3c46","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/monitor-health-summary/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":16,"valid":true,"name":"quick-monitor-setup","type":"skill-md","description":"Create a free UptimeRobot HTTPS uptime monitor for someone using ONLY their email, no UptimeRobot account, no API key, and no MCP/OAuth. The agent calls an unauthenticated proof-of-work-gated API; the owner confirms with one click in an activation email. Use when a user wants monitoring but is not signed in to UptimeRobot and has no API key, the zero-setup path.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/quick-monitor-setup/SKILL.md","digest":"sha256:d220ca7bdd34780b18bb00f0cfde26e59fc0f9edf8549de2744353689f6389c4","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/quick-monitor-setup/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":17,"valid":true,"name":"setup","type":"skill-md","description":"Connect and authenticate the UptimeRobot MCP server (OAuth via mcp-remote), OR diagnose why `uptimerobot:*` MCP tools aren't visible in the current session. Invoke this skill any time you cannot see UptimeRobot tools, before telling the user the MCP is misconfigured — Step 0 detects the most common case (server already connected, tools loaded after session start) and resolves it without re-authenticating. Also invoke on `-31001` auth errors or first-time setup.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/setup/SKILL.md","digest":"sha256:cda5acaa06bc709560cc972eaa4941919d6b1ce2b6c1f5b01254ed5460598ab0","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/setup/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":18,"valid":true,"name":"sla-report","type":"skill-md","description":"Generate a per-monitor SLA report for a time range — uptime percentage, total downtime, and incident count per monitor — formatted as Markdown for sharing in Confluence, Slack, or post-mortem docs.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/sla-report/SKILL.md","digest":"sha256:c22ddc259222d7e7d8e6f4ca39a9962ce7add5478e734f41078181d013134e6c","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/sla-report/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":19,"valid":true,"name":"stats","type":"skill-md","description":"Query aggregated monitor statistics (up/down/paused counts, uptime percentage) and per-monitor response-time time series.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/stats/SKILL.md","digest":"sha256:c941627290c06e4f150277bb41713a644d6a19be2eee759c5b95af3f8a28b370","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/stats/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNSkill entry warning skill={"index":20,"valid":true,"name":"update-monitor","type":"skill-md","description":"Modify an existing UptimeRobot monitor — rename, change URL/interval, swap alert contacts, retag, tweak HTTP/keyword/API/heartbeat settings, and toggle SSL or domain reminders.","url":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/update-monitor/SKILL.md","digest":"sha256:54371c36b0a30c4ab9f7811e4d26121a7a74111d8f5e774629d8a3d0643fdfb8","resolvedUrl":"https://raw.githubusercontent.com/uptimerobot/ai/main/skills/update-monitor/SKILL.md","originClass":"external","missing":[],"invalid":[],"warnings":["description should explain when to use the skill","artifact URL is cross-origin; clients must treat it as a separate trust boundary"]}WARNOne or more Agent Skills entries have quality or trust warnings.Verify advertised artifacts [fail]! One or more advertised skill artifacts could not be fetched or failed raw-byte digest verification.INFOVerify advertised artifactsFAILCompare artifact fetch count actual=12 expected=21FAILArtifact fetch or digest verification failed name="bulk-pause" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md" statusCode=200 byteLength=4654 advertisedDigest="sha256:103574fd3f608b30fa7e79aa01bd87136a847c7603ee4cbf4c50d7b51bfc48ac" actualDigest="sha256:a7d6e1906f63b0b9fecb316eb0de5127b33175eef5cbad299421a70246fd7a61"PASSArtifact fetched and digest matched name="conventions" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md" statusCode=200 byteLength=3336 advertisedDigest="sha256:374f432a0a6c9fdb8d41802278cfbb12907c1842765529a7639d121cdb8a1bd9" actualDigest="sha256:374f432a0a6c9fdb8d41802278cfbb12907c1842765529a7639d121cdb8a1bd9"PASSArtifact fetched and digest matched name="create-api-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md" statusCode=200 byteLength=3978 advertisedDigest="sha256:5bd8432dd21f630c2be6b2ed9d7b0f62034443b665e2d21af646d439f56c8b0a" actualDigest="sha256:5bd8432dd21f630c2be6b2ed9d7b0f62034443b665e2d21af646d439f56c8b0a"PASSArtifact fetched and digest matched name="create-dns-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md" statusCode=200 byteLength=2528 advertisedDigest="sha256:be85b5fd74a9dfdfcf8d7df3f8862e28686de068331ddc575c3b5970f03008d1" actualDigest="sha256:be85b5fd74a9dfdfcf8d7df3f8862e28686de068331ddc575c3b5970f03008d1"PASSArtifact fetched and digest matched name="create-heartbeat-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-heartbeat-monitor/SKILL.md" statusCode=200 byteLength=3312 advertisedDigest="sha256:bd39d05df51ebeb72fda79d090bcb2d6fc2e21ae233453534f3d2cb8c7b51a73" actualDigest="sha256:bd39d05df51ebeb72fda79d090bcb2d6fc2e21ae233453534f3d2cb8c7b51a73"PASSArtifact fetched and digest matched name="create-http-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-http-monitor/SKILL.md" statusCode=200 byteLength=3879 advertisedDigest="sha256:6312e052e18d3eded30d933344d18914f2d2a933248c72569f27607d03e8e280" actualDigest="sha256:6312e052e18d3eded30d933344d18914f2d2a933248c72569f27607d03e8e280"PASSArtifact fetched and digest matched name="create-keyword-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-keyword-monitor/SKILL.md" statusCode=200 byteLength=2920 advertisedDigest="sha256:8ca516577e822791bf23aa7c54ae6da2fd006c6e7a68447eee132772c5ab03c0" actualDigest="sha256:8ca516577e822791bf23aa7c54ae6da2fd006c6e7a68447eee132772c5ab03c0"PASSArtifact fetched and digest matched name="create-ping-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-ping-monitor/SKILL.md" statusCode=200 byteLength=2229 advertisedDigest="sha256:2cb19b8d3acdaf8327e92937b5003144767997a24d9ebe12747808bf1b1d6099" actualDigest="sha256:2cb19b8d3acdaf8327e92937b5003144767997a24d9ebe12747808bf1b1d6099"PASSArtifact fetched and digest matched name="create-port-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-port-monitor/SKILL.md" statusCode=200 byteLength=2277 advertisedDigest="sha256:a36835be942794ef26445f3919ce412cf79afcf41c36c91bd56436edc1d464fa" actualDigest="sha256:a36835be942794ef26445f3919ce412cf79afcf41c36c91bd56436edc1d464fa"PASSArtifact fetched and digest matched name="create-udp-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-udp-monitor/SKILL.md" statusCode=200 byteLength=2445 advertisedDigest="sha256:88045a134443edfb3cd5c59fef37cb568f1077f3d499459c92cce7b7644fb216" actualDigest="sha256:88045a134443edfb3cd5c59fef37cb568f1077f3d499459c92cce7b7644fb216"PASSArtifact fetched and digest matched name="errors" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/errors/SKILL.md" statusCode=200 byteLength=4347 advertisedDigest="sha256:fc94651287aef392c8e53ba90f43ea7bc28c1387eb0552487c777312d62feaf2" actualDigest="sha256:fc94651287aef392c8e53ba90f43ea7bc28c1387eb0552487c777312d62feaf2"FAILArtifact fetch or digest verification failed name="incident-response" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incident-response/SKILL.md" statusCode=200 byteLength=7355 advertisedDigest="sha256:2524b777871d3752bec8427c3295cc53fb2b5956305ed02e81df7d7de7d8a2be" actualDigest="sha256:3ffb691cee5d03c172a268e2954c53d5c29542b23c2d0a4a2b11044ced5e1949"FAILOne or more advertised skill artifacts could not be fetched or failed raw-byte digest verification.Validate skill content [warning]! description does not clearly state when an agent should activate the skill.INFOValidate skill contentWARNCompare skill artifact content failures actual=0 expected=0 name="bulk-pause" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/bulk-pause/SKILL.md"WARNSkill content validation warning name="bulk-pause" warning="description does not clearly state when an agent should activate the skill."WARNCompare skill artifact content failures actual=0 expected=0 name="conventions" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/conventions/SKILL.md"WARNCompare skill artifact content failures actual=0 expected=0 name="create-api-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-api-monitor/SKILL.md"WARNCompare skill artifact content failures actual=0 expected=0 name="create-dns-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-dns-monitor/SKILL.md"WARNCompare skill artifact content failures actual=0 expected=0 name="create-heartbeat-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-heartbeat-monitor/SKILL.md"WARNCompare skill artifact content failures actual=0 expected=0 name="create-http-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-http-monitor/SKILL.md"WARNSkill content validation warning name="create-http-monitor" warning="description does not clearly state when an agent should activate the skill."WARNCompare skill artifact content failures actual=0 expected=0 name="create-keyword-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-keyword-monitor/SKILL.md"WARNCompare skill artifact content failures actual=0 expected=0 name="create-ping-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-ping-monitor/SKILL.md"WARNSkill content validation warning name="create-ping-monitor" warning="description does not clearly state when an agent should activate the skill."WARNCompare skill artifact content failures actual=0 expected=0 name="create-port-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-port-monitor/SKILL.md"WARNCompare skill artifact content failures actual=0 expected=0 name="create-udp-monitor" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/create-udp-monitor/SKILL.md"WARNSkill content validation warning name="create-udp-monitor" warning="description does not clearly state when an agent should activate the skill."WARNCompare skill artifact content failures actual=0 expected=0 name="errors" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/errors/SKILL.md"WARNSkill content validation warning name="errors" warning="description does not clearly state when an agent should activate the skill."WARNCompare skill artifact content failures actual=0 expected=0 name="incident-response" type="skill-md" url="https://raw.githubusercontent.com/uptimerobot/ai/main/skills/incident-response/SKILL.md"WARNSkill content validation warning name="incident-response" warning="description does not clearly state when an agent should activate the skill."WARNdescription does not clearly state when an agent should activate the skill.Review skill artifact security [fail]! SKILL.md contains prompt-injection-like instructions.INFOReview skill artifact securityFAILCompare security finding count actual=20 expected=0FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://mcp.uptimerobot.com/mcp`, https://heartbeat.uptimerobot.com/m, https://...`)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://api.example.com/health, https://api.example.com/v1/orders/check)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://example.com`)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://heartbeat.uptimerobot.com/m, https://heartbeat.uptimerobot.com/m800123456-abcd1234)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://api.example.com/health, https://internal.example.com/api/v1/health)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://app.example.com/login, https://www.example.com/)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://host.example.com`)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references shell or code-execution patterns that can modify systems, fetch remote code, or move data."WARNAgent Skills artifact security warning finding="SKILL.md references external URLs; fetched content is an additional trust boundary (https://host:443`)."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."WARNAgent Skills artifact security warning finding="SKILL.md references shell or code-execution patterns that can modify systems, fetch remote code, or move data."FAILUnsafe Agent Skills artifact finding finding="SKILL.md contains prompt-injection-like instructions."FAILSKILL.md contains prompt-injection-like instructions.

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

Agent Ease of UseGoogle Agentic BrowsingBrowser audit

Accessibility tree is not well-formed

100 Fail

Check name

Accessibility tree is not well-formed

Score

0/100

Status

fail

Device

desktop

Category

Google Agentic Browsing

Fix guidance

A well-formed [accessibility tree](http://goo.gle/lighthouse-agentic-a11y) helps AI agents to navigate and interact with the page.

Evidence
{
  "description": "A well-formed [accessibility tree](http://goo.gle/lighthouse-agentic-a11y) helps AI agents to navigate and interact with the page."
}

Sign in to see 30 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.

1 reports
Public score history report links
Scan dateScoreReadinessReport
76/100Level 4, Mostly ReadyCurrent report