Lilith Shell
Lilith Shell
Servidor MCP experimental que expone la ejecución de comandos de shell locales a un asistente de IA.
Estado actual
Este repositorio debe tratarse como un prototipo, no como un servidor de shell seguro.
La implementación actual expone una herramienta MCP, execute_command, que ejecuta una cadena de comandos proporcionada por el llamador a través de subprocess.run(..., shell=True). Tiene un tiempo de espera fijo de cinco minutos, captura stdout y stderr, y acepta un directorio de trabajo opcional. Actualmente no implementa los controles de seguridad descritos anteriormente en este README.
Acción de perfil recomendada: archivar o desanclar este repositorio hasta que el modelo de seguridad sea reconstruido y probado.
Related MCP server: Terminally MCP
Advertencia de seguridad
No ejecute esto contra un host, cuenta o directorio que contenga credenciales, datos de producción, código fuente privado, claves SSH, tokens en la nube u otro material sensible.
Brechas conocidas en el código actual:
Sin aplicación de listas blancas o negras de comandos
Sin modos estricto, permisivo o de bloqueo
Sin aplicación de límites de directorio de trabajo
Sin filtrado de entorno
Sin saneamiento de salida
Sin registro de auditoría
Sin selección de shell mediante configuración
Sin salida en streaming
Sin ruta de ejecución específica para Windows
shell=Truese utiliza con entradas de herramientas no confiables
Estas brechas hacen que el proyecto no sea adecuado para su uso en producción y sea arriesgado incluso en una estación de trabajo de desarrollador normal.
Lo que funciona hoy
El servidor MCP registra una herramienta:
execute_commandentrada: cadena
commandentrada opcional: cadena
directory, con valor predeterminado~comportamiento: ejecuta el comando en el directorio solicitado y devuelve el código de salida, stdout y stderr
Lo que se eliminó del alcance
El README anterior afirmaba soporte para listas blancas de comandos, detección de comandos peligrosos, modos configurables, saneamiento de salida, registro de auditoría, confinamiento de directorio de trabajo, selección de shell multiplataforma y salida en streaming. Esas capacidades no están presentes en el árbol de fuentes actual.
Plan de parches mínimos antes de volver a publicar
Antes de que esto se presente como un servidor MCP orientado a la seguridad:
Reemplazar la ejecución de cadenas
shell=Truecon ejecución basada en argv.Agregar un modo estricto obligatorio por defecto, con listas blancas de comandos explícitas.
Canonicalizar y aplicar una raíz de espacio de trabajo configurada antes de cada comando.
Crear pruebas para el análisis de comandos, comandos bloqueados, recorrido de rutas, escapes de enlaces simbólicos, comportamiento de tiempo de espera y límites de salida.
Redactar patrones de secretos comunes de la salida devuelta.
Agregar manejo de salida acotada para que los comandos grandes no puedan agotar la memoria o inundar las respuestas de MCP.
Agregar registros de comandos auditables con marcas de tiempo, cwd, código de salida y motivo del bloqueo.
Documentar exactamente qué shells, plataformas y límites de amenazas son compatibles.
Desarrollo
pip install -e ".[dev]"
pytestLicencia
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server teaching AI agents to implement TideCloak: auth, E2EE, IGA, security analysis
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
The Remote MCP server acts as a standardized bridge between LLM applications (like Claude, ChatGPT, and Cursor) and external services, enabling AI agents to access external tools and resources. Its primary capability is providing a centralized search tool to discover other MCP servers and their respective tools. Unlike local implementations, it runs remotely with OAuth authentication and permission controls for security.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP server that allows AI assistants like Claude to execute terminal commands on the user's computer and return the output, functioning like a terminal through AI.89-
- FlicenseNot gradedqualityDmaintenanceAn MCP server that gives AI assistants the ability to create, manage, and control terminal sessions through a safe, isolated tmux environment.1-
- AlicenseBqualityCmaintenanceA secure Model Context Protocol server that allows AI assistants to execute terminal commands with controlled directory access and command permissions. It features a robust security architecture including whitelisting, session IDs, and categorized command levels to ensure safe system interaction.8MIT
- AlicenseBqualityAmaintenanceA secure MCP server for shell operations, terminal management, and process control, enabling AI assistants to safely execute commands and manage interactive sessions.13153 npm6MIT