Skip to main content
Glama

mcp-sandbox-server

Un servidor MCP (Model Context Protocol) remoto que proporciona a un agente de IA acceso autenticado a un shell y a archivos de un host de sandbox, además de una vía segura y limitada para desencadenar despliegues en un host de producción separado al que nunca debería tener acceso completo.

Qué hace

  • Herramientas MCP principales (run_command, read_file, write_file, list_directory) expuestas a través de HTTP Streamable, para que un agente pueda compilar/probar código directamente en el sandbox.

  • Un servidor de autorización OAuth 2.1 mínimo, construido desde cero: registro dinámico de clientes (RFC 7591), un endpoint de autorización protegido por una única credencial de administrador y un endpoint de token con PKCE. Esto existe porque los clientes MCP (como la interfaz de conexión de claude.ai) esperan un flujo OAuth completo, no un token bearer pegado, por lo que el servidor debe hablarlo, incluso para una configuración de un solo administrador.

  • Una puerta de enlace restringida a un segundo host más sensible (biscuit_status, biscuit_logs, biscuit_deploy, etc.). En lugar de confiar únicamente en el código de la herramienta para mantener al agente dentro de los límites, el límite real reside una capa más abajo: una clave SSH dedicada está restringida mediante command="..." en authorized_keys en el host de destino, de modo que, sin importar lo que el cliente envíe a través de esa clave, solo puede ejecutarse un único script fijo y de lista blanca. El código de la herramienta aquí solo construye la cadena de acción literal — no es el límite de seguridad, el comando forzado lo es.

Related MCP server: ssh-mcp

Por qué está construido así

La restricción interesante es que el mismo agente necesitaba dos niveles de confianza muy diferentes: shell completo y sin restricciones en un sandbox desechable, pero solo un puñado de operaciones preaprobadas y de solo lectura en un host que ejecuta servicios en vivo. En lugar de intentar aislar el comportamiento del agente (prompts, descripciones de herramientas, etc.), el diseño empuja el límite real hacia abajo, a algo que el sistema operativo aplica independientemente de lo que el agente decida enviar: un comando SSH forzado y un script de lista blanca con verificación de traversal de rutas.

Stack

Node.js, Express, @modelcontextprotocol/sdk, Zod. Sin base de datos: el estado de autenticación persiste en un pequeño archivo JSON junto al servidor.

Nota

Esta es una copia recortada y con identificadores eliminados de un servidor que se ejecuta en producción. Los nombres de host reales, las IP y los nombres de proyectos internos se han reemplazado con marcadores de posición (your-production-server-ip, project-a/project-b/project-c, etc.).

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to securely execute commands on remote hosts via SSH and SFTP, with persistent shells, file transfers, screenshots, and an audit log.
    5
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to execute SSH commands and transfer files via SFTP through a centralized HTTP gateway with per-client authorization, layered command policies, audit logging, rate limiting, circuit breakers, and connection pooling.
    8
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to remotely execute shell commands and transfer files on SSH hosts, including jump-host tunneling, background tasks, resumable transfers, and optional approval of destructive commands, while SSH credentials remain in the local process. It runs over stdio or a streamable HTTP daemon and supports auditing, allow/deny lists, and multiple authentication methods.
    ISC
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to inspect and manage remote hosts over SSH with tiered blast-radius containment that classifies and blocks destructive commands, plus forensic post-flight assertions that verify ports, processes, files, and HTTP health. It also provides long-running background task envelopes and atomic SFTP file editing with automatic backups, unified diffs, and one-click rollback.
    12
    MIT