Desktop Commander MCP
Desktop Commander MCP
Busca, actualiza, gestiona archivos y ejecuta comandos de terminal con IA
Trabaja con código y texto, ejecuta procesos y automatiza tareas, yendo mucho más allá de otros editores de IA, mientras usas las suscripciones del cliente anfitrión en lugar de costos de tokens de API.
🖥️ Prueba la aplicación Desktop Commander (Beta)
¿Quieres una mejor experiencia? La aplicación Desktop Commander te ofrece todo lo que hace el servidor MCP, además de:
Usa cualquier modelo de IA — Claude, GPT-4.5, Gemini 2.5, o cualquier modelo que prefieras
Ve los cambios de archivos en vivo — previsualizaciones visuales de archivos mientras la IA edita tus archivos
Añade MCPs y contexto personalizados — extiende con tus propias herramientas, sin archivos de configuración
Próximamente — sistema de habilidades, dictado, tareas programadas en segundo plano y más
👉 Descarga la aplicación (macOS y Windows)
El servidor MCP de abajo sigue funcionando muy bien con Claude Desktop y otros clientes MCP: la aplicación es para quienes quieren una experiencia dedicada y pulida.
Related MCP server: TermPipe MCP
Tabla de contenidos
Todas tus herramientas de desarrollo de IA en un solo lugar. Desktop Commander pone todas las herramientas de desarrollo en un solo chat. Ejecuta comandos de terminal de larga duración en tu computadora y gestiona procesos mediante el Protocolo de Contexto de Modelo (MCP). Construido sobre MCP Filesystem Server para proporcionar capacidades adicionales de búsqueda y reemplazo en la edición de archivos.
Características
Control remoto de IA - Usa Desktop Commander desde ChatGPT, Claude web y otros servicios de IA mediante Remote MCP
Interfaz de previsualización de archivos - Previsualizaciones visuales de archivos en Claude Desktop con markdown renderizado, imágenes en línea, contenido expandible, editor de markdown integrado y acceso rápido a "Abrir en carpeta"
Comandos de terminal mejorados con control interactivo de procesos
Ejecuta código en memoria (Python, Node.js, R) sin guardar archivos
Análisis de datos instantáneo - solo pide analizar archivos CSV/JSON/Excel
Soporte nativo de archivos Excel - Lee, escribe, edita y busca archivos Excel (.xlsx, .xls, .xlsm) sin herramientas externas
Soporte de PDF - Lee PDFs con extracción de texto, crea nuevos PDFs desde markdown, modifica PDFs existentes
Soporte de DOCX - Lee, crea, edita y busca documentos de Word (.docx) con edición quirúrgica de XML y conversión de markdown a DOCX
Interactúa con procesos en ejecución (SSH, bases de datos, servidores de desarrollo)
Ejecuta comandos de terminal con transmisión de salida
Soporte de tiempo de espera y ejecución en segundo plano
Gestión de procesos (listar y matar procesos)
Gestión de sesiones para comandos de larga duración
Paginación de salida de procesos - Lee la salida de terminal con controles de desplazamiento/longitud para evitar el desbordamiento de contexto
Gestión de configuración del servidor:
Obtener/establecer valores de configuración
Actualizar múltiples configuraciones a la vez
Cambios dinámicos de configuración sin reiniciar el servidor
Operaciones completas del sistema de archivos:
Leer/escribir archivos (texto, Excel, PDF, DOCX)
Crear/listar directorios
Listado recursivo de directorios con profundidad configurable y protección contra desbordamiento de contexto para carpetas grandes
Mover archivos/directorios
Buscar archivos y contenido (incluido contenido de Excel)
Obtener metadatos de archivos
Lectura de archivos con desplazamiento negativo: lee desde el final de los archivos usando valores de desplazamiento negativos (como Unix tail)
Capacidades de edición de código:
Reemplazos de texto quirúrgicos para cambios pequeños
Reescrituras completas de archivos para cambios grandes
Soporte de múltiples archivos
Reemplazos basados en patrones
Búsqueda recursiva de código o texto en carpetas basada en vscode-ripgrep
Registro de auditoría completo:
Todas las llamadas a herramientas se registran automáticamente
Rotación de registros con límite de tamaño de 10MB
Marcas de tiempo y argumentos detallados
Salvaguardas de seguridad (no es un sandbox — ver SECURITY.md):
Prevención de recorrido de enlaces simbólicos en operaciones de archivos
Lista de bloqueo de comandos para ejecución accidental
Aislamiento de Docker para aislamiento completo
Cómo instalar
Instalar en Claude Desktop
Desktop Commander ofrece múltiples métodos de instalación para Claude Desktop.
📋 Información de actualización y desinstalación: Las opciones 1, 2, 3, 4 y 6 tienen actualizaciones automáticas. La opción 5 requiere actualizaciones manuales. Ver detalles a continuación.
Solo ejecuta esto en la terminal:
npx @wonderwhy-er/desktop-commander@latest setupPara el modo de depuración (permite la conexión del inspector de Node.js):
npx @wonderwhy-er/desktop-commander@latest setup --debugOpciones de línea de comandos durante la configuración:
--debug: Habilita el modo de depuración para el inspector de Node.js--no-onboarding: Desactiva los avisos de incorporación para nuevos usuarios
Reinicia Claude si está en ejecución.
✅ Actualizaciones automáticas: Sí: se actualiza automáticamente al reiniciar Claude
🔄 Actualización manual: Ejecuta el comando de configuración nuevamente
🗑️ Desinstalación: Ejecuta npx @wonderwhy-er/desktop-commander@latest remove
curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install.sh | bashEste script maneja todas las dependencias y la configuración automáticamente.
✅ Actualizaciones automáticas: Sí
🔄 Actualización manual: Vuelve a ejecutar el comando del instalador bash anterior
🗑️ Desinstalación: Ejecuta npx @wonderwhy-er/desktop-commander@latest remove
Visita: https://smithery.ai/server/@wonderwhy-er/desktop-commander
Inicia sesión en Smithery si aún no lo has hecho
Selecciona tu cliente (Claude Desktop) en el lado derecho
Instala con la clave proporcionada que aparece después de seleccionar tu cliente
Reinicia Claude Desktop
✅ Actualizaciones automáticas: Sí: se actualiza automáticamente al reiniciar Claude 🔄 Actualización manual: Visita la página de Smithery y reinstala
Añade esta entrada a tu claude_desktop_config.json:
En Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonEn Windows:
%APPDATA%\Claude\claude_desktop_config.jsonEn Linux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander@latest"
]
}
}
}Reinicia Claude si está en ejecución.
✅ Actualizaciones automáticas: Sí: se actualiza automáticamente al reiniciar Claude
🔄 Actualización manual: Ejecuta el comando de configuración nuevamente
🗑️ Desinstalación: Ejecuta npx @wonderwhy-er/desktop-commander@latest remove o elimina la entrada de tu claude_desktop_config.json
git clone https://github.com/wonderwhy-er/DesktopCommanderMCP.git
cd DesktopCommanderMCP
npm run setupReinicia Claude si está en ejecución.
El comando de configuración instalará las dependencias, compilará el servidor y configurará la aplicación de escritorio de Claude.
❌ Actualizaciones automáticas: No: requiere actualizaciones manuales de git
🔄 Actualización manual: cd DesktopCommanderMCP && git pull && npm run setup
🗑️ Desinstalación: Ejecuta npx @wonderwhy-er/desktop-commander@latest remove o elimina el directorio clonado y la entrada del servidor MCP de la configuración de Claude
Perfecto para usuarios que quieren aislamiento o no tienen Node.js instalado. Se ejecuta en un contenedor Docker aislado con un entorno de trabajo persistente.
Requisitos previos: Docker Desktop instalado y en ejecución, y la aplicación Claude Desktop instalada.
macOS/Linux:
bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh)Windows PowerShell:
iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.ps1'))El instalador verificará Docker, descargará la imagen, solicitará el montaje de carpetas y configurará Claude Desktop.
Persistencia de Docker: Tus herramientas, configuraciones, archivos de trabajo y cachés de paquetes sobreviven a reinicios.
Configuración básica (sin acceso a archivos):
{
"mcpServers": {
"desktop-commander-in-docker": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp/desktop-commander:latest"]
}
}
}Con montaje de carpetas:
{
"mcpServers": {
"desktop-commander-in-docker": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/Users/username/Desktop:/mnt/desktop",
"-v", "/Users/username/Documents:/mnt/documents",
"mcp/desktop-commander:latest"
]
}
}
}Montaje avanzado de carpetas:
{
"mcpServers": {
"desktop-commander-in-docker": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "dc-system:/usr",
"-v", "dc-home:/root",
"-v", "dc-workspace:/workspace",
"-v", "dc-packages:/var",
"-v", "/Users/username/Projects:/mnt/Projects",
"-v", "/Users/username/Downloads:/mnt/Downloads",
"mcp/desktop-commander:latest"
]
}
}
}macOS/Linux:
# Check status
bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh) --status
# Reset all persistent data
bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh) --resetWindows PowerShell:
# Check status
$script = (New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.ps1'); & ([ScriptBlock]::Create("$script")) -Status
# Reset all data
$script = (New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.ps1'); & ([ScriptBlock]::Create("$script")) -Reset
# Show help
$script = (New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.ps1'); & ([ScriptBlock]::Create("$script")) -HelpSolución de problemas: Restablecer y reinstalar desde cero:
bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh) --reset && bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh)✅ Actualizaciones automáticas: Sí: la etiqueta latest obtiene automáticamente versiones más recientes
🔄 Actualización manual: docker pull mcp/desktop-commander:latest y luego reinicia Claude
Instalar en otros clientes
Desktop Commander funciona con cualquier cliente compatible con MCP. La configuración JSON estándar es:
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": ["-y", "@wonderwhy-er/desktop-commander@latest"]
}
}
}Añade esto al archivo de configuración MCP de tu cliente en las siguientes ubicaciones:
Ver servidor MCP en el directorio
O añade manualmente a ~/.cursor/mcp.json (global) o .cursor/mcp.json en la carpeta de tu proyecto (específico del proyecto).
Consulta la documentación de MCP de Cursor para más información.
Añade a ~/.codeium/windsurf/mcp_config.json. Consulta la documentación de MCP de Windsurf para más información.
Añade a .vscode/mcp.json en tu proyecto o en la configuración de usuario de VS Code (JSON). Asegúrate de que MCP esté habilitado en Chat > MCP. Funciona en modo Agente.
Consulta la documentación de MCP de VS Code para más información.
Configura a través de la configuración de la extensión Cline en VS Code. Abre la barra lateral de Cline, haz clic en el icono de Servidores MCP y añade la configuración JSON anterior. Consulta la documentación de MCP de Cline para más información.
Añade a tu archivo de configuración MCP de Roo Code. Consulta la documentación de MCP de Roo Code para más información.
claude mcp add --scope user desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latestElimina --scope user para instalar solo para el proyecto actual. Consulta la documentación de MCP de Claude Code para más información.
Usa la función "Añadir manualmente" y pega la configuración JSON anterior. Consulta la documentación de MCP de Trae para más información.
Ve a Kiro > MCP Servers, haz clic en + Add y pega la configuración JSON anterior. Consulta la documentación de Kiro MCP para obtener más información.
Codex usa configuración TOML. Ejecuta este comando para añadir Desktop Commander:
codex mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latestO añádelo manualmente a ~/.codex/config.toml:
[mcp_servers.desktop-commander]
command = "npx"
args = ["-y", "@wonderwhy-er/desktop-commander@latest"]Consulta la documentación de Codex MCP para obtener más información.
En los IDE de JetBrains, ve a Configuración → Herramientas → AI Assistant → Model Context Protocol (MCP), haz clic en + Añadir, selecciona Como JSON y pega la configuración JSON anterior. Consulta la documentación de JetBrains MCP para obtener más información.
Añádelo a ~/.gemini/settings.json:
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": ["-y", "@wonderwhy-er/desktop-commander@latest"]
}
}
}Consulta la documentación de Gemini CLI para obtener más información.
Pulsa Cmd/Ctrl+Shift+P, abre el panel de Augment y añade un nuevo servidor MCP llamado desktop-commander con la configuración JSON anterior. Consulta la documentación de Augment Code MCP para obtener más información.
Ejecuta este comando para añadir Desktop Commander:
qwen mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latestO añádelo a .qwen/settings.json (proyecto) o ~/.qwen/settings.json (global). Consulta la documentación de Qwen Code MCP para obtener más información.
Usa Desktop Commander desde ChatGPT, Claude web y otros servicios de IA a través de Remote MCP — sin necesidad de aplicación de escritorio.
👉 Empieza en mcp.desktopcommander.app
Cómo funciona:
Ejecutas un dispositivo remoto ligero en tu ordenador
Se conecta de forma segura al servicio Remote MCP en la nube
Tu IA envía comandos a través de la nube hasta tu dispositivo
Los comandos se ejecutan localmente y los resultados vuelven a tu IA
Tú mantienes el control — detente cuando quieras con
Ctrl+C
Seguridad
✅ El dispositivo solo se ejecuta cuando lo inicias
✅ Los comandos se ejecutan con tus permisos de usuario
✅ Autenticación OAuth segura y canal de comunicación cifrado
Actualización y desinstalación de Desktop Commander
Actualizaciones automáticas (Opciones 1, 2, 3, 4 y 6)
Las opciones 1 (npx), 2 (instalador bash), 3 (Smithery), 4 (configuración manual) y 6 (Docker) se actualizan automáticamente a la última versión cada vez que reinicias Claude. No se necesita intervención manual.
Actualizaciones manuales (Opción 5)
Opción 5 (checkout local):
cd DesktopCommanderMCP && git pull && npm run setup
Desinstalación de Desktop Commander
🤖 Desinstalación automática (Recomendada)
La forma más fácil de eliminar por completo Desktop Commander:
npx @wonderwhy-er/desktop-commander@latest removeEste desinstalador automático hará lo siguiente:
✅ Eliminará Desktop Commander de la configuración del servidor MCP de Claude
✅ Creará una copia de seguridad de tu configuración de Claude antes de realizar cambios
✅ Proporcionará orientación para la eliminación completa del paquete
✅ Restaurará desde la copia de seguridad si algo sale mal
🔧 Desinstalación manual
Si el desinstalador automático no funciona o prefieres la eliminación manual:
Eliminar de la configuración de Claude
Localiza tu archivo de configuración de Claude Desktop:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Edita el archivo de configuración:
Abre el archivo en un editor de texto
Busca y elimina la entrada
"desktop-commander"de la sección"mcpServers"Guarda el archivo
Ejemplo: elimina esta sección:
{
"desktop-commander": {
"command": "npx",
"args": ["@wonderwhy-er/desktop-commander@latest"]
}
}Cierra y reinicia Claude Desktop para completar la eliminación.
🆘 Solución de problemas
Si la desinstalación automática falla:
Utiliza la desinstalación manual como respaldo
Si Claude no se inicia después de desinstalar:
Restaura el archivo de configuración de respaldo creado por el desinstalador
O corrige manualmente la sintaxis JSON en tu claude_desktop_config.json
¿Necesitas ayuda?
Únete a nuestra comunidad de Discord: https://discord.com/invite/kQ27sNnZr7
Primeros pasos
Una vez que Desktop Commander esté instalado y Claude Desktop se haya reiniciado, ¡estás listo para potenciar tu experiencia con Claude!
🚀 Incorporación de nuevos usuarios
Desktop Commander incluye una incorporación inteligente para ayudarte a descubrir lo que es posible:
Para nuevos usuarios: Cuando estás empezando (menos de 10 comandos ejecutados con éxito), Claude te ofrecerá automáticamente una guía de inicio útil y tutoriales prácticos después de que uses Desktop Commander correctamente.
Solicita ayuda en cualquier momento: Puedes pedir asistencia de incorporación en cualquier momento simplemente diciendo:
"Ayúdame a empezar con Desktop Commander"
"Muéstrame ejemplos de Desktop Commander"
"¿Qué puedo hacer con Desktop Commander?"
Claude te mostrará entonces tutoriales y ejemplos aptos para principiantes, como:
📁 Organizar tu carpeta de Descargas automáticamente
📊 Analizar archivos CSV/Excel con Python
⚙️ Configurar CI/CD de GitHub Actions
🔍 Explorar y comprender bases de código
🤖 Ejecutar entornos de desarrollo interactivos
Uso
El servidor proporciona un conjunto completo de herramientas organizadas en varias categorías:
Herramientas disponibles
Categoría | Herramienta | Descripción |
Configuración |
| Obtén la configuración completa del servidor como JSON (incluye blockedCommands, defaultShell, allowedDirectories, fileReadLineLimit, fileWriteLineLimit, telemetryEnabled) |
| Establece un valor de configuración específico por clave. Ajustes disponibles: • | |
Terminal |
| Inicia programas con detección inteligente de cuándo están listos para recibir entrada |
| Envía comandos a programas en ejecución y obtén respuestas | |
| Lee la salida de los procesos en ejecución | |
| Fuerza la terminación de una sesión de terminal en ejecución | |
| Enumera todas las sesiones de terminal activas | |
| Enumera todos los procesos en ejecución con información detallada | |
| Termina un proceso en ejecución por PID | |
Sistema de archivos |
| Lee contenidos del sistema de archivos local, URLs, archivos de Excel (.xlsx, .xls, .xlsm) y PDFs con paginación basada en líneas/páginas |
| Lee varios archivos simultáneamente | |
| Escribe contenidos de archivos con opciones para modo de reescritura o anexado. Admite archivos de Excel (formato de matriz 2D JSON). Para PDFs, usa | |
| Crea nuevos archivos PDF a partir de markdown o modifica PDFs existentes (insertar/eliminar páginas). Admite estilos HTML/CSS y gráficos SVG | |
| Crea un nuevo directorio o asegura que exista | |
| Obtén un listado recursivo detallado de archivos y directorios (admite parámetro de profundidad, profundidad predeterminada=2) | |
| Mueve o renombra archivos y directorios | |
| Inicia una búsqueda en streaming de archivos por nombre o patrones de contenido (busca archivos de texto y contenido de Excel) | |
| Obtén resultados paginados de la búsqueda activa con soporte de offset | |
| Detén una búsqueda activa de forma ordenada | |
| Enumera todas las sesiones de búsqueda activas | |
| Recupera metadatos detallados sobre un archivo o directorio (incluye información de hojas para archivos de Excel) | |
Edición de texto |
| Aplica reemplazos de texto específicos para archivos de texto, o actualizaciones de celdas basadas en rangos para archivos de Excel |
Analítica |
| Obtén estadísticas de uso para tu propia información |
| Obtén el historial reciente de llamadas a herramientas con argumentos y salidas para depuración y recuperación de contexto | |
| Abre el formulario de comentarios en el navegador para proporcionar comentarios al equipo de Desktop Commander |
Ejemplos rápidos
Análisis de datos:
"Analyze sales.csv and show top customers" → Claude runs Python code in memoryAcceso remoto:
"SSH to my server and check disk space" → Claude maintains SSH sessionDesarrollo:
"Start Node.js and test this API" → Claude runs interactive Node sessionEjemplos de uso de herramientas
Formato de bloque Buscar/Reemplazar:
filepath.ext
<<<<<<< SEARCH
content to find
=======
new content
>>>>>>> REPLACEEjemplo:
src/main.js
<<<<<<< SEARCH
console.log("old message");
=======
console.log("new message");
>>>>>>> REPLACEFunciones mejoradas del bloque de edición
La herramienta edit_block incluye varias mejoras para una mayor fiabilidad:
Indicaciones mejoradas: Las descripciones de la herramienta ahora enfatizan hacer múltiples ediciones pequeñas y enfocadas en lugar de un gran cambio
Respaldo de búsqueda difusa: Cuando las coincidencias exactas fallan, realiza una búsqueda difusa y proporciona comentarios detallados
Diferencias a nivel de carácter: Muestra exactamente qué es diferente usando el formato
{-eliminado-}{+añadido+}Soporte de múltiples ocurrencias: Puede reemplazar varias instancias con el parámetro
expected_replacementsRegistro integral: Todas las búsquedas difusas se registran para análisis y depuración
Cuando una búsqueda falla, verá información detallada sobre la coincidencia más cercana encontrada, incluyendo el porcentaje de similitud, el tiempo de ejecución y las diferencias de caracteres. Todos estos detalles se registran automáticamente para su posterior análisis mediante las herramientas de registro de búsqueda difusa.
Compatibilidad con Docker
🐳 Uso de entorno aislado
Desktop Commander puede ejecutarse en contenedores Docker para aislamiento completo del sistema host, lo que proporciona riesgo cero para su computadora. Esto es perfecto para pruebas, desarrollo o cuando desea un sandboxing completo.
Instrucciones de instalación
Instale Docker para Windows/Mac
Descargue e instale Docker Desktop desde docker.com
Obtenga la configuración de Docker de Desktop Commander
Visite: https://hub.docker.com/mcp/server/desktop-commander/manual
Opción A: Use el comando de terminal proporcionado para la configuración automatizada
Opción B: Haga clic en "Standalone" para obtener el JSON de configuración y añadirlo manualmente a su configuración de Claude Desktop

Monte sus carpetas de la máquina (próximamente)
Las instrucciones sobre cómo montar sus directorios locales en el contenedor Docker se proporcionarán próximamente
Esto le permitirá trabajar con sus archivos manteniendo un aislamiento completo
Beneficios del uso de Docker
Aislamiento completo del sistema host
Entorno consistente en diferentes máquinas
Limpieza fácil: simplemente elimine el contenedor cuando termine
Perfecto para probar nuevas funciones o configuraciones
Soporte de URL
read_fileahora puede obtener contenido tanto de archivos locales como de URLEjemplo:
read_filecon el parámetroisUrl: truepara leer de recursos webManeja tanto contenido de texto como de imágenes de fuentes remotas
Las imágenes (locales o de URL) se muestran visualmente en la interfaz de Claude, no como texto
Claude puede ver y analizar el contenido real de la imagen
Tiempo de espera predeterminado de 30 segundos para solicitudes de URL
Interfaz de vista previa de archivos y editor Markdown
Desktop Commander incluye un widget de vista previa de archivos enriquecido en Claude Desktop que muestra los archivos visualmente mientras la IA trabaja con ellos.
Tipos de archivo compatibles
Markdown — vista previa renderizada con editor integrado
Imágenes — visualización en línea (PNG, JPEG, GIF, WebP, etc.)
Archivos de código — vista de código fuente con resaltado de sintaxis
HTML — vista previa renderizada con alternancia a la vista de código fuente
Directorios — árbol interactivo con expandir/contraer y carga diferida
PDF, Excel, DOCX — extracción y visualización nativa de contenido
Editor Markdown
Al visualizar un archivo .md en Claude Desktop, puede editarlo directamente dentro del panel de vista previa, sin necesidad de abrir una aplicación separada.
Cómo usarlo:
Pida a Claude que lea o cree un archivo markdown
Expanda la vista previa del archivo a pantalla completa usando el botón ⤢ Expandir
El editor se activa automáticamente en modo de pantalla completa
Edite su contenido con una vista previa en vivo, copiar, deshacer y controles de guardado
Los cambios se guardan en el disco; contraiga para volver a la vista en línea
Funciones del editor:
Alternancia de edición / vista previa en vivo: cambie entre markdown sin procesar y salida renderizada
Auto-guardado en disco con indicador de estado de guardado
Deshacer para revertir cambios no guardados
Botón Copiar para tomar el código fuente completo de markdown
Abrir en editor: inicie su aplicación de markdown predeterminada directamente desde el panel
Conocimiento de archivos parciales: carga y combina líneas circundantes cuando el archivo se leyó parcialmente
Contexto de selección de texto: seleccione texto en modo de vista previa y la IA puede referenciar su selección
Explorador de directorios
Cuando Claude ejecuta list_directory, el resultado se abre como un árbol de archivos interactivo dentro del panel de vista previa, no solo como salida de texto sin procesar.
Funciones:
Árbol expandible — las carpetas se expanden y contraen al hacer clic; el contenido de nivel superior se muestra inmediatamente
Carga diferida — las subcarpetas se cargan bajo demanda para mantener la vista inicial rápida
Manejo de directorios grandes — los directorios con muchos elementos muestran un botón
⚠ clic para cargar todoen lugar de abrumar la vistaAbrir en Finder/Explorador — cada carpeta tiene un botón de apertura rápida para revelarla en su administrador de archivos
Clic para vista previa — al hacer clic en cualquier archivo del árbol se abre directamente en el panel de vista previa de archivos
Navegación hacia atrás — después de abrir un archivo desde el árbol, un botón ← Atrás le devuelve a la vista de directorio
Otras funciones de vista previa
Expandir / contraer — alternar entre fila de resumen compacta y panel completo
Abrir en carpeta — revelar el archivo en Finder/Explorador con un solo clic
Cargar más líneas — cargar incrementalmente contenido por encima o por debajo de una ventana de lectura parcial
Selección de texto — resaltar texto en cualquier vista previa; la IA puede ver y referenciar su selección
Análisis de registros de búsqueda difusa (scripts npm)
El sistema de registro de búsqueda difusa incluye scripts npm convenientes para analizar registros fuera del entorno MCP:
# View recent fuzzy search logs
npm run logs:view -- --count 20
# Analyze patterns and performance
npm run logs:analyze -- --threshold 0.8
# Export logs to CSV or JSON
npm run logs:export -- --format json --output analysis.json
# Clear all logs (with confirmation)
npm run logs:clearPara documentación detallada sobre estos scripts, consulte scripts/README.md.
Registros de búsqueda difusa
Desktop Commander incluye un registro integral para las operaciones de búsqueda difusa en la herramienta edit_block. Cuando no se encuentra una coincidencia exacta, el sistema realiza una búsqueda difusa y registra información detallada para su análisis.
Qué se registra
Cada operación de búsqueda difusa registra:
Texto buscado y encontrado: El texto que está buscando vs. lo que se encontró
Puntuación de similitud: Qué tan cercana es la coincidencia (0-100 %)
Tiempo de ejecución: Cuánto tiempo tomó la búsqueda
Diferencias de caracteres: Diff detallado que muestra exactamente qué es diferente
Metadatos del archivo: Extensión, longitudes del texto buscado/encontrado
Códigos de caracteres: Códigos de caracteres específicos que causan diferencias
Ubicación del registro
Los registros se guardan automáticamente en:
macOS/Linux:
~/.claude-server-commander-logs/fuzzy-search.logWindows:
%USERPROFILE%\.claude-server-commander-logs\fuzzy-search.log
Qué aprenderá
Los registros de búsqueda difusa le ayudan a entender:
Por qué fallan las coincidencias exactas: Problemas comunes como diferencias de espacios en blanco, finales de línea o codificación de caracteres
Patrones de rendimiento: Cómo la complejidad de la búsqueda afecta el tiempo de ejecución
Problemas de tipo de archivo: Qué extensiones de archivo suelen tener problemas de coincidencia
Problemas de codificación de caracteres: Códigos de caracteres específicos que causan diferencias
Registro de auditoría
Desktop Commander ahora incluye un registro integral para todas las llamadas a herramientas:
Qué se registra
Cada llamada a herramienta se registra con marca de tiempo, nombre de la herramienta y argumentos (sanitizados por privacidad)
Los registros se rotan automáticamente cuando alcanzan 10 MB de tamaño
Ubicación del registro
Los registros se guardan en:
macOS/Linux:
~/.claude-server-commander/claude_tool_call.logWindows:
%USERPROFILE%\.claude-server-commander\claude_tool_call.log
Este rastro de auditoría ayuda con la depuración, el monitoreo de seguridad y la comprensión de cómo Claude interactúa con su sistema.
Manejo de comandos de larga duración
Para comandos que pueden tardar un tiempo:
Gestión de configuración
⚠️ Advertencias de seguridad importantes
Para información de seguridad completa y reporte de vulnerabilidades: Consulte SECURITY.md
Limitaciones de seguridad conocidas: Las restricciones de directorio y el bloqueo de comandos pueden eludirse mediante varios métodos, incluyendo enlaces simbólicos, sustitución de comandos y rutas absolutas o ejecución de código
Cambie siempre la configuración en una ventana de chat separada de donde realiza su trabajo real. Claude puede intentar modificar los ajustes de configuración (como
allowedDirectories) si encuentra restricciones de acceso al sistema de archivos.El ajuste
allowedDirectoriesactualmente solo restringe operaciones del sistema de archivos, no comandos de terminal. Los comandos de terminal aún pueden acceder a archivos fuera de los directorios permitidos.Para seguridad en producción: Use la instalación Docker que proporciona aislamiento completo del sistema host.
Herramientas de configuración
Puede gestionar la configuración del servidor usando las herramientas proporcionadas:
// Get the entire config
get_config({})
// Set a specific config value
set_config_value({ "key": "defaultShell", "value": "/bin/zsh" })
// Set multiple config values using separate calls
set_config_value({ "key": "defaultShell", "value": "/bin/bash" })
set_config_value({ "key": "allowedDirectories", "value": ["/Users/username/projects"] })La configuración se guarda en config.json en el directorio de trabajo del servidor y persiste entre reinicios del servidor.
Comprendiendo fileWriteLineLimit
El ajuste fileWriteLineLimit controla cuántas líneas se pueden escribir en una sola operación write_file (predeterminado: 50 líneas). Este límite existe por varias razones importantes:
Por qué existe el límite:
Las IA son derrochadoras con los tokens: En lugar de hacer dos ediciones pequeñas en un archivo, las IA pueden decidir reescribir todo el archivo. Estamos tratando de forzar a las IA a hacer las cosas en cambios más pequeños, ya que ahorra tiempo y tokens
Límites de mensajes de UX de Claude: Hay límites dentro de un mensaje y presionar "Continuar" no funciona realmente. Lo que intentamos aquí es hacer que la IA trabaje en fragmentos más pequeños para que cuando alcance ese límite, múltiples fragmentos hayan tenido éxito y ese trabajo no se pierda; solo necesita reiniciarse desde el último fragmento
Estableciendo el límite:
// You can set it to thousands if you want
set_config_value({ "key": "fileWriteLineLimit", "value": 1000 })
// Or keep it smaller to force more efficient behavior
set_config_value({ "key": "fileWriteLineLimit", "value": 25 })Valor máximo: Puede configurarlo en miles si lo desea: no hay restricción técnica.
Mejores prácticas:
Mantenga el valor predeterminado (50) para fomentar el comportamiento eficiente de la IA y evitar el desperdicio de tokens
El sistema sugiere automáticamente dividir en fragmentos cuando se exceden los límites
Los fragmentos más pequeños significan menos trabajo perdido cuando Claude alcanza los límites de mensajes
Mejores prácticas
Cree un chat dedicado para los cambios de configuración: Haga todos sus cambios de configuración en un chat, luego inicie un nuevo chat para su trabajo real.
Tenga cuidado con
allowedDirectoriesvacío: Configurarlo como una matriz vacía ([]) otorga acceso a todo su sistema de archivos para operaciones de archivos.Use rutas específicas: En lugar de usar rutas amplias como
/, especifique los directorios exactos a los que desea acceder.Verifique siempre la configuración después de los cambios: Use
get_config({})para confirmar que sus cambios se aplicaron correctamente.
Opciones de línea de comandos
Desktop Commander admite varias opciones de línea de comandos para personalizar el comportamiento:
Deshabilitar la incorporación
Por defecto, Desktop Commander muestra indicaciones útiles de incorporación a nuevos usuarios (aquellos con menos de 10 llamadas a herramientas). Puede deshabilitar este comportamiento:
# Disable onboarding for this session
node dist/index.js --no-onboarding
# Or if using npm scripts
npm run start:no-onboarding
# For npx installations, modify your claude_desktop_config.json:
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander@latest",
"--no-onboarding"
]
}
}
}Cuando la incorporación se deshabilita automáticamente:
Cuando el nombre del cliente MCP está configurado como "desktop-commander"
Cuando se usa el indicador
--no-onboardingDespués de que los usuarios hayan usado las indicaciones de incorporación o hayan realizado 10 o más llamadas a herramientas
Información de depuración:
El servidor registrará cuándo la incorporación está deshabilitada: "Onboarding disabled via --no-onboarding flag"
Uso de diferentes shells
Puede especificar qué shell usar para la ejecución de comandos:
// Using default shell (bash or system default)
execute_command({ "command": "echo $SHELL" })
// Using zsh specifically
execute_command({ "command": "echo $SHELL", "shell": "/bin/zsh" })
// Using bash specifically
execute_command({ "command": "echo $SHELL", "shell": "/bin/bash" })Esto le permite usar funciones específicas del shell o mantener entornos consistentes entre comandos.
execute_commanddevuelve después del tiempo de espera con la salida inicialEl comando continúa en segundo plano
Use
read_outputcon el PID para obtener nueva salidaUse
force_terminatepara detenerlo si es necesario
Depuración
Si necesita depurar el servidor, puede instalarlo en modo de depuración:
# Using npx
npx @wonderwhy-er/desktop-commander@latest setup --debug
# Or if installed locally
npm run setup:debugEsto:
Configurará Claude para usar un servidor separado "desktop-commander"
Habilitará el protocolo de inspector de Node.js con el indicador
--inspect-brk=9229Pausará la ejecución al inicio hasta que un depurador se conecte
Habilitará variables de entorno adicionales de depuración
Para conectar un depurador:
{"type":"text","text":"* En Chrome, visita chrome://inspect y busca la instancia de Node.js\n* En VS Code, usa la configuración de depuración "Attach to Node Process"\n* Otros IDE/herramientas pueden tener opciones similares de "adjuntar" para la depuración de Node.js\n\nNotas importantes de depuración:\n\n* El servidor se pausará al inicio hasta que un depurador se conecte (debido a la bandera --inspect-brk)\n* Si no ves actividad durante la depuración, asegúrate de estar conectado al proceso de Node.js correcto\n* Puede haber varios procesos de Node.js en ejecución; conéctate al que está en el puerto 9229\n* El servidor de depuración se identifica como "desktop-commander-debug" en la lista de servidores MCP de Claude\n\nSolución de problemas:\n\n* Si Claude agota el tiempo de espera al intentar usar el servidor de depuración, tu depurador podría no estar conectado correctamente\n* Cuando esté conectado correctamente, el proceso continuará la ejecución después de alcanzar el primer punto de interrupción\n* Puedes agregar puntos de interrupción adicionales en tu IDE una vez conectado\n\n## Integración con el Protocolo de Contexto de Modelo\n\nEste proyecto extiende el Servidor de Sistema de Archivos MCP para habilitar:\n\n* Soporte de servidor local en Claude Desktop\n* Ejecución completa de comandos del sistema\n* Gestión de procesos\n* Operaciones de archivos\n* Edición de código con bloques de búsqueda/reemplazo\n\nCreado como parte de la exploración de los MCP de Claude: https://youtube.com/live/TlbjFDbl5Us\n\n## Apoya a Desktop Commander\n\n<div align="center">\n 📢 APOYA ESTE PROYECTO\n Desktop Commander MCP es gratuito y de código abierto, ¡pero necesita tu apoyo para prosperar!\n\n <div style="background-color: #f8f9fa; padding: 15px; border-radius: 10px; margin: 20px 0; border: 2px solid #007bff;">\n Nuestra filosofía es simple: no queremos que pagues por ello si no tienes éxito. Pero si Desktop Commander contribuye a tu éxito, considera contribuir al nuestro.\n Formas de apoyar:\n <ul style="list-style-type: none; padding: 0;">\n 🌟 <a href="https://github.com/sponsors/wonderwhy-er\">GitHub Sponsors - Soporte recurrente\n ☕ <a href="https://www.buymeacoffee.com/wonderwhyer\">Buy Me A Coffee - Contribuciones únicas\n 💖 <a href="https://www.patreon.com/c/EduardsRuzga\">Patreon - Conviértete en mecenas y apóyanos mensualmente\n ⭐ <a href="https://github.com/wonderwhy-er/DesktopCommanderMCP\">Da una estrella en GitHub - Ayuda a otros a descubrir el proyecto\n \n \n\n\n### ❤️ Salón de la Fama de los Seguidores\n\nLos seguidores generosos aparecen aquí. ¡Gracias por ayudar a hacer posible este proyecto!\n\n<div align="center">\n\n \n <td align="center">\n <a href="https://github.com/jonrichards\">\n <img src="https://github.com/jonrichards.png\\\\" width="100px;" alt="Jon Richards"/>\n \n Jon Richards\n \n \n <td align="center">\n <a href="https://github.com/stepanic\">\n <img src="https://github.com/stepanic.png\\\\" width="100px;" alt="Matija Stepanic"/>\n \n Matija Stepanic\n \n \n \n\n\n\n\n Por qué tu apoyo es importante\n Tu apoyo nos permite:\n \n Continuar el desarrollo y mantenimiento activos\n Añadir nuevas funciones e integraciones\n Mejorar la compatibilidad entre plataformas\n Proporcionar mejor documentación y ejemplos\n Construir una comunidad más fuerte alrededor del proyecto\n \n\n\n## Sitio web\n\nVisita nuestro sitio web oficial en https://desktopcommander.app/ para obtener la información, documentación y actualizaciones más recientes.\n\n## Medios\n\nAprende más sobre este proyecto a través de estos recursos:\n\n### Artículo\n\nClaude con MCPs reemplazó a Cursor y Windsurf. ¿Cómo sucedió? - Una exploración detallada de cómo Claude con capacidades de Protocolo de Contexto de Modelo está cambiando los flujos de trabajo de los desarrolladores.\n\n### Video\n\nTutorial en video de Claude Desktop Commander - Mira cómo configurar y usar Commander de manera efectiva.\n\n### Publicación en AnalyticsIndiaMag\n\n
\nEste desarrollador abandonó Windsurf y Cursor usando Claude con MCPs\n\n### Comunidad\n\nÚnete a nuestro servidor de Discord para obtener ayuda, compartir comentarios y conectarte con otros usuarios.\n\n## Testimonios\n\n
https://www.youtube.com/watch?v=ly3bed99Dy8\\\&lc=UgyyBt6\\\_ShdDX\\\_rIOad4AaABAg\n\n\n
\nhttps://www.youtube.com/watch?v=ly3bed99Dy8\\\&lc=UgztdHvDMqTb9jiqnf54AaABAg\n\n
\nhttps://www.youtube.com/watch?v=ly3bed99Dy8\\\&lc=UgyQFTmYLJ4VBwIlmql4AaABAg\n\n
\nhttps://www.youtube.com/watch?v=ly3bed99Dy8\\\&lc=Ugy4-exy166\\\_Ma7TH-h4AaABAg\n\n
\nhttps://medium.com/@pharmx/you-sir-are-my-hero-62cff5836a3e\n\nSi encuentras útil este proyecto, considera darle una ⭐ estrella en GitHub. Esto ayuda a otros a descubrir el proyecto y fomenta un mayor desarrollo.\n\n¡Damos la bienvenida a las contribuciones de la comunidad! Ya sea que hayas encontrado un error, tengas una solicitud de función o quieras contribuir con código, así es como puedes ayudar:\n\n* ¿Encontraste un error? Abre un issue en github.com/wonderwhy-er/DesktopCommanderMCP/issues\n* ¿Tienes una idea de función? Envía una solicitud de función en la sección de issues\n* ¿Quieres contribuir con código? Haz un fork del repositorio, crea una rama y envía un pull request\n* ¿Preguntas o discusiones? Inicia una discusión en la pestaña de Discusiones de GitHub\n\nTodas las contribuciones, grandes o pequeñas, son muy apreciadas.\n\nSi encuentras esta herramienta valiosa para tu flujo de trabajo, considera apoyar el proyecto.\n\n## Preguntas Frecuentes\n\nAquí hay respuestas a algunas preguntas comunes. Para un FAQ más completo, consulta nuestro documento FAQ detallado.\n\n### ¿Qué es Desktop Commander?\n\nEs una herramienta MCP que permite a Claude Desktop acceder a tu sistema de archivos y terminal, convirtiendo a Claude en un asistente versátil para codificación, automatización, exploración de bases de código y más.\n\n### ¿En qué se diferencia de Cursor/Windsurf?\n\nA diferencia de las herramientas centradas en IDE, Claude Desktop Commander ofrece un enfoque centrado en soluciones que funciona con todo tu sistema operativo, no solo dentro de un entorno de codificación. Claude lee los archivos completos en lugar de fragmentarlos, puede trabajar en múltiples proyectos simultáneamente y ejecuta cambios de una sola vez en lugar de requerir revisión constante.\n\n### ¿Necesito pagar por créditos de API?\n\nNo. Esta herramienta funciona con la suscripción Pro estándar de Claude Desktop ($20/mes), no con llamadas a la API, por lo que no incurrirás en costos adicionales más allá de la tarifa de suscripción.\n\n### ¿Desktop Commander se actualiza automáticamente?\n\nSí, cuando se instala a través de npx o Smithery, Desktop Commander se actualiza automáticamente a la última versión cuando reinicias Claude. No se necesita ningún proceso de actualización manual.\n\n### ¿Cuáles son los casos de uso más comunes?\n\n* Explorar y comprender bases de código complejas\n* Generar diagramas y documentación\n* Automatizar tareas en todo tu sistema\n* Trabajar con múltiples proyectos simultáneamente\n* Hacer cambios de código quirúrgicos con control preciso\n\n### Tengo problemas para instalar o usar la herramienta. ¿Dónde puedo obtener ayuda?\n\nÚnete a nuestro servidor de Discord para obtener soporte de la comunidad, consulta los issues de GitHub para problemas conocidos, o revisa el FAQ completo para consejos de solución de problemas. También puedes visitar nuestra sección de FAQ del sitio web para una experiencia más amigable. Si encuentras un nuevo problema, considera abrir un issue de GitHub con detalles sobre tu problema.\n\n### ¿Cómo reporto vulnerabilidades de seguridad?\n\nPor favor, crea un Issue de GitHub con información detallada sobre cualquier vulnerabilidad de seguridad que descubras. Consulta nuestra Política de Seguridad para obtener pautas completas sobre divulgación responsable.\n\n## Recopilación de Datos y Privacidad\n\nDesktop Commander recopila telemetría limitada y seudónima para mejorar la herramienta. No recopilamos contenidos de archivos, rutas de archivos ni argumentos de comandos.\n\nExclusión: Pídele a Claude que "desactive la telemetría de Desktop Commander" o establece \"telemetryEnabled\": false en tu configuración.\n\nPara obtener detalles completos, consulta nuestra Política de Privacidad.\n\n## Verificaciones\n\n\n\n## Licencia\n\nMIT\n"}
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to safely perform actions on your computer including file system management, command execution, clipboard access, application launching, and local search with license-based monetization built in.
- AlicenseNot gradedqualityDmaintenanceProvides AI assistants with direct terminal access to execute commands, manage files, and run persistent REPL sessions. It features automated installation scripts that educate AI assistants on its capabilities for seamless integration.MIT
- AlicenseNot gradedqualityFmaintenanceEnables AI assistants to automate macOS desktop tasks including mouse control, keyboard input, screenshots, window management, and UI interaction.11415MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to control Windows systems through natural language commands, providing 200+ automation tools for system control, file operations, web automation, and more.48MIT
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/temporary111111/agent-mcp-gateway-v2'
If you have feedback or need assistance with the MCP directory API, please join our Discord server