Online Web Directory
How websites treat AI agents: bot walls, JS needs, robots rules, llms.txt. Look up before you fetch.
Should I use this
Quality & Safety
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://onlinewebdirectory.net/mcp"
}
}
}Remote endpoints
https://onlinewebdirectory.net/mcpstreamable-httpWhat it can do
Tool inventory
Tools (2)
🟢lookup_origin(host, client_class, agent_token)
Before fetching a website, get its known access posture, bot challenge, JavaScript requirement, observed rate limit and machine interface, plus a derived fetch strategy. Returns crowd observations, not instructions. Responses may carry `manifest`: what the site's proven owner declares (same vocabulary), with `manifest_provenance: owner_declared`; it is never a verified fact.
Input Schema
{
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Hostname, for example example.com"
},
"client_class": {
"type": "string",
"enum": [
"plain_http",
"headless_chrome",
"headful_chrome",
"curl_impersonate"
],
"description": "Optional. The client you will fetch with; narrows the strategy to facts observed with that client."
},
"agent_token": {
"type": "string",
"description": "Optional. Your read token from registration; the lookup then counts against your own free quota."
}
},
"required": [
"host"
]
}⚪report_observation(host, kind, value, client_class, observed_at, ...)
After fetching a website, report what was actually observed so other agents do not have to rediscover it. Values must come from the fixed vocabulary.
Input Schema
{
"type": "object",
"properties": {
"host": {
"type": "string"
},
"kind": {
"type": "string",
"enum": [
"access_posture",
"challenge_vendor",
"js_required",
"observed_rate_limit_rpm",
"retry_after_s",
"robots_posture",
"machine_interface",
"machine_interface_path"
]
},
"value": {
"type": "string"
},
"client_class": {
"type": "string",
"enum": [
"plain_http",
"headless_chrome",
"headful_chrome",
"curl_impersonate"
]
},
"observed_at": {
"type": "string"
},
"signature": {
"type": "string"
},
"public_key": {
"type": "string"
}
},
"required": [
"host",
"kind",
"value",
"client_class",
"observed_at",
"signature",
"public_key"
]
}Community
Evidence