Snapforge Ship-Ready Check
Free, read-only ship-readiness check for Replit, Lovable and Bolt apps.
¿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": {
"ship-ready-check": {
"url": "https://mcp.snapforgelab.com/mcp"
}
}
}Puntos de conexión remotos
https://mcp.snapforgelab.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (2)
🟢check_app(url)
Run a passive, read-only launch check on the public URL of a live app the user owns or is authorized to test (built with Replit, Lovable or Bolt). Checks: reachable and fast, SEO title/meta, robots/sitemap, security headers, open CORS, and a dev banner left in production. Only reads what any visitor's browser already sees (homepage, response headers, robots.txt, sitemap.xml); never scans JavaScript bundles for secrets, never signs in, submits forms, writes data or reads databases. Refuse private/internal addresses.
Esquema de entrada
{
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 4,
"description": "Public https URL of the app to check, e.g. https://yourapp.replit.app"
}
},
"required": [
"url"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"reachable": {
"type": "boolean"
},
"http_status": {
"type": "number"
},
"response_ms": {
"type": [
"number",
"null"
]
},
"stack": {
"type": "string"
},
"summary": {
"type": "string"
},
"free_audit": {
"type": "string"
},
"note": {
"type": "string"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"severity": {
"type": "string"
},
"title": {
"type": "string"
},
"detail": {
"type": "string"
},
"fix_prompt": {
"type": "string"
}
},
"required": [
"id",
"severity",
"title",
"detail"
]
}
}
},
"required": [
"url",
"reachable",
"stack",
"findings",
"free_audit"
]
}🟢get_fix_prompt(issue, builder)
Return a paste-ready prompt to fix a specific issue in the user's builder (Replit Agent, Lovable or Bolt). Use the issue id from check_app.
Esquema de entrada
{
"type": "object",
"properties": {
"issue": {
"type": "string",
"enum": [
"missing_security_headers",
"open_cors",
"sitemap_returns_html",
"missing_title_meta",
"dev_banner_in_prod",
"app_down"
]
},
"builder": {
"type": "string",
"enum": [
"replit",
"lovable",
"bolt"
]
}
},
"required": [
"issue"
],
"additionalProperties": false
}Esquema de salida
{
"type": "object",
"properties": {
"issue": {
"type": "string"
},
"builder": {
"type": "string"
},
"fix_prompt": {
"type": "string"
}
},
"required": [
"issue",
"builder",
"fix_prompt"
]
}Comunidad
Evidencia