Servidor MCP de Shell
Una implementación en Node.js del Protocolo de Contexto de Modelo (MCP) que proporciona capacidades de ejecución segura de comandos de shell. Este servidor permite que los modelos de IA ejecuten comandos de shell en un entorno controlado con medidas de seguridad integradas. Se integra fácilmente con Claude Desktop para conectar Claude con su shell.
Características
- Implementación de servidor compatible con MCP
- Ejecución segura de comandos con protección de lista negra
- Validación de existencia de comando
- Transporte basado en E/S estándar
- Manejo de errores y apagado elegante
Instalación
Ejecute npx mcp-shell
.
Para añadirlo a Claude Desktop, ejecute npx mcp-shell config
. O bien, añada npx -y mcp-shell
manualmente a su configuración.
Inicie (o reinicie) Claude Desktop y debería ver la herramienta MCP en la página de inicio.
Características de seguridad
El servidor implementa varias medidas de seguridad:
- Lista negra de comandos
- Previene la ejecución de comandos peligrosos del sistema
- Bloquea el acceso a modificaciones críticas del sistema.
- Protege contra la destrucción del sistema de archivos.
- Previene la escalada de privilegios
- Validación de comandos
- Verifica la existencia del comando antes de su ejecución
- Valida contra la lista negra
- Devuelve mensajes de error claros para comandos no válidos
Herramientas disponibles
El servidor proporciona una herramienta:
comando_ejecutar
Ejecuta un comando de shell y devuelve su salida.
Esquema de entrada:
Respuesta:
- Éxito: Salida del comando como texto sin formato
- Error: Mensaje de error en texto sin formato
Comandos en la lista negra
Las siguientes categorías de comandos están bloqueadas por seguridad:
- Comandos de destrucción del sistema de archivos (rm, rmdir, del)
- Comandos de disco/sistema de archivos (formato, mkfs, dd)
- Comandos de permiso/propiedad (chmod, chown)
- Comandos de escalada de privilegios (sudo, su)
- Comandos de ejecución de código (exec, eval)
- Comandos de comunicación del sistema (escritura, pared)
- Comandos de control del sistema (apagado, reinicio, inicialización)
Manejo de errores
El servidor incluye un manejo integral de errores:
- Errores de comando no encontrado
- Errores de comando en la lista negra
- Errores de ejecución
- Errores del protocolo MCP
- Apagado elegante en SIGINT
Detalles de implementación
El servidor está construido utilizando:
- SDK de protocolo de contexto de modelo
- StdioServerTransport para la comunicación
- execa para la ejecución de comandos
- command-exists para la validación de comandos
Desarrollo
Para modificar la configuración de seguridad, puede:
- Edite el conjunto
BLACKLISTED_COMMANDS
para ajustar los comandos bloqueados - Modifique la función
validateCommand
para agregar reglas de validación adicionales - Mejorar la lógica de análisis de comandos en el controlador
CallToolRequestSchema
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
Una implementación de Node.js del Protocolo de contexto de modelo que proporciona capacidades de ejecución segura de comandos de shell, lo que permite que los modelos de IA como Claude ejecuten comandos de shell en un entorno controlado con medidas de seguridad integradas.
- Características
- Instalación
- Características de seguridad
- Herramientas disponibles
- Comandos en la lista negra
- Manejo de errores
- Detalles de implementación
- Desarrollo
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA secure shell command execution server implementing the Model Context Protocol (MCP). This server allows remote execution of whitelisted shell commands with support for stdin input.Last updated -174PythonMIT License
- AsecurityAlicenseAqualityA comprehensive Model Context Protocol server that provides advanced Node.js development tooling for automating project creation, component generation, package management, and documentation with AI-powered assistance.Last updated -72JavaScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that allows secure execution of pre-approved commands, enabling AI assistants to safely interact with the user's system.Last updated -1318JavaScript
- AsecurityAlicenseAqualityA server that uses the Model Context Protocol (MCP) to allow AI agents to safely execute shell commands on a host system.Last updated -1762TypeScriptMIT License