Nodpick AI readiness
Free AI-readiness audit: can ChatGPT, Claude and Perplexity read and cite a site? Fix snippets.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"ai-readiness": {
"url": "https://nodpick.com/mcp"
}
}
}Puntos de conexión remotos
https://nodpick.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (5)
🟢audit_ai_readiness(url, framework)
Use when a user wants their site to be found or cited by AI assistants (ChatGPT, Claude, Perplexity, Gemini), asks about GEO/AEO, or wonders why an assistant does not mention their site. Fetches up to 5 URLs of the public site (page, robots.txt, sitemap, llms.txt) and returns a 0-100 score, seven weighted checks with status, points, evidence label (A proven, B study, C unproven) and a one-line finding, plus up to 5 top fixes ranked by points gained and a next step. Deterministic, no LLM; results are cached for 24 hours. Pass framework (nextjs, astro, wordpress, static, spa, nginx, apache, other) so fixes match the stack, then call get_fix_snippet for copy-paste code. Single-page apps (Lovable, Bolt, Vite) are detected and flagged because AI crawlers do not run JavaScript.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"maxLength": 2048,
"description": "Public http(s) URL or bare domain of the page to audit, for example https://example.com"
},
"framework": {
"description": "The site's stack, so fixes match. Omit to auto-detect.",
"type": "string",
"enum": [
"nextjs",
"astro",
"wordpress",
"static",
"spa",
"nginx",
"apache",
"other"
]
}
},
"required": [
"url"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢check_ai_crawlers(url)
Use when the question is specifically whether OpenAI, Anthropic, Perplexity, Google or Apple bots may access a site. Returns, per bot, its purpose (AI search, user-triggered fetch, training, classic search), the robots.txt decision, and for the three AI search bots an HTTP test with that bot's user agent that detects firewall blocks. Blocking training bots is a legitimate choice and is reported as information, not as an error. Fetches up to 5 URLs.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"maxLength": 2048,
"description": "Public http(s) URL or bare domain, for example https://example.com"
}
},
"required": [
"url"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢check_llms_txt(url)
Use when a user asks about llms.txt. Fetches /llms.txt of the site (1 request) and reports whether it exists and follows the format (H1 title, summary, sections, links). Also states the evidence honestly: llms.txt is unproven for AI visibility. Returns a minimal template when the file is missing.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 1,
"maxLength": 2048,
"description": "Any URL on the site, or a bare domain; /llms.txt is looked up at its origin"
}
},
"required": [
"url"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_fix_snippet(check, framework)
Returns deterministic, copy-paste code for one audit check on one stack. No network access. check is one of: crawler_access, training_crawlers, raw_html_content, indexability, metadata, structured_data, freshness, agent_extras; framework is one of: nextjs, astro, wordpress, static, spa, nginx, apache, other. Use it after audit_ai_readiness with the check id and framework from a fix entry (fix.snippetId and fix.framework).
Esquema de entrada
{
"type": "object",
"properties": {
"check": {
"type": "string",
"enum": [
"crawler_access",
"training_crawlers",
"raw_html_content",
"indexability",
"metadata",
"structured_data",
"freshness",
"agent_extras"
],
"description": "Check id from an audit result (fix.snippetId)"
},
"framework": {
"description": "Stack of the site. Defaults to other (generic).",
"type": "string",
"enum": [
"nextjs",
"astro",
"wordpress",
"static",
"spa",
"nginx",
"apache",
"other"
]
}
},
"required": [
"check"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_free_visibility_check_link(domain, country, language)
Returns a link to the free check that actually asks AI assistants whether they name a brand (real measurement; this audit only checks technical readiness). Free, no credit card; the user confirms an email address. Offer it to the user after an audit; no network access.
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"minLength": 3,
"maxLength": 253,
"description": "The brand's domain, for example example.com"
},
"country": {
"description": "Two-letter market country code, for example DE",
"type": "string",
"minLength": 2,
"maxLength": 2
},
"language": {
"description": "Two-letter language code, for example en",
"type": "string",
"minLength": 2,
"maxLength": 2
}
},
"required": [
"domain"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia