Skip to content
Skill Authoring
Skill

/agent-ready-cloudflare

Audit and improve website readiness for AI agents using the Cloudflare "Is It Agent Ready?" scanner (isitagentready.com). Covers scanning via API, interpreting results, generating implementation prompts, and fixing every check. Use when the user mentions "agent ready",

BOOST
From plugin
fabricioctelles-skills
12047 skills
Install
$ npx -y skills add fabricioctelles/skills --skill agent-ready-cloudflare --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/agent-ready-cloudflare

Context preview

The summary Claude sees to decide when to auto-load this skill.

Audit and improve website readiness for AI agents using the Cloudflare "Is It Agent Ready?" scanner (isitagentready.com). Covers scanning via API, interpreting results, generating implementation prompts, and fixing every check. Use when the user mentions "agent ready",

SKILL.md

agent-ready-cloudflare.SKILL.md
name: agent-ready-cloudflare
description: >
  Audit and improve website readiness for AI agents using the Cloudflare
  "Is It Agent Ready?" scanner (isitagentready.com). Covers scanning via API,
  interpreting results, generating implementation prompts, and fixing every check.
  Use when the user mentions "agent ready", "isitagentready", "AI agent scan",
  "agent readiness", "agent-ready score", "MCP server card", "agent skills index",
  "markdown for agents", "content signals", "web bot auth", "agent discovery",
  "RFC 9727", "RFC 8288", "RFC 9728", "SEP-1649", "WebMCP", "ARD", "ai-catalog",
  "x402", "UCP", "ACP", or wants to make a website discoverable and usable by AI agents.
metadata:
  author: Cloudflare / isitagentready.com
  version: "3.2"
  date: 2026-10-18
  source: https://isitagentready.com
  category: product-verification

Agent Ready — Cloudflare Scanner

Audit any website for AI agent readiness, generate actionable fix prompts, and implement improvements to increase the agent-ready score.

---

0. Operational Flow

Follow this flow every time this skill is activated:

Step 1 — Get the domain

If the user did not provide a domain, ask:

> Which domain do you want to scan on isitagentready.com?

Step 2 — Scan via API

curl -s -X POST 'https://isitagentready.com/api/scan' \
  -H 'Content-Type: application/json' \
  -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36' \
  -H 'Referer: https://isitagentready.com/' \
  -H 'Origin: https://isitagentready.com' \
  -d '{"url":"https://DOMAIN/","enabledChecks":["robotsTxt","sitemap","linkHeaders","dnsAid","markdownNegotiation","robotsTxtAiRules","contentSignals","webBotAuth","apiCatalog","oauthDiscovery","oauthProtectedResource","authMd","mcpServerCard","a2aAgentCard","agentSkills","webMcp","ard","personalAgentProtocol","x402","mpp","ucp","acp","ap2"]}'

Replace `DOMAIN` with the target domain.

Step 3 — Generate the Markdown report

Use the API response to build a report with this structure:

# Agent Ready Scan — {domain}

> **Score:** Level {level} — {levelName}
> **Scanned:** {scannedAt}
> **Link:** [View online](https://isitagentready.com/{domain})

## Summary

| Category | Score |
|----------|-------|
| Discoverability | {passed}/{total} |
| Content | {passed}/{total} |
| Bot Access Control | {passed}/{total} |
| API, Auth, MCP & Skill Discovery | {passed}/{total} |
| Commerce (Optional) | {passed}/{total} |

## Details

### Discoverability ({passed}/{total})

- ✅ **robots.txt** — {message}
- ❌ **sitemap.xml** — {message}
  (... for each check ...)

### (... repeat for each category ...)

## 🔧 How to Implement — Agent Prompts

(... one block per failing check, see Step 4 ...)

## Next Level

**Level {nextLevel.target} — {nextLevel.name}**

To reach the next level, implement:
- {nextLevel.requirements[].description}

Step 4 — Generate "How to Implement" prompts

For every check with `status: "fail"` or `status: "neutral"`, generate a prompt block using the **Prompt Templates** in Section 8 below. The prompt combines:

1. The **Goal** and **Fix** from the template (static per check) 2. The **Issue** from the API response (`checks.{category}.{check}.message`) 3. The **Skill URL** pointing to the sub-skill 4. The **Docs** links to the relevant RFCs/specs

Format each prompt as a fenced code block the user can copy-paste into a coding agent:

#### ❌ {check name}

**Issue:** {message from API}

Goal: {goal from template}

Issue: {message from API}

Fix: {fix from template}

Skill: https://isitagentready.com/.well-known/agent-skills/{skill-folder}/SKILL.md

Docs: {docs URLs from template}


> 📖 Reference: [{skill-folder}/SKILL.md]({skill-folder}/SKILL.md)
````

### Step 5 — Deliver

Present the full Markdown report to the user. If they want to save it to a file,
write it to the requested path.

---

## 1. What It Checks

### Discoverability (4 checks)
| Check | API Key | Pass criteria |
|-------|---------|---------------|
| robots.txt | `robotsTxt` | Returns 200 with `text/plain` containing at least one `User-agent` directive |
| sitemap.xml | `sitemap` | `/sitemap.xml` returns valid XML, or `Sitemap` directive found in robots.txt |
| Link headers | `linkHeaders` | Homepage includes `Link` headers with agent-useful relations (`service-desc`, `api-catalog`, etc.) |
| DNS-AID | `dnsAid` | SVCB/HTTPS records found under `_agents` namespace via DNS-over-HTTPS (Cloudflare → Google fallback) |

### Content (1 check)
| Check | API Key | Pass criteria |
|-------|---------|---------------|
| Markdown for Agents | `markdownNegotiation` | `Accept: text/markdown` returns `Content-Type: text/markdown` |

### Bot Access Control (3 checks)
| Check | API Key | Pass criteria |
|-------|---------|---------------|
| AI bot rules | `robotsTxtAiRules` | robots.txt contains `User-agent` entries for known AI bots (GPTBot, Claude-Web, Google-Extended, etc.) |
| Content Signals | `contentSignals` | robots.txt contains `Content-Signal` directives with ai-train/search/ai-input |
| Web Bot Auth | `webBotAuth` | `/.well-known/http-message-signatures-directory` exists with valid JWKS (informational — neutral does not affect score) |

### API, Auth, MCP & Skill Discovery (10 checks)
| Check | API Key | Pass criteria |
|-------|---------|---------------|
| API Catalog | `apiCatalog` | `/.well-known/api-catalog` returns valid `linkset+json` with API entries |
| OAuth/OIDC | `oauthDiscovery` | `/.well-known/openid-configuration` or `oauth-authorization-server` with valid OAuth metadata |
| OAuth Protected Resource | `oauthProtectedResource` | `/.well-known/oauth-protected-resource` with `resource` and `authorization_servers` |
| Auth.md | `authMd` | `/auth.md` exists with valid H1 heading containing "auth.md"; optionally PRM + AS metadata |
| MCP Server Card | `mcpServerCard` | Valid card at `/.well-known/mcp/server-card.json
Read more
Ships withfabricioctelles-skills

26 production-ready skills for AI coding agents. Install with one command, use across Claude Code, Cursor, Kiro, Windsurf, and OpenCode.

Get the whole plugin

Other skills on fabricioctelles-skills.