Command-Line MCP Server
Un servidor MCP seguro para ejecutar comandos de terminal con acceso controlado a directorios y permisos de comandos.
Documentación
Servidor MCP de Línea de Comandos
Un servidor MCP que permite a los asistentes de IA ejecutar comandos de terminal de forma segura. Los comandos están categorizados (lectura/escritura/sistema), los directorios están en la lista blanca y los patrones peligrosos se bloquean automáticamente.
Inicio Rápido
pip install cmd-line-mcp
# Or from source
git clone https://github.com/andresthor/cmd-line-mcp.git
cd cmd-line-mcp
pip install -e .
Ejecuta el servidor:
cmd-line-mcp # default config
cmd-line-mcp --config config.json # custom config
Configuración de Claude Desktop
Añade a ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cmd-line": {
"command": "/path/to/venv/bin/cmd-line-mcp",
"args": ["--config", "/path/to/config.json"],
"env": {
"CMD_LINE_MCP_SECURITY_REQUIRE_SESSION_ID": "false",
"CMD_LINE_MCP_SECURITY_AUTO_APPROVE_DIRECTORIES_IN_DESKTOP_MODE": "true"
}
}
}
}
Reinicia Claude Desktop después de guardar.
[!TIP] Establece
require_session_id: falsepara evitar bucles de aprobación en Claude Desktop.
Cómo Funciona
Los comandos pasan por un pipeline de validación antes de ejecutarse:
- Coincidencia de patrones — bloquea construcciones peligrosas (
system(), escapes de shell, etc.) - Clasificación de comandos — cada comando debe estar en la lista de lectura, escritura, sistema o bloqueados
- Verificación de directorio — el directorio de destino debe estar en la lista blanca o aprobado por la sesión
- Verificación de aprobación — los comandos de escritura/sistema requieren aprobación de la sesión
Se admiten tuberías, punto y coma y & — cada segmento se valida de forma independiente.
Lo Que Está Permitido
| Categoría | Comandos | Aprobación |
|---|---|---|
| Lectura | ls, cat, grep, find, head, tail, sort, wc, … | Automática |
| Escritura | cp, mv, rm, mkdir, touch, chmod, awk, sed, … | Requerida |
| Sistema | ps, ping, curl, ssh, xargs, … | Requerida |
| Bloqueados | sudo, bash, sh, python, eval, … | Siempre denegado |
Lo Que Está Bloqueado
Los shells, intérpretes de scripting y vectores conocidos de ejecución de comandos están bloqueados — incluida la ejecución indirecta a través de awk system(), sed /e, find -exec, tar --checkpoint-action, env y xargs. Consulta docs/SECURITY.md para ver la lista completa.
Configuración
El servidor funciona de fábrica con valores predeterminados sensatos. Personalízalo mediante configuración JSON, variables de entorno o archivos .env:
# Whitelist directories
export CMD_LINE_MCP_SECURITY_WHITELISTED_DIRECTORIES="/projects,/var/data"
# Add commands (merges with defaults)
export CMD_LINE_MCP_COMMANDS_READ="jq,rg"
Consulta docs/CONFIGURATION.md para obtener la referencia completa de configuración, documentación de herramientas MCP y detalles de seguridad de directorios.
Licencia
MIT