hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Enables control and interaction with Android devices through ADB, including device management, file system access, app installation, UI automation, system analysis, and debugging features.
Integrates with GitHub for repository management, allowing users to clone the DroidMind repository and contribute through GitHub's pull request workflow.
Integrates with Ko-fi for donations, allowing users to support the project creator by purchasing energy drinks.
✨DroidMind🤖
通过模型上下文协议使用 AI 控制 Android 设备
DroidMind 是 AI 助手与 Android 设备之间的强大桥梁,支持通过自然语言进行控制、调试和系统分析。通过实现模型上下文协议 (MCP),DroidMind 允许 AI 模型通过 ADB 以安全、结构化的方式直接与 Android 设备交互。当作为代理编码工作流程的一部分使用时,DroidMind 可以让您的助手直接在设备循环中构建和调试。
💫 功能
- 📱设备控制- 通过 USB 或 TCP/IP 连接到设备,运行 shell 命令,重新启动
- 📊系统分析- 检查设备属性,查看硬件信息,分析系统日志
- 🔍文件系统访问- 浏览目录内容并管理设备上的文件
- 📷可视化诊断- 捕获设备屏幕截图以进行分析和调试
- 📦应用程序管理- 在连接的设备上安装、卸载、启动、停止和清除应用程序数据
- 🔄多设备支持- 控制并在多个连接的设备之间切换
- 👆 UI 自动化- 通过点击、滑动、文本输入和按键与设备交互
- 🔍应用程序检查- 查看应用程序清单、共享首选项和特定于应用程序的日志
- 🔒安全框架- 通过全面的命令验证保护设备
- 💬 MCP 集成- 无缝连接到 Claude、Cursor、Cline 等
🚀 安装
📋 先决条件
- Python 3.13 或更高版本
- 已启用 USB 调试的 Android 设备
- ADB(Android 调试桥)已安装并位于 PATH 中
- UV 包管理器(推荐用于依赖项管理)
- 对于网络控制:启用了 ADB over TCP/IP 的 Android 设备
🔮 快速入门
运行 DroidMind 服务器
运行 DroidMind 作为服务器,通过 MCP 连接 AI 助手:
与人工智能助手一起使用
- 以 SSE 模式启动 DroidMind:Copy
- 使用 MCP 协议 URI 连接您的 AI 助手:Copy
- 人工智能现在可以通过自然语言控制您的 Android 设备!
🛠️ 可用的 MCP 资源和工具
资源
devices://list
- 列出所有连接的设备device://{serial}/properties
- 获取详细的设备属性logs://{serial}/logcat
- 从设备获取最近的日志logs://{serial}/anr
- 获取应用程序无响应 (ANR) 跟踪logs://{serial}/crashes
- 获取应用程序崩溃日志logs://{serial}/battery
- 获取电池统计数据和历史记录logs://{serial}/app/{package}
- 获取应用程序特定的日志fs://{serial}/list/{path}
- 列出设备上的目录内容fs://{serial}/read/{path}
- 从设备读取文件内容fs://{serial}/stats/{path}
- 获取详细的文件/目录统计信息app://{serial}/{package}/manifest
- 获取 AndroidManifest.xml 内容app://{serial}/{package}/data
- 列出应用程序数据目录中的文件app://{serial}/{package}/shared_prefs
- 获取应用程序的共享偏好设置
工具
devicelist
- 列出所有已连接的 Android 设备device_properties
- 获取特定设备的详细属性device_logcat
- 从设备获取最近的 logcat 输出list_directory
- 列出设备上目录的内容connect_device
通过 TCP/IP 连接到设备disconnect_device
- 断开与 Android 设备的连接shell_command
- 在设备上运行 shell 命令install_app
- 在设备上安装 APKuninstall_app
- 从设备上卸载应用程序start_app
- 在设备上启动应用程序stop_app
- 强制停止设备上的应用程序clear_app_data
- 清除应用程序数据和缓存list_packages
- 列出设备上已安装的软件包get_app_manifest
- 获取应用程序的 AndroidManifest.xml 内容get_app_permissions
- 获取应用程序请求的权限get_app_activities
- 获取应用中定义的活动get_app_info
- 获取有关应用程序的详细信息reboot_device
- 重启设备(正常、恢复或引导加载程序)screenshot
- 从设备获取屏幕截图capture_bugreport
- 从设备生成全面的错误报告dump_heap
- 从正在运行的进程创建堆转储以进行内存分析push_file
- 将文件上传到设备pull_file
- 从设备下载文件delete_file
- 从设备中删除文件或目录create_directory
- 在设备上创建目录file_exists
- 检查设备上是否存在文件read_file
- 读取设备上文件的内容write_file
- 将文本内容写入设备上的文件file_stats
- 获取有关文件或目录的详细信息tap
- 点击设备屏幕上的特定坐标swipe
- 在屏幕上从一个点到另一个点执行滑动手势input_text
- 在设备上输入文本,就像从键盘输入一样press_key
- 按下硬件或软件键(例如 HOME、BACK、VOLUME)start_intent
- 使用 Android Intent 启动应用活动
📊 AI 助手查询示例
将 AI 助手连接到 DroidMind 后,尝试以下查询:
- “列出所有已连接的 Android 设备并显示其属性”
- “连接到我的手机 192.168.1.100 并检查其电池状态”
- “截取我的 Pixel 的屏幕截图并向我显示当前屏幕上的内容”
- “检查我的设备上的可用存储空间”
- “显示我设备的 ANR 跟踪和崩溃日志”
- “查看最近的日志并告诉我是否有任何错误”
- “在我的设备上安装这个 APK 文件并告诉我是否成功”
- “显示我手机上所有已安装应用程序的列表”
- “将我的设备重启至恢复模式”
- “我的手机运行的是哪个版本的 Android?”
- “检查我的设备是否已 root 并告诉我其安全补丁级别”
- “显示 com.android.settings 的清单文件”
- “检查我的应用程序的共享偏好设置”
- “点击坐标 500,1000 处的“设置”图标”
- “从屏幕顶部向下滑动即可打开通知栏”
- “在当前文本字段中输入我的密码”
- “按三次返回按钮即可返回主屏幕”
- “通过启动 com.android.settings 包来打开“设置”应用”
🔒 安全功能
DroidMind 包含一个全面的安全框架来保护您的设备,同时仍允许 AI 助手发挥表达能力:
- 命令验证:所有 shell 命令都根据安全命令的允许列表进行验证
- 风险评估:命令按风险级别分类(安全、低、中、高、严重)
- 命令清理:对输入进行清理,以防止命令注入攻击
- 受保护的路径:系统目录和关键路径受到保护,不得修改
- 全面日志记录:所有命令均记录其风险级别以供审计
- 可疑模式检测:具有潜在危险模式的命令将被阻止
- ADB 命令安全性:通过适当的异步验证对 ADB 特定命令进行特殊处理
安全系统设计得足够宽松,允许常见操作,同时防止破坏性操作。高风险命令会在执行前向用户显示警告,关键操作会被完全阻止,无需明确覆盖。
💻 开发
DroidMind 使用 UV 进行依赖项管理和开发工作流程。UV 是一个快速、可靠的 Python 包管理器和解析器。
🤝 贡献
欢迎贡献代码!欢迎提交 Pull 请求。
- 分叉存储库
- 创建你的功能分支(
git checkout -b feature/amazing-feature
) - 使用 UV 设置您的开发环境
- 进行更改
- 运行测试和 linting
- 提交您的更改(
git commit -m 'Add some amazing feature'
) - 推送到分支(
git push origin feature/amazing-feature
) - 打开拉取请求
📝 许可证
该项目根据 Apache 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
如果您发现 DroidMind 有用,请给我买一个 Monster Ultra Violet ⚡️
You must be authenticated.
Tools
模型上下文协议 (MCP) 服务器使 AI 助手能够控制和与 Android 设备交互,从而允许通过自然语言命令进行设备管理、应用程序调试、系统分析和 UI 自动化。
- 💫 Features
- 🚀 Installation
- 📋 Prerequisites
- 🔮 Quick Start
- 🛠️ Available MCP Resources and Tools
- 📊 Example AI Assistant Queries
- 🔒 Security Features
- 💻 Development
- 🤝 Contributing
- 📝 License