Configurable Command MCP Server

Un servidor MCP flexible que ejecuta herramientas de línea de comandos arbitrarias definidas en un archivo de configuración.

Documentación

Servidor MCP de Comandos Configurables

Un servidor flexible del Protocolo de Contexto de Modelos (MCP) que te permite definir y ejecutar herramientas de línea de comandos arbitrarias mediante archivos de configuración. Perfecto para darle a Claude Desktop acceso a utilidades específicas de línea de comandos de forma segura y controlada.

Características

  • 🛠️ Basado en configuración: Define herramientas mediante JSON sin modificar código
  • 🔒 Ejecución segura: Saneamiento de parámetros, restricciones de directorio y lista blanca de comandos
  • Límite de velocidad: Previene el abuso con límites de ejecución configurables
  • 📝 Validación de parámetros: Verificación de tipos, patrones y parámetros obligatorios/opcionales
  • 🎯 Ámbito de directorio: Restringe la ejecución de herramientas a directorios específicos
  • ⏱️ Control de tiempo de espera: Tiempos de espera de ejecución configurables por herramienta
  • 📊 Gestión de salida: Límites de tamaño y formato estructurado de resultados

Instrucciones de configuración

1. Crea el directorio del proyecto e instala las dependencias

cd /Users/dewoller/code/generic_mcp
npm install

2. Compila el código TypeScript

npm run build

3. Configura tus herramientas

Edita el archivo tools.json para definir tus herramientas de línea de comandos. El archivo ya está configurado con ejemplos útiles como:

  • list_files: Lista el contenido del directorio
  • grep_search: Busca patrones en archivos
  • word_count: Cuenta líneas/palabras/caracteres
  • git_status: Verifica el estado del repositorio git
  • find_files: Encuentra archivos por patrón
  • ¡Y más!

4. Configura Claude Desktop

Añade lo siguiente a tu archivo de configuración de Claude Desktop:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "command-executor": {
      "command": "node",
      "args": ["/Users/dewoller/code/generic_mcp/dist/index.js"],
      "env": {
        "CONFIG_PATH": "/Users/dewoller/code/generic_mcp/tools.json"
      }
    }
  }
}

5. Reinicia Claude Desktop

Después de guardar la configuración, reinicia Claude Desktop para cargar el servidor MCP.

Prueba de la instalación

Ejecuta las pruebas de integración

npm run test:integration

Esto probará varias herramientas y te mostrará su salida.

Pruebas manuales en modo de desarrollo

# Run in development mode (with TypeScript)
npm run dev

# Or run the built version
npm start

Ejemplos de uso

Una vez configurado, puedes pedirle a Claude que use estas herramientas:

  • "Lista todos los archivos JavaScript en mi directorio de código"
  • "Busca comentarios TODO en el proyecto"
  • "Muéstrame el estado de git"
  • "Cuenta las líneas en todos los archivos Python"
  • "Encuentra todos los archivos markdown"

Añadir herramientas personalizadas

Para añadir una nueva herramienta, edita tools.json:

{
  "name": "my_tool",
  "description": "Description for Claude",
  "command": "actual-command",
  "args": ["-flag", "{parameter}"],
  "parameters