Desvela ARD Registry — free preflight(domain)
What a domain publishes for AI agents: ai-catalog.json, llms.txt, agents.md, robots.txt rules. Free.
Should I use this
Quality & Safety
Findings (2)
- HIGH
- MEDIUMin watch
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"registry": {
"url": "https://registry.desvela.dev/mcp"
}
}
}Remote endpoints
https://registry.desvela.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (4)
⚪preflight(domain)
What a domain publishes for AI agents before you touch it: ai-catalog.json (ARD), llms.txt, agents.md, and its robots.txt directives for AI bots (GPTBot, ClaudeBot, Google-Extended…). Served from the Desvela ARD index when fresh (<7 days), live-checked otherwise. Free.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"pattern": "^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)+$"
}
},
"required": [
"domain"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢watch(domain, webhook_url)
Subscribe to a domain: get a signed webhook (X-Desvela-Signature, HMAC-SHA256) when what it publishes for AI agents changes — ai-catalog.json entries added/changed/gone, llms.txt or agents.md edited or removed, robots.txt AI-bot directives changed. Checked weekly against the Desvela ARD index. Returns a manage_token (GET/DELETE https://registry.desvela.dev/watch/{id}) and the signing secret — store both.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"pattern": "^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)+$"
},
"webhook_url": {
"type": "string",
"format": "uri",
"description": "HTTPS endpoint that will receive signed change notifications"
}
},
"required": [
"domain",
"webhook_url"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪crawler_block_test(domain)
What the domain's CDN really does, as opposed to what its robots.txt says. Sends each AI crawler's real user-agent at the homepage and compares the response against a browser: a site can allow GPTBot in robots.txt and still have its CDN answer it a 403, and robots.txt cannot tell you that. Verdicts per crawler: ok, blocked, throttled (429, which is "too fast" and not "not you"), degraded (a 200 with a fraction of the bytes, the shape of a JS-gated page), or error. When `measurable` is false the site refused the control request too and there is no verdict to give. Live probe, ~6 requests. Free. Use preflight for the declared policy; use this for the observed one.
Input Schema
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"pattern": "^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?(\\.[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)+$"
}
},
"required": [
"domain"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡search(text)
Natural-language search over what Desvela has indexed: agents, MCP servers, registries — the same index as POST /search. Returns catalog entries per the ARD spec. When nothing matches, returns referrals (other ARD-conformant registries you can query the same way) and listing (how a domain gets into this index: publish ai-catalog.json, then preflight it), instead of an empty answer.
Input Schema
{
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"description": "natural-language query, e.g. \"find an MCP server for weather data\""
}
},
"required": [
"text"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence