Agent Readiness Auditor

io.github.asish-singh由 GitHub 账号 asish-singh 发布v0.5.0更新于 Oct 24, 2026

Audits any website for AI agent readiness and safety, scoring prompt injection risk and llms.txt.

概览

AI 生成的概览

一个本地 MCP 服务器,用于审计网站的 AI 代理就绪度与安全性,评估提示注入风险、llms.txt、robots.txt 和结构化数据。

可以做什么
审计站点:抓取给定网址,返回 0-100 分、字母等级以及逐项检查结果和修复建议,与命令行报告一致。
适用场景
当你希望助手判断某个网站对 AI 代理是否安全、易读,或在发布前检查自己站点的 llms.txt、robots.txt、结构化数据和隐藏提示注入风险时使用。
运行要求
通过 npx 以 stdio 在本地运行,需要 Node.js 18 或更高版本。未声明任何账户、API 密钥或环境变量。需要网络访问以抓取目标站点的页面、robots.txt、llms.txt、站点地图和 AI Catalog。
安装前请注意
工具会抓取并爬取目标站点,因此你提供的网址会发送到该站点并取回其页面。它只读,不会修改站点。无法访问的站点只会给出警告而非失败。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Agent Readiness Auditor,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Agent Readiness Auditor

[npm version] [CI]

A command-line tool that scans a website and scores how well it works with, and how well it defends against, automated AI agents.

What problem this solves

AI assistants increasingly visit websites on a person's behalf: reading pages, following instructions found on them, and taking actions. This creates two practical issues for site owners:

  1. Safety. A page can contain text that is hidden from human visitors but still read by an AI agent. That hidden text can carry instructions designed to hijack the agent. This is known as indirect prompt injection.
  2. Readability for machines. Sites are usually built for human eyes. Agents do better when a site also publishes machine-readable signals about its content and its rules.

Standard SEO tools measure how well a site works for search engines. This tool measures something different: how well a site works for AI agents, and whether it is safe for them to read.

Research built with this tool

The State of the Agentic Web, 2026 audits 84 prominent sites across seven categories with this tool, and its second edition reruns the study with the deeper nine check audit. Among the findings, no audited site carries hidden prompt injection content even under attribute level and multi page scanning, only 13% publish the FAQ structured data AI answers quote, no site advertises an MCP endpoint, and nearly one in five prominent sites refuses automated visitors entirely, including several AI companies. The data and method are published for anyone to reproduce.

What it checks

The tool fetches the landing page, robots.txt, llms.txt, the sitemap, and the AI Catalog, then crawls a few key pages and runs nine checks, producing a score from 0 to 100 and a letter grade from A to F. Safety is weighted highest on purpose, because a readable site that can hijack an agent is worse than one that is simply hard to read.

CheckPointsWhat it looks for
Hidden prompt-injection text40Agent-hijacking phrases in content humans cannot see, across every crawled page. Detects CSS hiding (display:none, opacity:0, off-screen positioning), zero-width unicode obfuscation, alt/title/aria-label attribute payloads, and HTML comments.
llms.txt file12A published file that gives agents a curated map of the site. See llmstxt.org.
robots.txt stance on AI crawlers12Explicit allow or disallow rules for AI crawlers such as GPTBot and ClaudeBot.
Structured data (JSON-LD)12Machine-readable data that lets agents understand page content directly.
Accountability links9Reachable contact, privacy, terms, or about links.
Sitemap5A reachable /sitemap.xml so crawlers can discover the whole site.
Answerability5FAQ, QA, or HowTo structured data, the content shapes AI answers quote most readily.
Meta robots5No accidental noindex/noai directives hiding the site from indexes.
MCP signal0Informational only: whether the site publishes an AI Catalog at /.well-known/ai-catalog.json (the discovery document adopted by MCP Server Cards, SEP-2127) and which MCP server cards and A2A agent cards it lists, falling back to mentions in llms.txt or robots.txt. A malformed catalog is flagged with a fix, still unscored.

Example output

$ npx agent-readiness-auditor example.com
  Agent readiness audit for https://example.com
  ✅ No hidden prompt-injection payloads  (40/40)  ⚠️  llms.txt present                     (0/12)  ⚠️  robots.txt addresses AI crawlers     (0/12)  ⚠️  Machine-readable structured data     (0/12)  ⚠️  Accountability surface present       (0/9)  ⚠️  Sitemap present                      (0/5)  ⚠️  Content structured for AI answers    (0/5)  ✅ No accidental index blocking          (5/5)  ✅ Agent endpoint advertised (informational)  (0/0)
  Score: 45/100 (45%)   Grade D

Each line shows the check result, its score, and (when a check does not fully pass) a suggested fix.

Quick start

If you have Node.js 18 or newer installed, you can run the tool in one line without installing anything:

bash
npx agent-readiness-auditor example.comnpx agent-readiness-auditor example.com --json

Use a bare domain (example.com) or a full URL (https://example.com). The --json flag prints machine-readable output for use in scripts.

Auditing many sites at once

Batch mode reads a text file with one URL per line (lines starting with # are ignored) and audits them a few at a time.

bash
agent-audit --batch sites.txt          # a report per siteagent-audit --batch sites.txt --csv    # one CSV row per siteagent-audit --batch sites.txt --json   # structured results

The CSV has a column for each check, which makes it easy to open in a spreadsheet or feed into an analysis.

Using it in GitHub Actions

The repo doubles as a GitHub Action, so any project can audit its own site on every push or on a schedule and fail the build if a hard safety problem appears.

yaml
steps:  - uses: actions/setup-node@v4    with:      node-version: 20  - uses: asish-singh/[email protected]    with:      url: example.com      fail-on: safety   # or "never" to report without failing

An unreachable site produces a warning, not a failure, since bot protection on CI runners is an infrastructure issue rather than a safety one. This repo uses the action on itself every Monday in audit-site.yml.

Using it from an AI assistant (MCP)

The auditor ships with a server for the Model Context Protocol, the standard that lets AI assistants use external tools, and is listed on the official MCP registry. One of this tool's own findings is that zero of 69 prominent sites advertise an agent endpoint, so the auditor holds itself to the standard it measures. Once connected, you can simply ask your assistant to audit a site for you.

For Claude Code, one command connects it.

bash
claude mcp add agent-readiness-auditor -- npx -y agent-readiness-auditor mcp

For Claude Desktop, add this to the mcpServers section of the configuration file.

json
{  "agent-readiness-auditor": {    "command": "npx",    "args": ["-y", "agent-readiness-auditor", "mcp"]  }}

The server exposes one tool, audit_site, which takes a URL and returns the same scores and findings as the command line.

Running from source

To work on the code or run it from a local copy:

bash
git clone https://github.com/asish-singh/agent-readiness-auditor.gitcd agent-readiness-auditornpm installnpm run audit -- example.com          # human-readable reportnpm run audit -- example.com --json   # JSON output

The -- in the command passes the URL to the tool rather than to npm.

To install a global agent-audit command from your local copy:

bash
npm run build   # compile TypeScript into dist/npm link        # register the global command

You can then run agent-audit example.com from any folder. To remove it later, run npm unlink -g agent-readiness-auditor.

Installing from GitHub Packages

The package is also published to GitHub Packages as a scoped mirror, @asish-singh/agent-readiness-auditor. For most people the npm install above is simpler. Use GitHub Packages only if your organization standardizes on it, since it requires authentication even for public packages.

To install from it, create a GitHub personal access token with the read:packages scope, then point the scope at the GitHub registry:

bash
echo "@asish-singh:registry=https://npm.pkg.github.com" >> .npmrcecho "//npm.pkg.github.com/:_authToken=YOUR_GITHUB_TOKEN" >> .npmrcnpm install @asish-singh/agent-readiness-auditor

Exit codes

The tool sets its exit code so it can be used in automated pipelines:

  • 0: the audit ran and found no hard safety failure.
  • 2: a hard safety failure was found (for example, hidden prompt-injection text). Use this to fail a build.
  • 1: the tool could not complete the audit (for example, the site was unreachable).

How the code is organized

Each check lives in its own file under src/checks/ and returns a structured result. All checks are registered in a single list in src/audit.ts, and the total score is derived from that list, so adding a new check does not require changing the scoring logic. Architecture decisions are recorded in docs/adr/, product decisions in docs/decisions/, planned work in ROADMAP.md, and the go-to-market plan in LAUNCH.md.

Background

This tool grew out of the Agentic Web Governance Pack, a set of guidelines for how websites should behave toward AI agents. This project turns several of those guidelines into checks that can be run and measured.

License

MIT. See LICENSE.

来源:README.md,提交 6e7ce22

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v0.5.0最新Oct 11, 2026
  2. v0.4.7Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分