@nazcamedia/mcp-shell
v1.0.3
Published
Servidor MCP para interacción con shell y sistema de archivos
Readme
NAZCAMEDIA MCP Shell
Un servidor MCP (Model Context Protocol) para interacción con shell y sistema de archivos, optimizado para Claude Desktop.
Descripción
Este proyecto es una reimplementación en TypeScript del proyecto WCGW, diseñado para proporcionar a Claude Desktop capacidades de interacción con el sistema de archivos y shell de forma eficiente y segura.
Características
- Operaciones de Shell: Ejecución de comandos con control de timeout y manejo de comandos interactivos.
- Operaciones de Archivo: Lectura, escritura y edición de archivos con verificación de sintaxis.
- Protecciones Integradas: Evita sobrescrituras accidentales y maneja archivos grandes de forma eficiente.
- Optimizado para Rendimiento: Implementado en TypeScript para reducir la sobrecarga de memoria.
Instalación
Requisitos previos
- Node.js (v14 o superior)
- npm o yarn
Pasos de instalación
Clonar el repositorio:
git clone https://github.com/NAZCAMEDIA/NAZCAMEDIA-mcp-shell.git cd NAZCAMEDIA-mcp-shellInstalar dependencias:
npm installCompilar el proyecto:
npm run build
Uso
Iniciar el servidor
npm startPor defecto, el servidor se inicia en el puerto 3000. Puedes cambiar el puerto utilizando la variable de entorno PORT:
PORT=3001 npm startDesarrollo
Para ejecutar el servidor en modo desarrollo con recarga automática:
npm run devIntegración con Claude Desktop
Para integrar con Claude Desktop, edita el archivo de configuración de Claude:
macOS y Linux
Edita o crea el archivo ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"nazcamedia-shell": {
"command": "node",
"args": [
"/ruta/completa/a/NAZCAMEDIA-mcp-shell/dist/index.js"
]
}
}
}Windows
Edita o crea el archivo %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"nazcamedia-shell": {
"command": "node",
"args": [
"C:\\ruta\\completa\\a\\NAZCAMEDIA-mcp-shell\\dist\\index.js"
]
}
}
}Herramientas MCP disponibles
- Initialize: Inicializa el entorno de shell y establece el directorio de trabajo.
- BashCommand: Ejecuta un comando de shell.
- BashInput: Envía entrada a un proceso interactivo.
- ReadFiles: Lee el contenido de uno o más archivos.
- WriteIfEmpty: Crea un nuevo archivo o escribe en un archivo vacío.
- FileEdit: Edita un archivo existente usando bloques de búsqueda y reemplazo.
Seguridad
Este servidor MCP incluye varias protecciones para evitar operaciones peligrosas:
- Los archivos deben ser leídos antes de ser editados.
- Los archivos existentes no vacíos no pueden ser sobrescritos con WriteIfEmpty.
- Los comandos de shell tienen un timeout configurable.
Licencia
ISC
Créditos
Este proyecto es una reimplementación de WCGW por Aman Rusia, adaptado para las necesidades específicas de NAZCAMEDIA.
