hyperb1iss/droidmind

hyperb1iss/droidmind

от hyperb1iss
DroidMind связывает AI-ассистентов с Android-устройствами через MCP. Управляйте приложениями, анализируйте логи, автоматизируйте UI и выполняйте shell-команды на естественном языке. Полезен разрабо...

🤖 DroidMind 🧠

DroidMind Logo

Python 3.13 License Status Code Style Type Check MCP Android Docs

Control Android devices with AI through the Model Context Protocol

DroidMind is a powerful bridge between AI assistants and Android devices, enabling control, debugging, and system analysis through natural language. By implementing the Model Context Protocol (MCP), DroidMind allows AI models to directly interact with Android devices via ADB in a secure, structured way. When used as part of an agentic coding workflow, DroidMind can enable your assistant to build and debug with your device directly in the loop.

💫 Core Features

DroidMind empowers AI assistants to:

  • 📱 Manage Devices: Connect via USB/TCP-IP, list devices, view properties, and reboot.
  • 📊 Analyze Systems: Access logs (logcat, ANR, crash, battery), capture bug reports, and dump heap.
  • 📂 Handle Files: Browse, read, write, push, pull, delete, and manage device files/directories.
  • 📦 Control Apps: Install, uninstall, start, stop, clear data, and inspect app details (manifest, permissions, activities).
  • 🖼️ Automate UI: Perform taps, swipes, text input, and key presses.
  • 🐚 Execute Shell Commands: Run ADB shell commands with a security-conscious framework.
  • 🔒 Operate Securely: Benefit from command validation, risk assessment, and sanitization.
  • 💬 Integrate Seamlessly: Connect with any MCP-compatible client (Claude, Cursor, Cline, etc.).

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

Инструменты были проиндексированы:
android-app

Выполняет различные операции управления приложениями на Android-устройстве. Этот единый инструмент объединяет различные действия с приложениями. Параметр 'action' определяет выполняемую операцию. Аргументы: serial: Серийный номер устройства. action: Конкретная операция с приложением. ctx: MCP-контекст для логирования и взаимодействия. package (Optional[str]): Имя пакета целевого приложения. Требуется большинством действий. apk_path (Optional[str]): Путь к APK-файлу (локальный для сервера). Используется в install_app. reinstall (Optional[bool]): Переустанавливать ли приложение, если оно существует. Используется в install_app. grant_permissions (Optional[bool]): Предоставлять ли все запрашиваемые разрешения. Используется в install_app. keep_data (Optional[bool]): Сохранять ли данные приложения и каталоги кэша. Используется в uninstall_app. activity (Optional[str]): Необязательное имя активности для запуска. Используется в start_app. extras (Optional[dict[str, str]]): Необязательные extras для intent. Используется в start_intent. include_system_apps (Optional[bool]): Включать ли системные приложения. Используется в list_packages. include_app_name (Optional[bool]): Включать ли названия приложений (по мере возможностей). Используется в list_packages. include_apk_path (Optional[bool]): Включать ли пути к APK. Используется в list_packages. max_packages (Optional[int]): Максимальное количество пакетов для возврата. Используется в list_packages. Возвращает: Строковое сообщение с результатом или статусом операции. --- Доступные действия и использование их аргументов: 1. action="install_app" - Требуется: apk_path - Необязательно: reinstall, grant_permissions 2. action="uninstall_app" - Требуется: package - Необязательно: keep_data 3. action="start_app" - Требуется: package - Необязательно: activity 3b. action="start_intent" - Требуется: package, activity - Необязательно: extras 4. action="stop_app" - Требуется: package 5. action="clear_app_data" - Требуется: package 6. …

Параметры
  • actionanyобязательный
  • activitystring
  • apk_pathstring | null
  • extrasobject | null
  • grant_permissionsboolean
  • include_apk_pathboolean
  • include_app_nameboolean
  • include_system_appsboolean
  • keep_databoolean
  • max_packagesinteger | null
  • packagestring | null
  • reinstallboolean
  • serialstringобязательный
android-device

Выполняет различные операции управления Android-устройствами. Этот единый инструмент объединяет различные действия, связанные с устройствами. Параметр 'action' определяет операцию. Аргументы: action: Конкретная операция с устройством, которую нужно выполнить. ctx: MCP-контекст для логирования и взаимодействия. serial (Optional[str]): Серийный номер устройства. Требуется для большинства действий, кроме connect/list. ip_address (Optional[str]): IP-адрес для действия 'connect_device'. port (Optional[int]): Порт для действия 'connect_device' (по умолчанию: 5555). mode (Optional[str]): Режим перезагрузки для действия 'reboot_device' (по умолчанию: "normal"). Возвращает: Строковое сообщение, указывающее на результат или статус операции. --- Доступные действия и особенности использования их аргументов: 1. action="list_devices" - Кроме ctx, никаких дополнительных аргументов не требуется. 2. action="connect_device" - Требуется: ip_address - Необязательно: port 3. action="disconnect_device" - Требуется: serial 4. action="reboot_device" - Требуется: serial - Необязательно: mode (например, "normal", "recovery", "bootloader") 5. action="device_properties" - Требуется: serial ---

Параметры
  • actionanyобязательный
  • ip_addressstring | null
  • modestring
  • portinteger
  • serialstring | null
android-diag

Выполняет диагностические операции, например, собирает отчёты об ошибках или снимает дампы кучи. Аргументы: ctx: MCP Context. serial: Серийный номер устройства. action: Выполняемое диагностическое действие. output_path: Необязательный. Путь для сохранения выходного файла. Для bugreport: путь на хосте, куда adb запишет .zip. Если пусто, используется временный файл, и в результат включается его сводка. Для dump_heap: локальный путь для сохранения .hprof. Если пусто, используется временный файл. include_screenshots: Для CAPTURE_BUGREPORT. По умолчанию True. package_or_pid: Для DUMP_HEAP. Имя пакета приложения или идентификатор процесса. native: Для DUMP_HEAP. True для нативной (C/C++) кучи, False для Java. По умолчанию False. timeout_seconds: Максимальное время операции. Если 0, используются значения по умолчанию для конкретного действия (bugreport: 300s, dump_heap: 120s). Возвращает: Строковое сообщение с результатом или путём к выходному файлу.

Параметры
  • actionanyобязательный
  • include_screenshotsboolean
  • nativeboolean
  • output_pathstring
  • package_or_pidstring | null
  • serialstringобязательный
  • timeout_secondsinteger
android-file

Выполняет операции с файлами и директориями на устройстве Android. Этот единый инструмент объединяет различные действия с файловой системой. Параметр 'action' определяет операцию. Аргументы: serial: Серийный номер устройства. action: Конкретная операция с файлами. См. доступные действия ниже. ctx: Контекст MCP для логирования и взаимодействия. path (Optional[str]): Общий аргумент пути на устройстве. Используется: list_directory, delete_file, create_directory, file_exists, file_stats. Также используется в read_file и write_file как альтернатива 'device_path'. local_path (Optional[str]): Путь на сервере DroidMind. Используется: push_file (источник), pull_file (назначение). device_path (Optional[str]): Путь на устройстве Android. Используется: push_file (назначение), pull_file (источник), read_file (источник), write_file (назначение). Если для чтения/записи также указан 'path', 'device_path' имеет приоритет. content (Optional[str]): Текстовое содержимое для записи. Используется: write_file. max_size (Optional[int]): Максимальный размер файла в байтах для read_file (по умолчанию: 100KB). Используется: read_file. Возвращает: Union[str, bool]: Строковое сообщение с результатом или статусом для большинства действий. Возвращает boolean для действия 'file_exists'. --- Доступные действия и их конкретное использование аргументов: 1. action="list_directory": Выводит содержимое директории. - Требуется: path (путь к директории на устройстве). - Возвращает: Отформатированную строку с содержимым директории. 2. action="push_file": Загружает файл с локального сервера на устройство. - Требуется: local_path (источник на сервере), device_path (назначение на устройстве). - Возвращает: Строковое сообщение, подтверждающее загрузку. 3. action="pull_file": Скачивает файл с устройства на локальный сервер. - Требуется: device_path (источник на устройстве), local_path (назначение на сервере). - Возвращает: Строковое сообщение, подтверждающее скачивание. 4. action="delete_file": Удаляет файл. - Требуется: path (путь к файлу на устройстве). - Возвращает: Строковое сообщение, подтверждающее удаление. 5. action="create_directory": Создаёт директорию. - Требуется: path (путь к директории на устройстве). - Возвращает: Строковое сообщение, подтверждающее создание. 6. action="file_exists": Проверяет, существует ли файл или директория. - Требуется: path (путь к файлу или директории на устройстве). - Возвращает: Логическое значение (True, если существует, False в противном случае). 7. action="file_stats": Получает статистику файла или директории. - Требуется: path (путь к файлу или директории на устройстве). - Возвращает: Отформатированную строку с размером файла и временем изменения. 8. action="read_file": Читает содержимое файла. - Требуется: path или device_path (путь к файлу на устройстве). - Возвращает: Строковое содержимое файла. 9. action="write_file": Записывает содержимое в файл. - Требуется: device_path (назначение на устройстве), content (текст для записи). - Возвращает: Строковое сообщение, подтверждающее запись.

Параметры
  • actionanyобязательный
  • contentstring | null
  • device_pathstring | null
  • local_pathstring | null
  • max_sizeinteger | null
  • pathstring | null
  • serialstringобязательный
android-log

Выполняет различные операции получения логов на устройстве Android. Этот единый инструмент объединяет различные действия, связанные с логами. Параметр 'action' определяет операцию. Аргументы: serial: Серийный номер устройства. action: Конкретная операция с логами, которую нужно выполнить. ctx: MCP-контекст для логирования и взаимодействия. package (Optional[str]): Имя пакета для действия get_app_logs. lines (int): Количество строк для получения для действий logcat (по умолчанию: 1000). filter_expr (Optional[str]): Выражение фильтра logcat для get_device_logcat. buffer (Optional[str]): Буфер logcat для get_device_logcat (по умолчанию: "main"). format_type (Optional[str]): Формат вывода logcat для get_device_logcat (по умолчанию: "threadtime"). max_size (Optional[int]): Максимальный размер вывода для get_device_logcat (по умолчанию: 100 КБ). Возвращает: Строковое сообщение, содержащее запрошенные логи или статус. --- Доступные действия и особенности использования их аргументов: 1. action="get_device_logcat" - Необязательные: lines, filter_expr, buffer, format_type, max_size. 2. action="get_app_logs" - Требуется: package. - Необязательные: lines. 3. action="get_anr_logs" - Не требует дополнительных аргументов, кроме serial и ctx. 4. action="get_crash_logs" - Не требует дополнительных аргументов, кроме serial и ctx. 5. action="get_battery_stats" - Не требует дополнительных аргументов, кроме serial и ctx. ---

Параметры
  • actionanyобязательный
  • bufferstring
  • filter_exprstring
  • format_typestring
  • linesinteger
  • max_sizeinteger | null
  • packagestring | null
  • serialstringобязательный
android-screenshot

Получает снимок экрана с устройства. Аргументы: serial: Серийный номер устройства ctx: Контекст MCP quality: Качество JPEG (1-100, меньше значение - меньше размер файла) Возвращает: Снимок экрана устройства в виде изображения

Параметры
  • qualityinteger
  • serialstringобязательный
android-shell

Выполняет shell-команду на устройстве. Аргументы: serial: серийный номер устройства command: shell-команда для выполнения max_lines: максимальное количество строк вывода (по умолчанию: 1000) Используйте положительные числа для первых N строк, отрицательные для последних N строк Установите None для неограниченного вывода (не рекомендуется для больших объёмов) max_size: максимальный размер вывода в символах (по умолчанию: 100000) Ограничивает общий размер ответа независимо от количества строк Возвращает: Вывод команды

Параметры
  • commandstringобязательный
  • max_linesinteger | null
  • max_sizeinteger | null
  • serialstringобязательный
android-ui

Выполняет различные операции взаимодействия с пользовательским интерфейсом на устройстве Android. Аргументы: ctx: MCP Context. serial: Серийный номер устройства. action: Действие UI для выполнения. x: Координата X (для нажатия). y: Координата Y (для нажатия). start_x: Начальная координата X (для смахивания). start_y: Начальная координата Y (для смахивания). end_x: Конечная координата X (для смахивания). end_y: Конечная координата Y (для смахивания). duration_ms: Длительность смахивания в миллисекундах (по умолчанию: 300). text: Текст для ввода (для input_text). keycode: Код клавиши Android для нажатия (для press_key). package: Имя пакета (для start_intent). activity: Имя активности (для start_intent). extras: Необязательные дополнительные данные intent (для start_intent). Возвращает: Строковое сообщение, указывающее на результат операции.

Параметры
  • actionanyобязательный
  • activitystring | null
  • duration_msinteger
  • end_xinteger | null
  • end_yinteger | null
  • extrasobject | null
  • keycodeinteger | null
  • packagestring | null
  • serialstringобязательный
  • start_xinteger | null
  • start_yinteger | null
  • textstring | null
  • xinteger | null
  • yinteger | null

Выберите клиент, чтобы установить hyperb1iss/droidmind:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ]
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ]
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ]
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"hyperb1iss-droidmind-irx36g9044\",\"type\":\"stdio\",\"command\":\"uvx\",\"args\":[\"--from\",\"git+https://github.com/hyperb1iss/droidmind\",\"droidmind\",\"--transport\",\"stdio\"]}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ]
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add hyperb1iss-droidmind-irx36g9044 -- uvx --from git+https://github.com/hyperb1iss/droidmind droidmind --transport stdio

Либо через JSON-конфиг:

claude mcp add-json hyperb1iss-droidmind-irx36g9044 "{\"command\":\"uvx\",\"args\":[\"--from\",\"git+https://github.com/hyperb1iss/droidmind\",\"droidmind\",\"--transport\",\"stdio\"]}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add hyperb1iss-droidmind-irx36g9044 -- uvx --from git+https://github.com/hyperb1iss/droidmind droidmind --transport stdio

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.hyperb1iss-droidmind-irx36g9044]
command = "uvx"
args = ["--from", "git+https://github.com/hyperb1iss/droidmind", "droidmind", "--transport", "stdio"]
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите hyperb1iss/droidmind, а в поле команды запуска — строку ниже:
uvx --from git+https://github.com/hyperb1iss/droidmind droidmind --transport stdio

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ]
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например hyperb1iss-droidmind-irx36g9044.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: hyperb1iss-droidmind-irx36g9044
    command: uvx
    args:
      - "--from"
      - "git+https://github.com/hyperb1iss/droidmind"
      - "droidmind"
      - "--transport"
      - "stdio"
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "hyperb1iss-droidmind-irx36g9044": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/hyperb1iss/droidmind",
        "droidmind",
        "--transport",
        "stdio"
      ]
    }
  }
}

Похожие MCP-сервера

Neverlow512/agent-droid-bridge

Neverlow512/agent-droid-bridge

от neverlow512

MCP-сервер для подключения AI-агентов к Android-устройствам через ADB. Используется в мобильной автоматизации, тестировании и реверс-инжиниринге: скриншоты, касания, ввод текста, управление приложе...

Python⭐ 22
callstackincubator/agent-device

callstackincubator/agent-device

от callstackincubator

agent-device — CLI для автоматизации устройств, позволяющий AI-агентам открывать приложения на iOS, Android и десктопе, инспектировать UI, взаимодействовать с элементами и собирать отладочную инфор...

TypeScript⭐ 5078
martingeidobler/android-mcp-server

martingeidobler/android-mcp-server

от martingeidobler

MCP сервер для управления Android через ADB: AI ассистент видит экран, тапает элементы, читает логи и устанавливает приложения. Включает 25 инструментов для отладки и тестирования без модификации кода. Полезен Android-разработчикам и тестировщикам.

TypeScript⭐ 68
ambar/simctl-mcp

ambar/simctl-mcp

от ambar

MCP сервер для iOS Simulator автоматизирует: управление устройствами и приложениями, отправку push-уведомлений, работу с буфером обмена. Полезен iOS-разработчикам и QA-инженерам для тестирования.

TypeScript⭐ 20
mobile-next/mobile-mcp

mobile-next/mobile-mcp

от mobile-next

Mobile Next управляет iOS и Android: запускает приложения, кликает по экрану и выгружает данные с него на эмуляторах, симуляторах и реальных устройствах.

TypeScript⭐ 9785
corralimited/snapdiff-mcp

corralimited/snapdiff-mcp

от corralimited

MCP сервер для визуального сравнения веб-страниц через SnapDiff API. Позволяет разработчикам и QA автоматически снимать скриншоты, сравнивать UI на изменения и рендерить HTML/CSS в картинки. Подход...

TypeScript⭐ 5
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин