Android ADB MCP Server

ISC License
11
2
  • Linux
  • Apple

Integrations

  • Enables interaction with Android devices through ADB, allowing management of devices, execution of shell commands, installation/uninstallation of apps, file transfers, app launching, and taking screenshots.

  • Supports Linux systems with equivalent application directories and requires xclip for clipboard functionality when working with Android devices.

  • Supports macOS systems with specific configuration paths and uses built-in osascript for clipboard functionality with Android devices.

Android ADB MCP サーバー

AIアシスタントがAndroid Debug Bridge(ADB)を介してAndroidデバイスと対話できるようにするModel Context Protocol(MCP)サーバー。このサーバーはAI機能とAndroidデバイス管理のギャップを埋め、Android開発とテスト運用のシームレスな自動化を実現します。

⚙️ クイックセットアップ

サーバーを MCP 構成ファイルに追加します。

{ "mcpServers": { "android-adb": { "command": "npx", "args": ["-y", "@landicefu/android-adb-mcp-server"], "env": {}, "disabled": false, "alwaysAllow": [] } } }

構成場所

  • Claude デスクトップ: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
  • Cline/Roo コード: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json (macOS)
  • Windows/Linuxの場合は、同等のアプリケーションサポートディレクトリを確認してください。

設定後、AI アシスタントを再起動して新しいサーバー設定を読み込みます。

📋 前提条件

  • **ADB (Android Debug Bridge)**がインストールされ、システム PATH で利用可能になっている必要があります。
  • クリップボード機能の場合:
    • macOS : osascript (組み込み)
    • Windows : PowerShell (組み込み)
    • Linux : xclip ( apt-get install xclipまたは同等のコマンドでインストール)
  • Node.js 16.x 以上

🚀 機能

  • 複数の Android デバイスに接続して管理する
  • Androidデバイスでシェルコマンドを実行する
  • アプリケーションのインストールとアンインストール
  • ローカルシステムと Android デバイス間でファイルをプッシュおよびプルする
  • Androidデバイスでアプリケーションを起動する
  • スクリーンショットを撮ってローカルに保存するか、クリップボードにコピーします
  • 複数のデバイスが接続されている場合のスマートデバイスの選択

🛠️ 利用可能なツール

道具説明必須パラメータオプションパラメータ
adb_devices接続されているデバイスの一覧なしなし
adb_shellシェルコマンドを実行するcommanddevice_id
adb_installAPKファイルをインストールするpathdevice_id
adb_uninstallアプリケーションをアンインストールするpackage_namedevice_id
adb_list_packagesインストールされたパッケージの一覧なしdevice_idfilter
adb_pullデバイスからファイルを取得するremote_pathlocal_pathdevice_id
adb_pushファイルをデバイスにプッシュするlocal_pathremote_pathdevice_id
launch_appアプリケーションを起動するpackage_namedevice_id
take_screenshot_and_saveスクリーンショットを撮って保存するoutput_pathdevice_idformat
take_screenshot_and_copy_to_clipboardスクリーンショットをクリップボードに保存するなしdevice_idformat

デバイス管理

サーバーはデバイスの選択をインテリジェントに処理します。

  • 接続されているデバイスが1つだけの場合は、自動的に使用されます
  • 複数のデバイスが接続されている場合は、 device_idパラメータを指定する必要があります。
  • デバイスが接続されていない場合はエラーが返されます

スクリーンショットのパス解像度

スクリーンショットを保存するためのoutput_path指定すると、パスは次のように解決されます。

  • 絶対パスはそのまま使用されます
  • ~で始まるパスはユーザーのホームディレクトリに展開されます
  • 相対パスはユーザーのホームディレクトリを基準に解決されます

これにより、スクリーンショットは MCP サーバーが書き込み権限を持つ場所に保存されるようになります。

🔍 トラブルシューティング

よくある問題

  1. 「ADBは利用できません」というエラー
    • ADBがインストールされ、システムPATHに含まれていることを確認してください
    • ターミナルでadb versionを実行して確認します
  2. 「Androidデバイスが接続されていません」というエラー
    • デバイスがadb devicesに正しく接続されているか確認してください
    • デバイスでUSBデバッグが有効になっていることを確認してください
    • adb kill-serveradb start-serverを実行して ADB を再起動してみてください。
  3. 「複数のデバイスが接続されています」というエラー
    • ツール呼び出しでdevice_idパラメータを指定します
    • adb_devicesツールで利用可能なデバイスのリストを取得する
  4. クリップボードへのスクリーンショットが機能しない
    • 必要なプラットフォーム固有のツールがインストールされていることを確認する

🔧 代替インストール方法

オプション1: npmからインストールする

# Install globally npm install -g @landicefu/android-adb-mcp-server # Or install locally in your project npm install @landicefu/android-adb-mcp-server

オプション2: ソースからの手動インストール

  1. リポジトリをクローンします。
    git clone https://github.com/landicefu/android-adb-mcp-server.git cd android-adb-mcp-server
  2. 依存関係をインストールしてビルドします。
    npm install npm run build
  3. 直接パスで構成します:
    { "mcpServers": { "android-adb": { "command": "node", "args": ["/path/to/android-adb-mcp-server/build/index.js"], "env": {}, "disabled": false, "alwaysAllow": [] } } }

📄 ライセンス

このプロジェクトは ISC ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。

🤝 貢献する

貢献を歓迎します!お気軽にプルリクエストを送信してください。

  1. リポジトリをフォークする
  2. 機能ブランチを作成します( git checkout -b feature/amazing-feature
  3. 変更をコミットします ( git commit -m 'Add some amazing feature' )
  4. ブランチにプッシュする ( git push origin feature/amazing-feature )
  5. プルリクエストを開く
-
security - not tested
A
license - permissive license
-
quality - not tested

AI アシスタントが ADB を介して Android デバイスと対話できるようにし、自動化されたデバイス管理、アプリのインストール、ファイル転送、スクリーンショットのキャプチャを可能にするモデル コンテキスト プロトコル サーバー。

  1. ⚙️ Quick Setup
    1. Configuration Locations
  2. 📋 Prerequisites
    1. 🚀 Features
      1. 🛠️ Available Tools
        1. Device Management
        2. Screenshot Path Resolution
      2. 🔍 Troubleshooting
        1. Common Issues
      3. 🔧 Alternative Installation Methods
        1. Option 1: Install from npm
        2. Option 2: Manual Installation from Source
      4. 📄 License
        1. 🤝 Contributing
          ID: 8i2kpohj9l