Check Permission to Use a Page
check_permissionChecks whether a page's published signals permit search, AI answers, training, or live agent use, returning a verdict, terms, and a signed receipt before you fetch or quote it.
Instructions
Ask whether a page may be used for a purpose, from every machine-readable signal the site publishes: robots.txt per crawler, Cloudflare Content-Signal, the IETF Content-Usage directive and header, an RSL licence, a TDM reservation (header or /.well-known/tdmrep.json), ai.txt, and noai/noindex/nosnippet on the page itself. Purposes: 'search' (index the page and show links and excerpts, no AI summary), 'answer' (input to a generated answer, including retrieval for RAG), 'train' (train or fine-tune a model), 'agent' (fetch or act on the page for a user, live). Returns a verdict: 'denied' (a signal reserves this use; any reservation wins, a block on any one crawler that does the job included, and a robots.txt answering a server error counts as a full disallow), 'allowed-under-terms' (permitted on the conditions listed in terms, such as payment or a licence server), 'unknown' (a source that could carry a reservation could not be read: robots.txt answered 401 or 403, the page refused the request, or a licence could not be fetched; unknown outranks allowed) or 'allowed' (no signal reserves the use, which is not a licence). With observe: true it also requests the page once with a representative crawler's user-agent string, from Crawl Readiness's servers, and reports the status in observed: that shows how the server treats the string, not what the real crawler gets. Every source read is listed in signals with what was found and what it decided. The receipt is a dated record of all of this, with the SHA-256 of every file read, signed with Ed25519; /api/permission-key publishes the current and retired public keys, so the receipt can be verified later. Use it before fetching pages for RAG, a dataset or an agent action, and whenever the user asks whether they may use, quote, index, train on or act on a page. It is a reading of the signals the site published on that date, not legal advice. 25 calls a day per network without an API key. Documented at https://machinereadiness.com/permission.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"url": "<url>",
"purpose": "<purpose>"
},
"name": "check_permission"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The page to ask about (e.g. 'https://example.com/article'). | |
| agent | No | Optional: your own crawler's token (e.g. 'MyBot'), to read robots.txt for it. Another company's token (e.g. 'GPTBot') cannot loosen the reading for the crawlers that do the job. By default that whole class is read. | |
| observe | No | Default false. true also requests the page once with a representative crawler's user-agent string, from our servers, and reports the status; it does not show what the real crawler gets. | |
| purpose | Yes | What you intend to do with the page: search, answer (including RAG), train, or agent. |