Skip to main content
Glama
temporary111111

Desktop Commander MCP

Desktop Commander MCP

Поиск, обновление, управление файлами и выполнение терминальных команд с помощью ИИ

npm downloads AgentAudit Verified Trust Score Buy Me A Coffee

Discord

Работайте с кодом и текстом, запускайте процессы и автоматизируйте задачи, выходя далеко за рамки других ИИ-редакторов — используя подписки клиентского хоста вместо затрат на API-токены.

🖥️ Попробуйте приложение Desktop Commander (бета-версия)

Хотите лучший опыт? Приложение Desktop Commander даёт вам всё, что делает MCP-сервер, плюс:

  • Используйте любую ИИ-модель — Claude, GPT-4.5, Gemini 2.5 или любую другую модель

  • Наблюдайте за изменениями файлов в реальном времени — визуальный предпросмотр файлов, пока ИИ редактирует ваши файлы

  • Добавляйте собственные MCP и контекст — расширяйте своими инструментами без файлов конфигурации

  • Скоро — система навыков, диктовка, фоновые запланированные задачи и многое другое

👉 Скачать приложение (macOS и Windows)

MCP-сервер, описанный ниже, по-прежнему отлично работает с Claude Desktop и другими MCP-клиентами — приложение предназначено для тех, кто хочет получить выделенный и отполированный опыт.

Related MCP server: TermPipe MCP

Содержание

Все ваши инструменты разработки с ИИ в одном месте. Desktop Commander объединяет все инструменты разработки в одном чате. Выполняйте длительные терминальные команды на своём компьютере и управляйте процессами через Model Context Protocol (MCP). Создан на основе MCP Filesystem Server для предоставления дополнительных возможностей поиска и замены при редактировании файлов.

Возможности

  • Удалённое управление ИИ — используйте Desktop Commander из ChatGPT, Claude web и других ИИ-сервисов через Remote MCP

  • Интерфейс предпросмотра файлов — визуальный предпросмотр файлов в Claude Desktop с отрисованным markdown, встроенными изображениями, раскрывающимся содержимым, встроенным редактором markdown и быстрым доступом «Открыть в папке»

  • Расширенные терминальные команды с интерактивным управлением процессами

  • Выполнение кода в памяти (Python, Node.js, R) без сохранения файлов

  • Мгновенный анализ данных — просто попросите проанализировать файлы CSV/JSON/Excel

  • Встроенная поддержка Excel — чтение, запись, редактирование и поиск файлов Excel (.xlsx, .xls, .xlsm) без внешних инструментов

  • Поддержка PDF — чтение PDF с извлечением текста, создание новых PDF из markdown, изменение существующих PDF

  • Поддержка DOCX — чтение, создание, редактирование и поиск документов Word (.docx) с точным XML-редактированием и преобразованием markdown в DOCX

  • Взаимодействие с запущенными процессами (SSH, базы данных, серверы разработки)

  • Выполнение терминальных команд с потоковой передачей вывода

  • Тайм-аут команд и поддержка фонового выполнения

  • Управление процессами (список и завершение процессов)

  • Управление сессиями для длительных команд

  • Пагинация вывода процессов — чтение вывода терминала с контролем смещения/длины для предотвращения переполнения контекста

  • Управление конфигурацией сервера:

    • Получение/установка значений конфигурации

    • Обновление нескольких настроек одновременно

    • Динамическое изменение конфигурации без перезапуска сервера

  • Полные операции с файловой системой:

    • Чтение/запись файлов (текст, Excel, PDF, DOCX)

    • Создание/список каталогов

    • Рекурсивный список каталогов с настраиваемой глубиной и защитой от переполнения контекста для больших папок

    • Перемещение файлов/каталогов

    • Поиск файлов и содержимого (включая содержимое Excel)

    • Получение метаданных файлов

    • Чтение файлов с отрицательным смещением: чтение с конца файлов с использованием отрицательных значений смещения (как Unix tail)

  • Возможности редактирования кода:

    • Точные текстовые замены для небольших изменений

    • Полная перезапись файлов для крупных изменений

    • Поддержка нескольких файлов

    • Замены на основе шаблонов

    • Рекурсивный поиск кода или текста в папках на основе vscode-ripgrep

  • Полное ведение журнала аудита:

    • Все вызовы инструментов автоматически регистрируются

    • Ротация журналов с ограничением размера 10 МБ

    • Подробные временные метки и аргументы

  • Защитные ограничения (не песочница — см. SECURITY.md):

    • Предотвращение обхода симлинков при файловых операциях

    • Чёрный список команд для предотвращения случайного выполнения

    • Изоляция Docker для полной изоляции

Как установить

Установка в Claude Desktop

Desktop Commander предлагает несколько способов установки для Claude Desktop.

📋 Информация об обновлении и удалении: Варианты 1, 2, 3, 4 и 6 имеют автоматические обновления. Вариант 5 требует ручного обновления. Подробности ниже.

Просто выполните в терминале:

npx @wonderwhy-er/desktop-commander@latest setup

Для режима отладки (позволяет подключение инспектора Node.js):

npx @wonderwhy-er/desktop-commander@latest setup --debug

Параметры командной строки при установке:

  • --debug: Включить режим отладки для инспектора Node.js

  • --no-onboarding: Отключить приветственные подсказки для новых пользователей

Перезапустите Claude, если он запущен.

✅ Автообновления: Да — автоматически обновляется при перезапуске Claude
🔄 Ручное обновление: Выполните команду установки снова
🗑️ Удаление: Выполните npx @wonderwhy-er/desktop-commander@latest remove

curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install.sh | bash

Этот скрипт автоматически обрабатывает все зависимости и конфигурацию.

✅ Автообновления: Да
🔄 Ручное обновление: Повторно выполните команду bash-установщика выше
🗑️ Удаление: Выполните npx @wonderwhy-er/desktop-commander@latest remove

  1. Посетите: https://smithery.ai/server/@wonderwhy-er/desktop-commander

  2. Войдите в Smithery, если ещё не вошли

  3. Выберите свой клиент (Claude Desktop) справа

  4. Установите с помощью предоставленного ключа, который появится после выбора клиента

  5. Перезапустите Claude Desktop

✅ Автообновления: Да — автоматически обновляется при перезапуске Claude
🔄 Ручное обновление: Посетите страницу Smithery и переустановите

Добавьте эту запись в ваш claude_desktop_config.json:

  • На Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  • На Windows: %APPDATA%\Claude\claude_desktop_config.json

  • На Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "desktop-commander": {
      "command": "npx",
      "args": [
        "-y",
        "@wonderwhy-er/desktop-commander@latest"
      ]
    }
  }
}

Перезапустите Claude, если он запущен.

✅ Автообновления: Да — автоматически обновляется при перезапуске Claude
🔄 Ручное обновление: Выполните команду установки снова
🗑️ Удаление: Выполните npx @wonderwhy-er/desktop-commander@latest remove или удалите запись из claude_desktop_config.json

git clone https://github.com/wonderwhy-er/DesktopCommanderMCP.git
cd DesktopCommanderMCP
npm run setup

Перезапустите Claude, если он запущен.

Команда установки установит зависимости, соберёт сервер и настроит настольное приложение Claude.

❌ Автообновления: Нет — требуются ручные обновления через git
🔄 Ручное обновление: cd DesktopCommanderMCP && git pull && npm run setup
🗑️ Удаление: Выполните npx @wonderwhy-er/desktop-commander@latest remove или удалите клонированный каталог и запись MCP-сервера из конфигурации Claude

Идеально для пользователей, которые хотят изоляции или у которых нет Node.js. Работает в изолированном Docker-контейнере с постоянной рабочей средой.

Предварительные требования: Docker Desktop установлен и запущен, установлено приложение Claude Desktop.

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'))

Установщик проверит Docker, загрузит образ, предложит смонтировать папку и настроит Claude Desktop.

Постоянство Docker: Ваши инструменты, конфигурации, рабочие файлы и кэши пакетов переживают перезапуски.

Базовая настройка (без доступа к файлам):

{
  "mcpServers": {
    "desktop-commander-in-docker": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp/desktop-commander:latest"]
    }
  }
}

С монтированием папки:

{
  "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"
      ]
    }
  }
}

Расширенное монтирование папки:

{
  "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) --reset

Windows 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")) -Help

Устранение неполадок: Сброс и переустановка с нуля:

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)

✅ Автообновления: Да — тег latest автоматически получает новые версии
🔄 Ручное обновление: docker pull mcp/desktop-commander:latest, затем перезапустите Claude

Установка в других клиентах

Desktop Commander работает с любым MCP-совместимым клиентом. Стандартная JSON-конфигурация:

{
  "mcpServers": {
    "desktop-commander": {
      "command": "npx",
      "args": ["-y", "@wonderwhy-er/desktop-commander@latest"]
    }
  }
}

Добавьте это в файл конфигурации MCP вашего клиента в указанных ниже местах:

Install MCP Server

Просмотреть MCP-сервер в каталоге

Или добавьте вручную в ~/.cursor/mcp.json (глобально) или .cursor/mcp.json в папке проекта (для конкретного проекта).

См. документацию Cursor MCP для получения дополнительной информации.

Добавьте в ~/.codeium/windsurf/mcp_config.json. См. документацию Windsurf MCP для получения дополнительной информации.

Добавьте в .vscode/mcp.json в вашем проекте или в настройки пользователя VS Code (JSON). Убедитесь, что MCP включён в разделе Chat > MCP. Работает в режиме Agent.

См. документацию VS Code MCP для получения дополнительной информации.

Настройте через параметры расширения Cline в VS Code. Откройте боковую панель Cline, нажмите значок MCP Servers и добавьте приведённую выше JSON-конфигурацию. См. документацию Cline MCP для получения дополнительной информации.

Добавьте в файл конфигурации MCP Roo Code. См. документацию Roo Code MCP для получения дополнительной информации.

claude mcp add --scope user desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latest

Удалите --scope user, чтобы установить только для текущего проекта. См. документацию Claude Code MCP для получения дополнительной информации.

Используйте функцию «Добавить вручную» и вставьте приведённую выше JSON-конфигурацию. См. документацию Trae MCP для получения дополнительной информации.

Перейдите в Kiro > MCP Servers, нажмите + Add и вставьте приведённую выше JSON-конфигурацию. Подробнее см. в документации Kiro MCP.

Codex использует TOML-конфигурацию. Выполните эту команду, чтобы добавить Desktop Commander:

codex mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latest

Или добавьте вручную в ~/.codex/config.toml:

[mcp_servers.desktop-commander]
command = "npx"
args = ["-y", "@wonderwhy-er/desktop-commander@latest"]

Подробнее см. в документации Codex MCP.

В IDE JetBrains перейдите в Settings → Tools → AI Assistant → Model Context Protocol (MCP), нажмите + Add, выберите As JSON и вставьте приведённую выше JSON-конфигурацию. Подробнее см. в документации JetBrains MCP.

Добавьте в ~/.gemini/settings.json:

{
  "mcpServers": {
    "desktop-commander": {
      "command": "npx",
      "args": ["-y", "@wonderwhy-er/desktop-commander@latest"]
    }
  }
}

Подробнее см. в документации Gemini CLI.

Нажмите Cmd/Ctrl+Shift+P, откройте панель Augment и добавьте новый MCP-сервер с именем desktop-commander с приведённой выше JSON-конфигурацией. Подробнее см. в документации Augment Code MCP.

Выполните эту команду, чтобы добавить Desktop Commander:

qwen mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latest

Или добавьте в .qwen/settings.json (для проекта) или ~/.qwen/settings.json (глобально). Подробнее см. в документации Qwen Code MCP.

Используйте Desktop Commander из ChatGPT, Claude web и других ИИ-сервисов через Remote MCP — без необходимости устанавливать десктопное приложение.

👉 Начните на mcp.desktopcommander.app

Как это работает:

  1. Вы запускаете лёгкое Remote Device на своём компьютере

  2. Оно безопасно подключается к облачному сервису Remote MCP

  3. Ваш ИИ отправляет команды через облако на ваше устройство

  4. Команды выполняются локально, результаты возвращаются вашему ИИ

  5. Вы сохраняете контроль — остановите в любой момент с помощью Ctrl+C

Безопасность

  • ✅ Устройство работает только когда вы его запускаете

  • ✅ Команды выполняются с правами вашего пользователя

  • ✅ Безопасная OAuth-аутентификация и зашифрованный канал связи

Обновление и удаление Desktop Commander

Автоматические обновления (варианты 1, 2, 3, 4 и 6)

Вариант 1 (npx), вариант 2 (bash-установщик), 3 (Smithery), 4 (ручная настройка) и 6 (Docker) автоматически обновляются до последней версии при каждом перезапуске Claude. Ручное вмешательство не требуется.

Ручные обновления (вариант 5)

  • Вариант 5 (локальная копия): cd DesktopCommanderMCP && git pull && npm run setup

Удаление Desktop Commander

🤖 Автоматическое удаление (рекомендуется)

Самый простой способ полностью удалить Desktop Commander:

npx @wonderwhy-er/desktop-commander@latest remove

Этот автоматический деинсталлятор:

  • ✅ Удаляет Desktop Commander из конфигурации MCP-серверов Claude

  • ✅ Создаёт резервную копию конфигурации Claude перед внесением изменений

  • ✅ Предоставляет инструкции по полному удалению пакета

  • ✅ Восстанавливает из резервной копии в случае сбоя

🔧 Ручное удаление

Если автоматический деинсталлятор не работает или вы предпочитаете удаление вручную:

Удаление из конфигурации Claude
  1. Найдите файл конфигурации Claude Desktop:

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

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • Linux: ~/.config/Claude/claude_desktop_config.json

  1. Отредактируйте файл конфигурации:

  • Откройте файл в текстовом редакторе

  • Найдите и удалите запись "desktop-commander" из раздела "mcpServers"

  • Сохраните файл

Пример — удалите этот раздел:

{
    "desktop-commander": {
      "command": "npx",
      "args": ["@wonderwhy-er/desktop-commander@latest"]
    }
}

Закройте и перезапустите Claude Desktop, чтобы завершить удаление.

🆘 Устранение неполадок

Если автоматическое удаление не сработало:

  • Используйте ручное удаление как запасной вариант

Если Claude не запускается после удаления:

  • Восстановите резервный файл конфигурации, созданный деинсталлятором

  • Или вручную исправьте синтаксис JSON в вашем claude_desktop_config.json

Нужна помощь?

Начало работы

После установки Desktop Commander и перезапуска Claude Desktop вы готовы расширить возможности Claude!

🚀 Онбординг для новых пользователей

Desktop Commander включает интеллектуальный онбординг, который поможет вам узнать о возможностях:

Для новых пользователей: Когда вы только начинаете (менее 10 успешных команд), Claude автоматически предложит полезные руководства и практические уроки после успешного использования Desktop Commander.

Запросить помощь в любое время: Вы можете запросить помощь по онбордингу в любой момент, просто сказав:

  • «Помоги мне начать работу с Desktop Commander»

  • «Покажи мне примеры Desktop Commander»

  • «Что я могу делать с Desktop Commander?»

Claude покажет вам уроки и примеры для начинающих, в том числе:

  • 📁 Автоматическая сортировка папки Downloads

  • 📊 Анализ CSV/Excel-файлов с помощью Python

  • ⚙️ Настройка GitHub Actions CI/CD

  • 🔍 Изучение и понимание кодовых баз

  • 🤖 Запуск интерактивных сред разработки

Использование

Сервер предоставляет полный набор инструментов, сгруппированных по нескольким категориям:

Доступные инструменты

Категория

Инструмент

Описание

Конфигурация

get_config

Получить полную конфигурацию сервера в формате JSON (включает blockedCommands, defaultShell, allowedDirectories, fileReadLineLimit, fileWriteLineLimit, telemetryEnabled)

set_config_value

Установить конкретное значение конфигурации по ключу. Доступные настройки: blockedCommands: массив команд оболочки, которые нельзя выполнятьdefaultShell: оболочка для выполнения команд (например, bash, zsh, powershell)allowedDirectories: массив путей файловой системы, к которым сервер может обращаться для операций с файлами (⚠️ терминальные команды всё равно могут обращаться к файлам за пределами этих каталогов)fileReadLineLimit: максимальное количество строк для чтения за раз (по умолчанию: 1000)fileWriteLineLimit: максимальное количество строк для записи за раз (по умолчанию: 50)telemetryEnabled: включить/отключить телеметрию (логическое значение)

Терминал

start_process

Запуск программ с автоматическим определением готовности к вводу

interact_with_process

Отправка команд запущенным программам и получение ответов

read_process_output

Чтение вывода запущенных процессов

force_terminate

Принудительное завершение запущенной терминальной сессии

list_sessions

Список всех активных терминальных сессий

list_processes

Список всех запущенных процессов с подробной информацией

kill_process

Завершение запущенного процесса по PID

Файловая система

read_file

Чтение содержимого из локальной файловой системы, URL-адресов, файлов Excel (.xlsx, .xls, .xlsm) и PDF-файлов с постраничной разбивкой по строкам/страницам

read_multiple_files

Чтение нескольких файлов одновременно

write_file

Запись содержимого в файл с возможностью перезаписи или добавления. Поддерживает файлы Excel (формат JSON 2D-массива). Для PDF-файлов используйте write_pdf

write_pdf

Создание новых PDF-файлов из Markdown или изменение существующих PDF-файлов (вставка/удаление страниц). Поддерживает HTML/CSS-стилизацию и SVG-графику

create_directory

Создание нового каталога или проверка его существования

list_directory

Получение подробного рекурсивного списка файлов и каталогов (поддерживает параметр глубины, по умолчанию depth=2)

move_file

Перемещение или переименование файлов и каталогов

start_search

Запуск потокового поиска файлов по имени или содержимому (ищет в текстовых файлах и содержимом Excel)

get_more_search_results

Получение дополнительных результатов поиска с поддержкой смещения

stop_search

Остановка активного поиска корректным образом

list_searches

Список всех активных сессий поиска

get_file_info

Получение подробных метаданных о файле или каталоге (включает информацию о листах для файлов Excel)

Текстовый редактор

edit_block

Применение точечных замен текста для текстовых файлов или обновление диапазонов ячеек для файлов Excel

Аналитика

get_usage_stats

Получение статистики использования для собственного анализа

get_recent_tool_calls

Получение истории последних вызовов инструментов с аргументами и результатами для отладки и восстановления контекста

give_feedback_to_desktop_commander

Открытие формы обратной связи в браузере для отправки отзывов команде Desktop Commander

Быстрые примеры

Анализ данных:

"Analyze sales.csv and show top customers" → Claude runs Python code in memory

Удалённый доступ:

"SSH to my server and check disk space" → Claude maintains SSH session

Разработка:

"Start Node.js and test this API" → Claude runs interactive Node session

Примеры использования инструментов

Формат блока поиска/замены:

filepath.ext
<<<<<<< SEARCH
content to find
=======
new content
>>>>>>> REPLACE

Пример:

src/main.js
<<<<<<< SEARCH
console.log("old message");
=======
console.log("new message");
>>>>>>> REPLACE

Расширенные возможности функции edit_block

Инструмент edit_block включает несколько улучшений для повышения надёжности:

  1. Улучшенные подсказки: описания инструментов теперь emphasize, что лучше вносить несколько небольших точечных изменений, а не одно крупное.

  2. Резервный нечёткий поиск: когда точное совпадение не находится, выполняется нечёткий поиск с подробным отчётом.

  3. Поразрядные diff: точно показывается, что отличается, с помощью формата {-removed-}{+added+}.

  4. Поддержка нескольких вхождений: можно заменить несколько экземпляров с помощью параметра expected_replacements.

  5. Полное журналирование: все нечёткие поиски записываются в журнал для анализа и отладки.

Если поиск завершается неудачей, вы увидите подробную информацию о ближайшем найденном совпадении, включая процент сходства, время выполнения и различия в символах. Все эти детали автоматически записываются в журнал для последующего анализа с помощью инструментов журнала нечёткого поиска.

Поддержка Docker

🐳 Использование изолированного окружения

Desktop Commander можно запускать в Docker-контейнерах для полной изоляции от вашей системы, что обеспечивает нулевой риск для вашего компьютера. Это отлично подходит для тестирования, разработки или когда нужна полная песочница.

Инструкция по установке

  1. Установите Docker для Windows/Mac

    • Загрузите и установите Docker Desktop с docker.com

  2. Получите конфигурацию Docker для Desktop Commander

    • Перейдите по адресу: https://hub.docker.com/mcp/server/desktop-commander/manual

    • Вариант A: используйте приведённую команду терминала для автоматической настройки

    • Вариант B: нажмите «Standalone», чтобы получить JSON-конфигурацию, и добавьте её вручную в конфигурацию Claude Desktop docker-config.png

  3. Подключение папок вашего компьютера (скоро будет доступно)

    • Инструкции по подключению локальных директорий к Docker-контейнеру будут предоставлены позже

    • Это позволит работать с вашими файлами, сохраняя полную изоляцию

Преимущества использования Docker

  • Полная изоляция от вашей основной системы

  • Однородное окружение на разных компьютерах

  • Простая очистка — достаточно удалить контейнер после завершения работы

  • Идеально для тестирования новых функций или конфигураций

Поддержка URL

  • read_file теперь может получать содержимое как из локальных файлов, так и по URL-адресам

  • Пример: read_file с параметром isUrl: true для чтения веб-ресурсов

  • Обрабатывается как текстовый, так и графический контент из удалённых источников

  • Изображения (локальные или по URL) отображаются в интерфейсе Claude визуально, а не как текст

  • Claude может видеть и анализировать фактическое содержимое изображений

  • Тайм-аут по умолчанию для URL-запросов: 30 секунд

Интерфейс предпросмотра файлов и Markdown-редактор

Desktop Commander включает полноценный виджет предпросмотра файлов в Claude Desktop, который визуально отображает файлы во время работы ИИ.

Поддерживаемые типы файлов

  • Markdown — визуализированный предпросмотр со встроенным редактором

  • Изображения — встроенное отображение (PNG, JPEG, GIF, WebP и т. д.)

  • Файлы кода — просмотр исходного кода с подсветкой синтаксиса

  • HTML — визуализированный предпросмотр с переключением на исходный код

  • Директории — интерактивное дерево с разворачиванием, сворачиванием и отложенной загрузкой

  • PDF, Excel, DOCX — нативное извлечение и отображение содержимого

Markdown-редактор

При просмотре файла .md в Claude Desktop вы можете редактировать его прямо внутри панели предпросмотра — отдельное приложение открывать не нужно.

Как пользоваться:

  1. Попросите Claude прочитать или создать markdown-файл

  2. Разверните предпросмотр файла на весь экран с помощью кнопки ⤢ Развернуть

  3. В полноэкранном режиме редактор активируется автоматически

  4. Редактируйте содержимое, используя переключатель живого предпросмотра, кнопки копирования, отмены и сохранения

  5. Изменения сохраняются на диск; сверните панель, чтобы вернуться к встроенному виду

Возможности редактора:

  • Живое переключение «редактирование / предпросмотр» — то raw markdown, то отрисованный результат

  • Автосохранение на диск с индикатором сохранения

  • Отмена — возврат несохранённых изменений

  • Кнопка копирования — загружает весь исходный код markdown

  • Открыть в редакторе — запустить приложение Markdown по умолчанию прямо из панели

  • Участие частично загруженных файлов — загружаются и объединяются окружающие строки, когда файл прочитан лишь частично

  • Контекст выделения текста — выделите текст в режиме предпросмотра, и ИИ сможет ссылаться на ваш выбор

Обозреватель директорий

Когда Claude запускает list_directory, результат открывается в виде интерактивного дерева файлов в панели предпросмотра, а не просто в виде текстового вывода.

Возможности:

  • Разворачиваемое дерево — папки разворачиваются и сворачиваются по клику; содержимое верхнего уровня видно сразу

  • Отложенная загрузка — вложенные папки загружаются по мере необходимости, не замедляя первый просмотр

  • Обработка больших директория — для каталогов с большим числом элементов вместо перегруженного списка отображается кнопка ⚠ click to load all

  • Открыть в Finder/Explorer — у каждой папки есть копка быстрого открытия, чтобы показать её в файловом менеджере

  • Клик для предпросмотра — клик по любому файлу в дереве открывает его в панели предпросмотра

  • Возврат к директории — после открытия файла из дерева кнопка ← Back возвращает к просмотру каталога

Прочие функции предпросмотра

  • Развернуть / свернуть — переключение между компактной строкой сводки и полной панелью

  • Открыть в папке — показать файл в Finder/Explorer одним кликом

  • Загрузить других строк — постепенная подгрузка содержимого выше или ниже частично прочитанного диапазона

  • Выделение текста — выделите текст в любом предпросмотре; ИИ увидит и сможет ссылаться на ваш выбор

Анализ журналов нечёткого поиска (npm-скрипты)

Система журналирования нечёткого поиска включает удобные npm-скрипты для анализа журналов вне 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:clear

Подробную документацию по этим скриптам см. в scripts/README.md.

Журналы нечёткого поиска

Desktop Commander включает подробное журналирование операций нечёткого поиска в инструменте edit_block. Если точное совпадение не найдено, система выполняет нечёткий поиск и записывает подробные данные для анализа.

Что записывается в журнал

Каждая операция нечёткого поиска сохраняет:

  • Искомый и найденный текст: то, что вы ищете, по сравнению с тем, что найдено

  • Оценку сходства: насколько близко совпадение (0–100%)

  • Время выполнения: как долго шел поиск

  • Символьные различия: подробный diff, показывающий точными различия

  • Метаданные файла: расширение, длины исходного и найденного текста

  • Коды символов: конкретные коды символов, вызвавших изменения

Расположение журнала

Журналы автоматически сохраняются в:

  • macOS/Linux: ~/.claude-server-commander-logs/fuzzy-search.log

  • Windows: %USERPROFILE%\.claude-server-commander-logs\fuzzy-search.log

Что вы узнаете из журналов

Журналы нечёткого поиска помогают понять:

  1. Почему точные совпадения не срабатывают: типичные проблемы — различие пробелов, конец строк или кодировки

  2. Паттерны производительности: как сложность поиска влияет на время выполнения

  3. Проблемы с типами файлов: у каких типов расширений чаще всего проблемы с совпадением

  4. Кодировки: определённые коды символов, приводящие к изменениям

Журнал аудита

Desktop Commander теперь включает подробное журналирование всех вызовов инструментов:

Что записывается в журнал

  • Каждый вызов инструмента записывается с меткой времени, именем инструмента и аргументами (санизированными для конфиденциальности)

  • При достижении размера 10 МБ журналы автоматически ротируются

Расположение журнала

Журналы сохраняются в:

  • macOS/Linux: ~/.claude-server-commander/claude_tool_call.log

  • Windows: %USERPROFILE%\.claude-server-commander\claude_tool_call.log

Этот аудит-трейл помогает при отладке, мониторинге безопасности и понимании того, как Claude взаимодействует с вашей системой.

Работа с длительными командами

Для команд, выполнение которых может занять время:

Управление конфигурацией

⚠️ Важные предупреждения по безопасности

Всеобъемлющую информацию по безопасности и сообщениям об уязвимостях см. в SECURITY.md

  1. Известные ограничения безопасности: ограничения на директории и блокировку команд могут быть обойдены разными способами, включая симлинки, подстановка команд, абсолютные пути и выполнение кода.

  2. Всегда вносите изменения в отдельном окне чата от того окна, где вы выполняете основную работу. При столкновении с ограничениями доступа к файловой системе Claude может попытаться изменить параметры конфигурации (вроде allowedDirectories).

  3. Параметр allowedDirectories в настоящее время ограничивает только файловые операции, but не терминальные команды. Терминальные команды по-прежнему могут получать доступ к каталогам вне разрешённых.

  4. Для production-безопасности используйте установку Docker, которая обеспечивает полную изоляцию от вашей системы.

Инструменты конфигурации

Вы можете управлять конфигурацией сервера с помощью инструментария:

// 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"] })

Конфигурация сохраняется в config.json в рабочей папке сервера и сохраняется после перезапусков сервера.

Что такое fileWriteLineLimit

Настройка fileWriteLineLimit управляет тем, сколько строк может быть записано за одну операцию write_file (по умолчанию: 50 строк). Этот лимит существует по нескольким важным причинам:

Почему предусмотрен лимит:

  • ИИ расходуют токены впустую: вместо того чтобы сделать две небольших правки в файле, ИИ может решить переписать его целиком. Мы стараемся побуждать делать ИИ изменения меньшими порциями, это экономит время и токены

  • Лимиты сообщений в Claude UX: в одном сообщении есть лимиты, и нажатие «Continue» не даёт нужного результата. Здесь цель — чтобы ИИ работал маленькими кусками: когда лимит будет достигнут, уже успело выполниться несколько кусков, и работа не теряется — просто нужно продолжить с последнего куска

Установка лимита:

// 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 })

Максимальное значение: вы можете поставить и несколько тысяч — никаких технических ограничений нет.

Рекомендации:

  • Как правило, оставляйте значение по умолчанию (50), чтобы поощрять эффективное поведение ИИ и экономить токены

  • При превышении лимита система автоматически предлагает разбить изменения на части

  • Чем меньше куски, тем меньше работы теряется при достижении лимита сообщений Claude

Лучшие практики

  1. Создайте отдельный чат для изменения конфигурации: внесите все изменения конфигурации в одном чате, затем начните новый чат для основной работы.

  2. Осторожно с пустым allowedDirectories: если задать ему пустой массив [], это предоставит доступ ко всей вашей файловой системе для файловых операций.

  3. Используйте конкретные пути: вместо общих путей вроде / указывайте точные каталоги, к которым нужен доступ.

  4. Всегда проверяйте конфигурацию после изменений: с помощью get_config({}) убедитесь, что изменения применяются правильно.

Параметры командной строки

Desktop Commander поддерживает несколько параметров командной строки для изменения поведения:

Отключение онбординга

По умолчанию Desktop Commander показывает полезные подсказки онбординга новым пользователям (тем, у кого менее 10 вызовов инструментов). Это поведение можно отключить:

# 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"
      ]
    }
  }
}

Когда онбординг отключается автоматически:

  • Когда имя MCP-клиента установлено как «desktop-commander»

  • Когда используется флаг --no-onboarding

  • Когда пользователь использовал подсказки онбординга или совершил 10+ вызовов инструментов

Отладочная информация: Сервер запротоколирует отключение онбординга: "Onboarding disabled via --no-onboarding flag"

Использование разных оболочек команд

Вы можете указать оболочку, которая будет использоваться для выполнения команд:

// 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" })

Это позволяет задействовать функции конкретной оболочки или поддерживать постоянное окружение в разных командах.

  1. execute_command возвращает после тайм-аута начальный вывод

  2. Команда продолжает выполняться в фоне

  3. Используйте read_output с PID, чтобы получить новый вывод

  4. Используйте force_terminate, чтобы остановить при необходимости

Отладка

Если вам нужно отладить сервер, установите его в режиме отладки:

# Using npx
npx @wonderwhy-er/desktop-commander@latest setup --debug

# Or if installed locally
npm run setup:debug

Это приведёт к следующему:

  1. Настроит Claude на использование отдельного сервера «desktop-commander»

  2. Включит протокол инспектора Node.js с флагом --inspect-brk=9229

  3. Приостановит выполнение в начале до подключения отладчика

  4. Включит дополнительные переменные окружения отладки

Чтобы подключить отладчик:

  • В Chrome откройте chrome://inspect и найдите экземпляр Node.js

  • В VS Code используйте конфигурацию отладки «Attach to Node Process»

  • Другие IDE/инструменты могут иметь аналогичные опции «attach» для отладки Node.js

Важные замечания по отладке:

  • Сервер будет приостановлен при запуске, пока не подключится отладчик (из-за флага --inspect-brk)

  • Если вы не видите активности во время отладки, убедитесь, что вы подключены к правильному процессу Node.js

  • Может быть запущено несколько процессов Node.js; подключитесь к тому, который работает на порту 9229

  • Отладочный сервер идентифицируется как «desktop-commander-debug» в списке MCP-серверов Claude

Устранение неполадок:

  • Если Claude выходит по тайм-ауту при попытке использовать отладочный сервер, возможно, ваш отладчик не подключен должным образом

  • При правильном подключении процесс продолжит выполнение после достижения первой точки останова

  • После подключения вы можете добавить дополнительные точки останова в вашей IDE

Интеграция с Model Context Protocol

Этот проект расширяет MCP Filesystem Server, чтобы обеспечить:

  • Поддержку локального сервера в Claude Desktop

  • Полное выполнение системных команд

  • Управление процессами

  • Файловые операции

  • Редактирование кода с блоками поиска/замены

Создано в рамках изучения Claude MCP: https://youtube.com/live/TlbjFDbl5Us

Поддержка Desktop Commander

❤️ Зал славы сторонников

Здесь представлены щедрые сторонники. Спасибо, что помогаете делать этот проект возможным!

Веб-сайт

Посетите наш официальный сайт https://desktopcommander.app/ для получения последней информации, документации и обновлений.

Медиа

Узнайте больше об этом проекте через эти ресурсы:

Статья

Claude с MCP заменил Cursor и Windsurf. Как это произошло? — Подробное исследование того, как возможности Claude с Model Context Protocol меняют рабочие процессы разработчиков.

Видео

Видеоурок по Claude Desktop Commander — Посмотрите, как настроить и эффективно использовать Commander.

Публикация в AnalyticsIndiaMag

analyticsindiamag.png Этот разработчик отказался от Windsurf и Cursor, используя Claude с MCP

Сообщество

Присоединяйтесь к нашему Discord-серверу, чтобы получить помощь, поделиться отзывами и пообщаться с другими пользователями.

Отзывы

Это спасает жизнь! Я плачу за Claude + Cursor, которые, как мне всегда казалось, дублируют друг друга. Это окончательно решает проблему. Я так счастлив. Огромное спасибо. Плюс сегодня Claude добавил поддержку веб-поиска. С этим MCP + интернет-поиском он пишет код с последними обновлениями. Это так хорошо, когда Cursor иногда не работает или все быстрые запросы израсходованы. https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=UgyyBt6\_ShdDX\_rIOad4AaABAg

Это первый комментарий, который я когда-либо оставил на видео YouTube, СПАСИБО! Я пытался обновить старое приложение Flutter в Cursor со старой версии до null-safety до текущей версии и внедрил null-safety с помощью Claude 3.7. Я почти справился, но были критические ошибки BLE, которые я пытался решить днями безрезультатно. Я попробовал Augment Code, но он тоже не справился. Я внедрил ваш MCP в Claude Desktop и смог полностью сравнить старую и новую кодовые базы, учитывая обновления в коде, и исправил проблемы за пару часов. Совет тем, кто пытается это сделать: обязательно индексируйте изменения и делайте коммиты, когда это уместно, чтобы можно было отменить нежелательные изменения. Потрясающе! https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=UgztdHvDMqTb9jiqnf54AaABAg

Отлично! Я только что использовал Windsurf, купил лицензию неделю назад, для обновления старого fullstack-проекта на socket, и он работает много раз хорошо или нормально, но также много раз срывается в каскад, и приходится откатывать все изменения, теряя сотни каскадных токенов. Всего за неделю осталось меньше 100 токенов, и я не хочу покупать всего 300 токенов за 10$. Этот Claude MCP, наконец-то купил Claude Pro, но хотел очень вескую причину иметь его рядом с ChatGPT, и теперь могу писать код сколько угодно, не беспокоясь о стоимости токенов.
Кроме того, это гораздо больше, чем редактирование кода, это гораздо больше, спасибо за отличное видео! https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=UgyQFTmYLJ4VBwIlmql4AaABAg

Это отличный инструмент, спасибо, мне нравится им пользоваться, так как он дает Claude возможность делать точечные правки, делая его больше похожим на разработчика-человека. https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=Ugy4-exy166\_Ma7TH-h4AaABAg

Вы, сэр, мой герой. Вы в значительной степени резюмировали и описали мой недавний опыт гораздо лучше, чем я мог бы. И Cursor, и Windsurf довели меня до того, что я чуть не кричал на экран компьютера. По прихоти я подумал: почему бы просто не спросить Claude напрямую, и с тех пор не оглядывался.
Сначала Claude, чтобы сохранить рассудок, затем, если необходимо, взаимодействовать с другими IDE, фреймворками и т.д. Я думал, что я такой один, рад видеть, что это не так, лол.
33
1 https://medium.com/@pharmx/you-sir-are-my-hero-62cff5836a3e

Если вы считаете этот проект полезным, пожалуйста, подумайте о том, чтобы поставить ему ⭐ звезду на GitHub! Это помогает другим узнать о проекте и способствует дальнейшему развитию.

Мы приветствуем вклад сообщества! Нашли ли вы ошибку, есть ли у вас запрос функции или вы хотите внести свой код, вот как вы можете помочь:

  • Нашли ошибку? Откройте issue на github.com/wonderwhy-er/DesktopCommanderMCP/issues

  • Есть идея функции? Отправьте запрос функции в разделе issues

  • Хотите внести код? Сделайте форк репозитория, создайте ветку и отправьте pull request

  • Вопросы или обсуждения? Начните обсуждение на вкладке GitHub Discussions

Любой вклад, большой или маленький, очень ценится!

Если вы считаете этот инструмент ценным для вашего рабочего процесса, пожалуйста, подумайте о поддержке проекта.

Часто задаваемые вопросы

Здесь приведены ответы на некоторые распространенные вопросы. Для более полного FAQ см. наш подробный документ FAQ.

Что такое Desktop Commander?

Это MCP-инструмент, который позволяет Claude Desktop получать доступ к вашей файловой системе и терминалу, превращая Claude в универсального помощника для программирования, автоматизации, исследования кодовой базы и многого другого.

Чем это отличается от Cursor/Windsurf?

В отличие от инструментов, ориентированных на IDE, Claude Desktop Commander предлагает подход, ориентированный на решение, который работает со всей вашей операционной системой, а не только в среде разработки. Claude читает файлы целиком, а не фрагментами, может работать с несколькими проектами одновременно и выполняет изменения за один раз, не требуя постоянного пересмотра.

Нужно ли платить за API-кредиты?

Нет. Этот инструмент работает со стандартной подпиской Pro в Claude Desktop (20 долларов в месяц), а не с API-вызовами, поэтому вы не понесете дополнительных расходов, кроме платы за подписку.

Обновляется ли Desktop Commander автоматически?

Да, при установке через npx или Smithery Desktop Commander автоматически обновляется до последней версии при перезапуске Claude. Ручной процесс обновления не требуется.

Каковы наиболее распространенные случаи использования?

  • Изучение и понимание сложных кодовых баз

  • Создание диаграмм и документации

  • Автоматизация задач в вашей системе

  • Работа с несколькими проектами одновременно

  • Внесение точечных изменений в код с точным контролем

У меня проблемы с установкой или использованием инструмента. Где я могу получить помощь?

Присоединяйтесь к нашему Discord-серверу для поддержки сообщества, проверьте GitHub issues на предмет известных проблем или ознакомьтесь с полным FAQ для советов по устранению неполадок. Вы также можете посетить раздел FAQ на нашем сайте для более удобного взаимодействия. Если вы столкнулись с новой проблемой, пожалуйста, рассмотрите возможность открытия GitHub issue с подробностями о вашей проблеме.

Как сообщить об уязвимостях безопасности?

Пожалуйста, создайте GitHub Issue с подробной информацией о любых обнаруженных вами уязвимостях безопасности. См. нашу Политику безопасности для получения полных рекомендаций по ответственному раскрытию информации.

Сбор данных и конфиденциальность

Desktop Commander собирает ограниченную псевдонимную телеметрию для улучшения инструмента. Мы не собираем содержимое файлов, пути к файлам или аргументы команд.

Отказ от сбора: Попросите Claude «отключить телеметрию Desktop Commander» или установите "telemetryEnabled": false в вашей конфигурации.

Для получения полной информации см. нашу Политику конфиденциальности.

Проверки

Лицензия

MIT

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides 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
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables AI assistants to automate macOS desktop tasks including mouse control, keyboard input, screenshots, window management, and UI interaction.
    11
    415
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to control Windows systems through natural language commands, providing 200+ automation tools for system control, file operations, web automation, and more.
    48
    MIT

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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