Ocho pasos. Cada uno toma una entrada, ejecuta una acción y emite una salida. Apunta SmeltSec a un repo o spec OpenAPI; obtén un servidor MCP firmado, puntuado y listo para desplegar.
Apunta SmeltSec a una de tres fuentes. Una URL de GitHub pública o privada dispara un clon del repositorio. Un documento OpenAPI 3.0/3.1 se parsea directamente. Una descripción en lenguaje natural recupera los docs de SDK relevantes. Salida: un bundle de código normalizado, listo para el AST.
Tree-sitter parsea el bundle y emite un AST tipado por archivo. SmeltSec recorre el árbol, extrae firmas de funciones públicas y handlers de ruta, y descarta lo marcado como interno o deprecado. Salida: una lista de candidatos llamables con sus anotaciones de tipo.
Un pase con LLM convierte cada candidato en una definición de herramienta MCP: nombre, descripción y un JSON Schema estricto para argumentos y tipo de retorno. Los docstrings alimentan las descripciones; las anotaciones de tipo se convierten en el schema. Salida: un manifiesto de herramientas tipadas listas para cablear a un servidor.
Cada definición de herramienta se convierte en un handler real. SmeltSec emite código FastMCP (Python 3.11) o TypeScript SDK, conecta retries, circuit breakers, sanitización de argumentos y el transporte que elijas. Salida: un repositorio de servidor MCP ejecutable con dependencias fijadas.
Todo local. Todo gratis. Semgrep ejecuta las reglas SAST, Gitleaks escanea el código y el historial de git en busca de secretos, OSV-Scanner comprueba las dependencias fijadas contra la base de datos OSV, MCP-Scan detecta envenenamiento de descripciones. Un hallazgo Crítico detiene el pipeline. Salida: un informe firmado de Gate 1.
Un LLM compara la descripción de cada herramienta con lo que su código hace de verdad. Los desajustes aparecen como deriva de comportamiento: una herramienta que dice leer pero también escribe, una descripción que oculta efectos secundarios, un permiso que nunca declaró. Este paso es de pago (≈ $0.02 por servidor). Salida: un informe de comportamiento con Pass / Warn / Fail por herramienta.
Seis dimensiones, una nota por servidor: claridad de descripción, completitud del schema, consistencia de nombres, solapamiento con herramientas existentes, superficie de errores y hooks de observabilidad. Cada dimensión tiene puntuación numérica y sugerencia de mejora. Salida: una report card (A–F) con acciones concretas.
SmeltSec empaqueta el servidor, los informes de ambos gates, la puntuación de calidad y un SBOM en una atestación firmada con cosign. Las configs de cliente para Claude Desktop, Cursor, VS Code, ChatGPT y Windsurf se escriben en una sola pasada por el daemon de sincronización. Salida: un servidor MCP firmado y desplegable, con cada herramienta conectada a cada cliente.
What to expect when running SmeltSec end to end.