Desktop Commander MCP
Desktop Commander MCP
Поиск, обновление, управление файлами и выполнение терминальных команд с помощью ИИ
Работайте с кодом и текстом, запускайте процессы и автоматизируйте задачи, выходя далеко за рамки других ИИ-редакторов — используя подписки клиентского хоста вместо затрат на 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
Посетите: https://smithery.ai/server/@wonderwhy-er/desktop-commander
Войдите в Smithery, если ещё не вошли
Выберите свой клиент (Claude Desktop) справа
Установите с помощью предоставленного ключа, который появится после выбора клиента
Перезапустите 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) --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")) -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 вашего клиента в указанных ниже местах:
Просмотреть 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
Как это работает:
Вы запускаете лёгкое Remote Device на своём компьютере
Оно безопасно подключается к облачному сервису Remote MCP
Ваш ИИ отправляет команды через облако на ваше устройство
Команды выполняются локально, результаты возвращаются вашему ИИ
Вы сохраняете контроль — остановите в любой момент с помощью
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
Найдите файл конфигурации Claude Desktop:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Отредактируйте файл конфигурации:
Откройте файл в текстовом редакторе
Найдите и удалите запись
"desktop-commander"из раздела"mcpServers"Сохраните файл
Пример — удалите этот раздел:
{
"desktop-commander": {
"command": "npx",
"args": ["@wonderwhy-er/desktop-commander@latest"]
}
}Закройте и перезапустите Claude Desktop, чтобы завершить удаление.
🆘 Устранение неполадок
Если автоматическое удаление не сработало:
Используйте ручное удаление как запасной вариант
Если Claude не запускается после удаления:
Восстановите резервный файл конфигурации, созданный деинсталлятором
Или вручную исправьте синтаксис JSON в вашем claude_desktop_config.json
Нужна помощь?
Присоединяйтесь к нашему Discord-сообществу: https://discord.com/invite/kQ27sNnZr7
Начало работы
После установки 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
🔍 Изучение и понимание кодовых баз
🤖 Запуск интерактивных сред разработки
Использование
Сервер предоставляет полный набор инструментов, сгруппированных по нескольким категориям:
Доступные инструменты
Категория | Инструмент | Описание |
Конфигурация |
| Получить полную конфигурацию сервера в формате JSON (включает blockedCommands, defaultShell, allowedDirectories, fileReadLineLimit, fileWriteLineLimit, telemetryEnabled) |
| Установить конкретное значение конфигурации по ключу. Доступные настройки: • | |
Терминал |
| Запуск программ с автоматическим определением готовности к вводу |
| Отправка команд запущенным программам и получение ответов | |
| Чтение вывода запущенных процессов | |
| Принудительное завершение запущенной терминальной сессии | |
| Список всех активных терминальных сессий | |
| Список всех запущенных процессов с подробной информацией | |
| Завершение запущенного процесса по PID | |
Файловая система |
| Чтение содержимого из локальной файловой системы, URL-адресов, файлов Excel (.xlsx, .xls, .xlsm) и PDF-файлов с постраничной разбивкой по строкам/страницам |
| Чтение нескольких файлов одновременно | |
| Запись содержимого в файл с возможностью перезаписи или добавления. Поддерживает файлы Excel (формат JSON 2D-массива). Для PDF-файлов используйте | |
| Создание новых PDF-файлов из Markdown или изменение существующих PDF-файлов (вставка/удаление страниц). Поддерживает HTML/CSS-стилизацию и SVG-графику | |
| Создание нового каталога или проверка его существования | |
| Получение подробного рекурсивного списка файлов и каталогов (поддерживает параметр глубины, по умолчанию depth=2) | |
| Перемещение или переименование файлов и каталогов | |
| Запуск потокового поиска файлов по имени или содержимому (ищет в текстовых файлах и содержимом Excel) | |
| Получение дополнительных результатов поиска с поддержкой смещения | |
| Остановка активного поиска корректным образом | |
| Список всех активных сессий поиска | |
| Получение подробных метаданных о файле или каталоге (включает информацию о листах для файлов Excel) | |
Текстовый редактор |
| Применение точечных замен текста для текстовых файлов или обновление диапазонов ячеек для файлов Excel |
Аналитика |
| Получение статистики использования для собственного анализа |
| Получение истории последних вызовов инструментов с аргументами и результатами для отладки и восстановления контекста | |
| Открытие формы обратной связи в браузере для отправки отзывов команде 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 включает несколько улучшений для повышения надёжности:
Улучшенные подсказки: описания инструментов теперь emphasize, что лучше вносить несколько небольших точечных изменений, а не одно крупное.
Резервный нечёткий поиск: когда точное совпадение не находится, выполняется нечёткий поиск с подробным отчётом.
Поразрядные diff: точно показывается, что отличается, с помощью формата
{-removed-}{+added+}.Поддержка нескольких вхождений: можно заменить несколько экземпляров с помощью параметра
expected_replacements.Полное журналирование: все нечёткие поиски записываются в журнал для анализа и отладки.
Если поиск завершается неудачей, вы увидите подробную информацию о ближайшем найденном совпадении, включая процент сходства, время выполнения и различия в символах. Все эти детали автоматически записываются в журнал для последующего анализа с помощью инструментов журнала нечёткого поиска.
Поддержка Docker
🐳 Использование изолированного окружения
Desktop Commander можно запускать в Docker-контейнерах для полной изоляции от вашей системы, что обеспечивает нулевой риск для вашего компьютера. Это отлично подходит для тестирования, разработки или когда нужна полная песочница.
Инструкция по установке
Установите Docker для Windows/Mac
Загрузите и установите Docker Desktop с docker.com
Получите конфигурацию Docker для Desktop Commander
Перейдите по адресу: https://hub.docker.com/mcp/server/desktop-commander/manual
Вариант A: используйте приведённую команду терминала для автоматической настройки
Вариант B: нажмите «Standalone», чтобы получить JSON-конфигурацию, и добавьте её вручную в конфигурацию Claude Desktop

Подключение папок вашего компьютера (скоро будет доступно)
Инструкции по подключению локальных директорий к 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 вы можете редактировать его прямо внутри панели предпросмотра — отдельное приложение открывать не нужно.
Как пользоваться:
Попросите Claude прочитать или создать markdown-файл
Разверните предпросмотр файла на весь экран с помощью кнопки ⤢ Развернуть
В полноэкранном режиме редактор активируется автоматически
Редактируйте содержимое, используя переключатель живого предпросмотра, кнопки копирования, отмены и сохранения
Изменения сохраняются на диск; сверните панель, чтобы вернуться к встроенному виду
Возможности редактора:
Живое переключение «редактирование / предпросмотр» — то 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.logWindows:
%USERPROFILE%\.claude-server-commander-logs\fuzzy-search.log
Что вы узнаете из журналов
Журналы нечёткого поиска помогают понять:
Почему точные совпадения не срабатывают: типичные проблемы — различие пробелов, конец строк или кодировки
Паттерны производительности: как сложность поиска влияет на время выполнения
Проблемы с типами файлов: у каких типов расширений чаще всего проблемы с совпадением
Кодировки: определённые коды символов, приводящие к изменениям
Журнал аудита
Desktop Commander теперь включает подробное журналирование всех вызовов инструментов:
Что записывается в журнал
Каждый вызов инструмента записывается с меткой времени, именем инструмента и аргументами (санизированными для конфиденциальности)
При достижении размера 10 МБ журналы автоматически ротируются
Расположение журнала
Журналы сохраняются в:
macOS/Linux:
~/.claude-server-commander/claude_tool_call.logWindows:
%USERPROFILE%\.claude-server-commander\claude_tool_call.log
Этот аудит-трейл помогает при отладке, мониторинге безопасности и понимании того, как Claude взаимодействует с вашей системой.
Работа с длительными командами
Для команд, выполнение которых может занять время:
Управление конфигурацией
⚠️ Важные предупреждения по безопасности
Всеобъемлющую информацию по безопасности и сообщениям об уязвимостях см. в SECURITY.md
Известные ограничения безопасности: ограничения на директории и блокировку команд могут быть обойдены разными способами, включая симлинки, подстановка команд, абсолютные пути и выполнение кода.
Всегда вносите изменения в отдельном окне чата от того окна, где вы выполняете основную работу. При столкновении с ограничениями доступа к файловой системе Claude может попытаться изменить параметры конфигурации (вроде
allowedDirectories).Параметр
allowedDirectoriesв настоящее время ограничивает только файловые операции, but не терминальные команды. Терминальные команды по-прежнему могут получать доступ к каталогам вне разрешённых.Для 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
Лучшие практики
Создайте отдельный чат для изменения конфигурации: внесите все изменения конфигурации в одном чате, затем начните новый чат для основной работы.
Осторожно с пустым
allowedDirectories: если задать ему пустой массив[], это предоставит доступ ко всей вашей файловой системе для файловых операций.Используйте конкретные пути: вместо общих путей вроде
/указывайте точные каталоги, к которым нужен доступ.Всегда проверяйте конфигурацию после изменений: с помощью
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" })Это позволяет задействовать функции конкретной оболочки или поддерживать постоянное окружение в разных командах.
execute_commandвозвращает после тайм-аута начальный выводКоманда продолжает выполняться в фоне
Используйте
read_outputс PID, чтобы получить новый выводИспользуйте
force_terminate, чтобы остановить при необходимости
Отладка
Если вам нужно отладить сервер, установите его в режиме отладки:
# Using npx
npx @wonderwhy-er/desktop-commander@latest setup --debug
# Or if installed locally
npm run setup:debugЭто приведёт к следующему:
Настроит Claude на использование отдельного сервера «desktop-commander»
Включит протокол инспектора Node.js с флагом
--inspect-brk=9229Приостановит выполнение в начале до подключения отладчика
Включит дополнительные переменные окружения отладки
Чтобы подключить отладчик:
В 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
Этот разработчик отказался от Windsurf и Cursor, используя Claude с MCP
Сообщество
Присоединяйтесь к нашему Discord-серверу, чтобы получить помощь, поделиться отзывами и пообщаться с другими пользователями.
Отзывы
https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=UgyyBt6\_ShdDX\_rIOad4AaABAg
https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=UgztdHvDMqTb9jiqnf54AaABAg
https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=UgyQFTmYLJ4VBwIlmql4AaABAg
https://www.youtube.com/watch?v=ly3bed99Dy8\&lc=Ugy4-exy166\_Ma7TH-h4AaABAg
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
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