@bc360/shell
v0.1.3
Published
MCP shell server de BC360 - CMD y PowerShell, UTF-8, timeouts
Downloads
487
Readme
@bc360/shell
MCP shell server de B Consulting 360. Ejecuta comandos en CMD o PowerShell con salida UTF-8 garantizada (smartDecode CP850), timeouts configurables y stderr sin falsos errores. Sucesor de shell-runner-neo.
Instalación (Claude Desktop)
Requiere Node.js >= 18. Agregar en %APPDATA%\Claude\claude_desktop_config.json dentro de mcpServers:
"bc360-shell": {
"command": "npx",
"args": ["-y", "@bc360/shell"]
}Reiniciar Claude Desktop. Sustituye a las entradas shell (shell-runner-neo) y desktop-commander.
Herramientas
shell_execute— comando conshellopcional ("cmd" | "powershell"),timeout_ms,cwdyexpected_exit_codes; solo un exit code != 0 no previsto es errorget_config/set_config_value— config en~/.bc360-shell/config.json(defaultShell, defaultTimeoutMs, cmdFallbackEncoding, errorLogEnabled)
Comportamiento
- Timeouts y cancelación: al vencer
timeout_ms, o si Claude Desktop deja de esperar, se termina el proceso con todos sus subprocesos (en Windows no quedan huérfanos). No pedirtimeout_ms>= 4 min (techo de Claude Desktop). - Stdin cerrado: comandos interactivos de teclado fallan rápido; los que esperan red (ej.
npm login) solo se cortan por timeout. - Python: se inyectan
PYTHONUTF8=1,PYTHONIOENCODING=utf-8yPYTHONUNBUFFERED=1: acentos y emojis sin configuración, y salida parcial visible cuando hay timeout. - Errores esperados: si el exit code está en
expected_exit_codes, se devuelve como[esperado] Exit code: Nsin marcar error. - Bitácora de errores reales: todo error no previsto (exit code, timeout, cancelación) se registra en
~/.bc360-shell/errores.jsonlcon secretos censurados (--password,--value,API_KEY=,Bearer,--settingsde appsettings, etc.). Se apaga conset_config_value errorLogEnabled false.
Desarrollo
Repo: https://dev.azure.com/bconsulting360/mcps/_git/shell
