RobotsGate
Generate, validate and check robots.txt rules for AI crawlers. Free; optional Pro key.
我該用這個嗎
品質與安全性
根據工具定義與協定合規性的自動化分析。
上下文成本
這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。
安裝
一鍵安裝
將以下內容加入你的 `claude_desktop_config.json` 檔案:
{
"mcpServers": {
"robotsgate": {
"url": "https://robotsgate.mike-tusa.workers.dev/mcp"
}
}
}遠端端點
https://robotsgate.mike-tusa.workers.dev/mcpstreamable-http它能做什麼
工具清單
工具(4)
🟢list_crawlers(category)
Return RobotsGate's AI crawler registry: each crawler's robots.txt token, operator, category (training, dataset, search, user_fetch or other), whether the operator says it respects robots.txt, and a link to the operator's documentation, plus unverified entries and notes. Read-only, no network access. Same data as GET /api/crawlers.
輸入結構描述
{
"type": "object",
"properties": {
"category": {
"type": "string",
"enum": [
"training",
"dataset",
"search",
"user_fetch",
"other"
],
"description": "Optional: only crawlers in this category."
}
},
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"schema_version": {
"type": "integer"
},
"generated": {
"type": "string"
},
"categories": {
"type": "object"
},
"crawlers": {
"type": "array",
"items": {
"type": "object"
}
},
"unverified": {
"type": "array",
"items": {
"type": "object"
}
}
},
"required": [
"categories",
"crawlers"
]
}🟢generate_robots(categories, agents, default, disallow_paths, allow_paths, ...)
Build a robots.txt from per-category choices (allow, block or omit for training, dataset, search, user_fetch or other), optional per-token overrides, a default policy for other bots, paths, sitemaps and custom rules. Returns the file text, a per-crawler summary and notes. Read-only: it only returns text and changes nothing. Same engine as POST /api/generate.
輸入結構描述
{
"type": "object",
"properties": {
"categories": {
"type": "object",
"description": "Action per crawler category. Omitted categories get no group of their own.",
"properties": {
"training": {
"type": "string",
"enum": [
"allow",
"block",
"omit"
]
},
"dataset": {
"type": "string",
"enum": [
"allow",
"block",
"omit"
]
},
"search": {
"type": "string",
"enum": [
"allow",
"block",
"omit"
]
},
"user_fetch": {
"type": "string",
"enum": [
"allow",
"block",
"omit"
]
},
"other": {
"type": "string",
"enum": [
"allow",
"block",
"omit"
]
}
},
"additionalProperties": false
},
"agents": {
"type": "object",
"description": "Per-token overrides, e.g. {\"GPTBot\": \"block\"}. Tokens: letters, digits, \"_\", \".\" and \"-\", up to 64 characters (not \"*\"). At most 100.",
"maxProperties": 100,
"propertyNames": {
"pattern": "^[A-Za-z0-9_.-]{1,64}$"
},
"additionalProperties": {
"type": "string",
"enum": [
"allow",
"block",
"omit"
]
}
},
"default": {
"type": "string",
"enum": [
"allow",
"block"
],
"description": "Policy for \"User-agent: *\" (default allow)."
},
"disallow_paths": {
"type": "array",
"maxItems": 100,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"description": "Paths to disallow for \"*\" and for allowed AI groups. Each path starts with \"/\" or \"*\" and has no whitespace or \"#\". At most 100."
},
"allow_paths": {
"type": "array",
"maxItems": 100,
"items": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"description": "Paths to allow explicitly. Each path starts with \"/\" or \"*\" and has no whitespace or \"#\". At most 100."
},
"sitemaps": {
"type": "array",
"maxItems": 20,
"items": {
"type": "string",
"maxLength": 2048
},
"description": "Absolute http(s) sitemap URLs. At most 20."
},
"sitemap": {
"type": "string",
"maxLength": 2048,
"description": "A single sitemap URL (alternative to sitemaps)."
},
"custom_rules": {
"type": "string",
"maxLength": 20000,
"description": "Extra robots.txt lines appended after validation (max 20000 bytes)."
},
"date": {
"type": "string",
"maxLength": 10,
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Date for the header comment (YYYY-MM-DD). Default: today (UTC)."
}
},
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"robots_txt": {
"type": "string"
},
"summary": {
"type": "array",
"items": {
"type": "object"
}
},
"notes": {
"type": "array",
"items": {
"type": "string"
}
},
"personal_agents_note": {
"type": "string"
}
},
"required": [
"robots_txt",
"summary",
"notes"
]
}🟢validate_robots(robots_txt, path)
Validate robots.txt text against RFC 9309 and report errors, warnings and, for one URL path, which registry AI crawlers are allowed or blocked and by which rule. Read-only, no network access. Same engine as POST /api/validate. Up to 50,000 characters over MCP (the whole JSON-RPC request must also fit in 64 KB); for larger files use POST /api/validate or check_site.
輸入結構描述
{
"type": "object",
"properties": {
"robots_txt": {
"type": "string",
"maxLength": 50000,
"description": "The robots.txt file content."
},
"path": {
"type": "string",
"maxLength": 2048,
"description": "URL path to test, starting with \"/\" (default \"/\")."
}
},
"required": [
"robots_txt"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"valid": {
"type": "boolean"
},
"errors": {
"type": "array",
"items": {
"type": "object"
}
},
"warnings": {
"type": "array",
"items": {
"type": "object"
}
},
"info": {
"type": "array",
"items": {
"type": "object"
}
},
"diagnostics": {
"type": "object"
},
"stats": {
"type": "object"
},
"path": {
"type": "string"
},
"ai_crawlers": {
"type": "array",
"items": {
"type": "object"
}
},
"personal_agents": {
"type": "object"
}
},
"required": [
"valid",
"errors",
"warnings",
"ai_crawlers"
]
}🟢check_site(url, path)
Fetch a site's /robots.txt (http/https on the default port only; private, loopback and internal addresses are refused; up to 512,000 bytes; results cached for 5 minutes) and report, for one path, which registry AI crawlers are allowed or blocked, plus validation errors and warnings. Read-only: one GET of /robots.txt with a RobotsGate user-agent. Same engine as GET /api/check.
輸入結構描述
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"maxLength": 2048,
"description": "Site URL or bare hostname, e.g. example.com. Only the scheme and host are used."
},
"path": {
"type": "string",
"maxLength": 2048,
"description": "URL path to test, starting with \"/\" (default \"/\")."
}
},
"required": [
"url"
],
"additionalProperties": false
}輸出結構描述
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"final_url": {
"type": "string"
},
"http_status": {
"type": "integer"
},
"redirects": {
"type": "integer"
},
"fetched_at": {
"type": "string"
},
"cache": {
"type": "object"
},
"robots_found": {
"type": "boolean"
},
"interpretation": {
"type": "string",
"enum": [
"parsed",
"unavailable",
"unreachable"
]
},
"path": {
"type": "string"
},
"ai_crawlers": {
"anyOf": [
{
"type": "array",
"items": {
"type": "object"
}
},
{
"type": "null"
}
],
"description": "Per-crawler results, or null when robots.txt was unreachable"
},
"personal_agents": {
"anyOf": [
{
"type": "object"
},
{
"type": "null"
}
],
"description": "Object, or null when robots.txt was unreachable"
}
},
"required": [
"url",
"final_url",
"http_status",
"robots_found",
"interpretation"
]
}社群
證據