mcpField
O
Oh My Android

Oh My Android

ローカル
royan.se開発ツール731 週間前に更新

Oh My Android について

Oh My Android は、エミュレーターや端末上の Android アプリをテストする macOS ネイティブの補助アプリです。常時表示の操作パネル、dp 単位のレイアウト検査、任意で使える MCP サーバーにより、手動テストとエージェント操作に対応します。

主な機能

  1. 01端末と表示設定のワンクリック操作
  2. 02レイアウト測定と TalkBack 監査
  3. 03アプリデータと SQLite の検査
  4. 04スクリーンショット、録画、スナップショット
  5. 05UI と端末操作のための 18 個の MCP ツール

活用シーン

  1. 01ダークモード、大きなフォント、RTL でのレイアウトテスト
  2. 02Compose と Views の画面をデザインと照合
  3. 03アプリの設定値や SQLite データの確認
  4. 04コーディングエージェントによるエミュレーター操作とログ確認

MCP 対応

MCP サーバーを内蔵し、AI エージェントにスクリーンショット、UI ツリー、タップ、入力、端末設定、アプリ、ログ、データ用のツールを提供します。アクセス権はオフ、読み取り専用、フルコントロールから選べます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpboh-my-android-0.4.6.mcpb

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Oh My Android アプリのアイコン:驚いた様子の Android ロボット

Oh My Android

ダークモード、大きなフォント、RTL、TalkBack で Android アプリをテストできます。それぞれワンクリックで切り替えられ、adb コマンドは不要です。
Mac 用の無料のネイティブ ADB GUI です。Android Emulator の隣にドッキングできます。実機でも使用できます。

最新リリース Homebrew cask macOS 26 以降、Apple silicon Android Weekly 第 747 号で紹介 MIT ライセンス GitHub のスター

デモ:Android Emulator の隣にある Oh My Android パネルで、ダークモード、フォントサイズ、アラビア語の RTL に切り替えたあと、SMS と着信をシミュレートします
ダークモード、フォントサイズ、アラビア語の RTL、SMS と着信。それぞれワンクリックで操作できます。

## インストール
brew install --cask ateymoori/tap/oh-my-android

または、署名・公証済みの zip をリリースからダウンロードできます · macOS 26 Tahoe 以降 · Apple シリコン · すでにお使いの Android SDK を使用します(詳細) · ⭐ Android 開発者にもっと見つけてもらえるよう、スターをお願いします

  • 🎛️ 約 50 種類のテスト操作をいつでも表示。 ダークモード、フォントと表示サイズ、RTL や疑似ロケールを含む言語とロケール、TalkBack、太字、レイアウト境界、タップ表示、アニメーションのオフ、ネットワーク速度、GPS、着信と SMS。各アイコンには、デバイスの実際の状態が表示されます。
  • 📐 あらゆるアプリで使える、dp 単位の Layout Inspector。 ビューにカーソルを合わせると、Compose と Views のどちらでも、そのサイズと周囲の間隔を dp 単位で確認できます。Figma のエクスポートを重ねて、デザインと実装を比較できます。⇧⌘A を押すと、TalkBack の停止位置に番号を付け、ラベルの欠落や 48 dp 未満のタッチターゲットを検出します。
  • 🗄️ adb を使わずにデバッグビルドを操作。 SharedPreferences と SQLite の読み取り、データの消去、ディープリンクの起動、APK のドラッグ&ドロップによるインストール、権限のリセットができます。
  • 🪶 ネイティブで軽量。 SwiftUI、イベント駆動型、Electron なし、テレメトリーなし。無料のオープンソース(MIT)です。

Android Studio だけではだめですか? Studio のデバイス UI ショートカットでも、ダークモード、フォントサイズ、 アプリの言語、TalkBack(API 33 以降)をワンクリックで切り替えられます。Studio を開いているときは、そちらをお使いください。Oh My Android では、Studio を閉じた状態でもエミュレーターとスマートフォンの両方で使える、常時表示のパネルを追加します。 Studio のショートカットにはない切り替え機能(太字、疑似ロケール、レイアウト境界、タップ表示、アニメーション)や、Studio の Layout Inspector ではデバッグ可能なアプリが必要な、あらゆるアプリでの dp 測定が利用できます。Studio、scrcpy、mobile-mcp との比較:docs/COMPARISON.md。

🤖 Claude Code、Codex、または Cursor をお使いですか? アプリには MCP サーバー(18 個のツール)が付属しており、エージェントから エミュレーターの画面を dp 単位でキャプチャしたり、タップしたり、ダークモードや RTL を切り替えたりできます。セットアップ →

外観、アプリ、キャプチャ、ネットワークの操作を備えた Oh My Android のコントロールパネルdp 単位の測定と TalkBack の順序監査機能を備えた Layout Inspector
コントロールパネルLayout Inspector + TalkBack 監査

機能 · adb チートシート · Layout Inspector · AI エージェント(MCP) · トラブルシューティング · FAQ · コントリビュート · ウェブサイト

## 機能
利用できる機能
🎨 外観ダークモード · フォントサイズ(0.85× → 2×) · 表示サイズ · 言語とロケール(RTL と疑似ロケールを含む) · 回転
📦 アプリ(画面に表示中のアプリ)再起動 · データを消去 · ディープリンクを開く · APK をインストール(パネルにドラッグすることもできます) · アプリ情報 · 権限をリセット · 強制停止 · アンインストール
📸 キャプチャスクリーンショットを保存してクリップボードにコピー · 音声付き画面録画 · 品質プリセット
🌐 ネットワークLTE、HSDPA、3G、EDGE、GPRS、GSM の速度とレイテンシをエミュレート · 機内モード · Wi‑Fi · モバイルデータ
📐 レイアウトとパフォーマンスレイアウトインスペクター · レイアウト境界を表示 · GPU オーバードロー · GPU プロファイルバー · タップを表示 · ポインター位置 · アニメーションをオフ(Espresso / Maestro 用) · 開発者向けオプション
♿ アクセシビリティTalkBack のオン/オフ · 太字テキスト · 色を反転 · TalkBack の読み上げ順序を監査
🧭 ナビゲーションと入力戻る · ホーム · 最近使用したアプリ · フォーカス中のフィールドにテキストを入力 · キーボードを非表示
🛰️ シミュレーション(エミュレーター)GPS 位置情報:都市のプリセットまたは緯度/経度 · バッテリー残量 · 充電中 · 指紋 · 着信 · 受信 SMS
💾 スナップショット(エミュレーター)クリーンな状態を保存し、数秒で復元

破壊的な操作(データの消去、アンインストール、権限のリセット)を実行する前に確認が求められます。

アップデートと要件

Homebrew のほか、最新リリースから zip をダウンロードし、 解凍して、Oh My Android.app を「アプリケーション」に移動できます。アプリは Apple によって署名および公証されています。

アップデート: 新しいバージョンが公開されると、メニューバーアイコンにドットが表示されます。メニューの Update to … をクリックして、新機能を確認し、ワンクリックでインストールします。確認なしにアプリがアップデートされることはありません。確認は 1 日に 1 回行われます。無効にするには、Settings → Updates を選択してください。brew upgrade --cask oh-my-android も使用できます。

要件: macOS 26 Tahoe 以降、Apple シリコン、および Android Studio の Android SDK(または brew install --cask android-commandlinetools)。 アプリは SDK を自動的に検出します。SDK が標準とは異なるフォルダーにある場合は、Settings → Android SDK で選択してください。

adb コマンドはもう不要

各アイコンから、これまで入力したり検索したりしていたコマンドを実行できます。

タスクadb での方法Oh My Android
エミュレーターでダークモードをオンにするadb shell cmd uimode night yes🌙 ワンクリック
フォントサイズを大きくするadb shell settings put system font_scale 1.3Aa − / +
デバイスの言語を変更するadb shell cmd locale set-device-locale sv-SE🌐 メニューから選択
RTL レイアウトをテストするadb shell cmd locale set-device-locale ar-EG🌐 「العربية (RTL)」
ネットワークを低速化する(3G / EDGE)adb emu network speed edge + adb emu network delay edgeプロファイルを選択
GPS 位置情報を偽装するadb emu geo fix 18.0686 59.3293都市を選択
UI テスト用にアニメーションをオフにする3 × adb shell settings put global …_scale 0ワンクリック
レイアウト境界を表示するadb shell setprop debug.layout true + システム更新呼び出しワンクリック
アプリデータを消去するパッケージを調べてから、adb shell pm clear <package>🗑 ワンクリック
スクリーンショットを撮るadb exec-out screencap -p > shot.png📷 保存してコピー
TalkBack をオンにするadb shell settings put secure enabled_accessibility_services …ワンクリック
ディープリンクを開くadb shell am start -a android.intent.action.VIEW -d "myapp://…"貼り付けて開く

レイアウトインスペクター

画面を固定して、Figma のように寸法を測定できます。Jetpack Compose と従来の Views に対応しています。

レイアウトインスペクター:ビューにカーソルを合わせると、dp 単位のサイズとビュー間の距離を確認できます

  • 任意の要素にカーソルを合わせると、dp 単位のサイズを確認できます。要素をクリックしてから別の要素にカーソルを合わせると、その間の距離(兄弟要素間の隙間、親要素内のパディング)を確認できます。
  • 8 dp グリッド、カラーピッカー(16 進数、⇧⌘C でコピー)、推定テキストサイズ(sp)に対応しています。
  • デザインオーバーレイ:Figma の PNG エクスポートをウィンドウにドロップし、1×/2×/3×または幅に合わせるを選択して、不透明度を設定するか差分ブレンドを使用し、矢印キーで位置を微調整できます。デザインと実装をピクセル単位で比較できます。
アクセシビリティ監査

レイアウトインスペクターで ⇧⌘A を押します。スクリーンリーダーの各読み上げ位置に、おおよその TalkBack の読み上げ順を示す番号と、TalkBack が読み上げる内容、問題の一覧が表示されます。問題には、ラベルのないボタン、コンテンツ説明のない画像、48 × 48 dp 未満のタッチターゲットが含まれます。

データインスペクター

検索機能を使って、デバッグ可能な任意のアプリの SharedPreferences(キー、型、値)と SQLite データベース(テーブル、先頭 500 行)を参照できます。Android Studio と同じアクセス方法である adb shell run-as を使用するため、リリースビルドのデータは保護されます。読み取り専用なので、デバイス上のデータは変更されません。

AI エージェント(MCP)

Oh My Android には MCP サーバーが含まれているため、AI コーディングエージェントがエミュレーターを確認して操作できます。スクリーンショットの撮影、dp 単位の UI ツリーの読み取り、タップやテキストの入力、ダークモードや RTL への切り替え、logcat やアプリのデータベースの読み取りが可能です。エージェントは画面を構築して実行し、結果を確認して、自分で修正できます。

AI エージェントの設定:オフ、読み取り専用、またはフルコントロールと、各エージェントのセットアップコマンド

Oh My Android MCP サーバーを Cursor に追加 Oh My Android MCP サーバーを VS Code にインストール

ボタンでは Homebrew のパス /opt/homebrew/bin/ohmyandroid-mcp を使用します。zip でインストールした場合は、以下のメニューバーから設定してください。

ワンステップで設定: メニューバーのアイコン → AI Agents → Set Up… からエージェントを選び、Copy をクリックします (または Add to Cursor / Add to VS Code)。手動で設定する場合:

claude mcp add --scope user oh-my-android -- ohmyandroid-mcp   # Claude Code
codex mcp add oh-my-android -- ohmyandroid-mcp                 # Codex CLI
gemini mcp add --scope user oh-my-android ohmyandroid-mcp      # Gemini CLI
{ "mcpServers": { "oh-my-android": { "command": "/Applications/Oh My Android.app/Contents/MacOS/ohmyandroid-mcp" } } }

この JSON は Cursor、Claude Desktop、Windsurf、Gemini CLI、その他のエージェントで使用できます(VS Code では "servers" を使用します)。 Homebrew を使うと ohmyandroid-mcp が PATH に追加されます。zip でインストールした場合は、上記のフルパスを使用してください。

ほかの追加方法:

  • Claude Code プラグイン: /plugin marketplace add ateymoori/oh-my-android を実行し、続けて /plugin install oh-my-android@oh-my-android を実行します
  • Claude Desktop 拡張機能: 最新リリースから oh-my-android-<version>.mcpb を開きます
  • MCP Registry: io.github.ateymoori/oh-my-android として登録されています

操作権限はいつでも管理できます: メニューバーのアイコン → AI Agents → Off、Read only、または Full control を選択します。サーバーは呼び出しのたびに設定を確認するため、変更はすぐに反映されます。データを失う可能性のあるツールには破壊的操作のマークが付いているため、エージェントは実行前に確認を求めます。

グループツール
👀 確認screenshot(1 px = 1 dp にスケーリング) · get_ui(ref 付きのコンパクトな UI ツリー) · accessibility_audit
👆 操作tap(ref、テキスト、または x,y を指定) · swipe · type_text · press_key
📱 デバイスlist_devices · get_device_state · set_device_settings:ダークモード、フォントスケール、表示サイズ、ロケール/RTL、画面の向き、TalkBack、アニメーション、Wi-Fi、機内モード、ネットワーク速度、GPS、バッテリー
📦 アプリlist_apps · open_app(パッケージまたはディープリンクを指定し、コールドスタート時間を報告) · manage_app · install_apk · logcat
🗄️ データread_preferences · query_database(コピー上で読み取り専用 SQL を実行)
🧪 エミュレーターemulator_action:指紋認証、着信、SMS、スナップショットの保存/読み込み

すぐに使えるプロンプト:accessibility_review、ui_matrix(ダークモード、大きなフォント、RTL、疑似ロケール)、debug_crash。

エージェントに試しに頼んでみましょう:

  • 「エミュレーターのスクリーンショットを撮って、この画面をダークモードで確認してください。」
  • 「アプリを開いて設定に移動し、ダークモード、フォントスケール 2、アラビア語で確認してください。問題があれば修正してください。」
  • 「保存をタップするとアプリがクラッシュします。再現して、クラッシュの内容を読み取り、修正してください。」
  • 「ログイン画面の TalkBack 対応状況を監査し、コードの問題を修正してください。」

モデル向けに設計されています: すべての位置は、レイアウトコードと同じ dp 単位です。出力はコンパクトなテキストで、UI ツリーは生の uiautomator XML の約 10 分の 1 のサイズです。また、18 個すべてのツール定義を合わせても約 3k トークンです。サーバーは stdio 経由で MCP 2026-07-28 とそれ以前のバージョン(2024-11-05 から 2025-11-25)をサポートし、依存関係がなく、ネットワーク接続も不要です。

プライバシーとセキュリティ

  • 🔒 アナリティクスなし、テレメトリーなし、アカウント不要です。 独自に行う唯一のネットワークリクエストはアップデート確認です。1 日に 1 回、このリポジトリの GitHub リリースから小さなフィードを読み込みます。あなたやデバイスに関する情報は一切送信しません。Settings → Updates で無効にできます。
  • アップデート(Sparkle)は、ユーザーが選択した場合にのみインストールされます。また、このプロジェクトの EdDSA キーおよび同じ Developer ID で署名されている場合に限ります。
  • 接続先は、ユーザー自身の Android SDK にある adb のみです。入力したテキストは、デバイスに送信される前にシェル用にエスケープされます。
  • Data Inspector から作成したデータベースのコピーは、再読み込み時とアプリ終了時に削除されます。
  • MCP サーバーは AI エージェントが起動した場合にのみ実行され、許可したアクセス範囲内でのみ動作します。読み取った情報(画面、UI、ログ、アプリデータ)はエージェントに送られ、そこからエージェントのモデルプロバイダーに送信されます。
  • Developer ID で署名され、ハードニングされたランタイムを使用し、Apple の公証を受けています。

脆弱性を発見しましたか?SECURITY.md をご覧ください。

トラブルシューティング

  • adb が見つからない場合: Settings → Android SDK で SDK を選択するか、ANDROID_HOME を設定してください。
  • エージェントにデバイスがないと言われる場合: エミュレーターを起動するか、スマートフォンを接続してから、エージェントに list_devices の実行を依頼してください。
  • エージェントが ohmyandroid-mcp を起動できない場合(zip インストール): PATH に追加されるのは Homebrew のみです。フルパス /Applications/Oh My Android.app/Contents/MacOS/ohmyandroid-mcp を使用してください。
  • Homebrew から tap が信頼されていないと言われる場合: Homebrew 6 以降では、サードパーティの tap を信頼するよう求められます。完全なコマンド brew install --cask ateymoori/tap/oh-my-android を実行すると、この cask のみが信頼されます。短い名前を使う場合は、先に brew trust --cask ateymoori/tap/oh-my-android を実行してください。
  • エージェントに「Access is Off」と表示される場合: メニューバーのアイコン → AI Agents → Read only または Full control を選択してください。

よくある質問

Oh My Android は無料ですか?

はい。MIT ライセンスのもとで、無料のオープンソースソフトウェアとして提供されています。

Android Emulator や Android Studio の代わりになりますか?

いいえ。これらを補助するアプリです。すでにお使いの Android SDK を通じて、Google のエミュレーターやお使いのスマートフォンを操作します。エミュレーターも SDK も同梱していません。

実機の Android スマートフォンでも使えますか?

はい。USB または Wi‑Fi 経由の adb で使えます。エミュレーター専用の機能(GPS、バッテリー、通話、SMS、スナップショット、ネットワーク速度、画面録画)のみ、エミュレーターが必要です。

Jetpack Compose に対応していますか?

はい。レイアウトインスペクターとアクセシビリティ監査では、Views と同様に uiautomator を通じて Compose のセマンティクスツリーを読み取ります。

どの AI エージェントに対応していますか?

stdio 経由の MCP に対応するエージェントであれば、どれでも使えます。Claude Code、Claude Desktop、Codex CLI、Cursor、VS Code (GitHub Copilot)、Windsurf、Gemini CLI、JetBrains AI、Zed などに対応しています。アプリを開いておく必要はありません。エージェントは必要なときにサーバーを起動します。

Android Emulator でダークモードを有効にするにはどうすればよいですか?

パネルの 🌙 アイコンをクリックしてください。adb を使う場合は adb shell cmd uimode night yes を実行します(無効にする場合は no を指定します)。

Android Emulator で RTL レイアウトをテストするにはどうすればよいですか?

🌐 メニューから「العربية (RTL)」などの RTL 言語、またはハードコードされた文字列やミラーリングの不具合を見つけるための擬似ロケール(ar-XB、en-XA)を選択してください。adb を使う場合は adb shell cmd locale set-device-locale ar-EG を実行します。

Android Emulator で低速なネットワークをシミュレートするにはどうすればよいですか?

ネットワークメニューからプロファイル(LTE、HSDPA、3G、EDGE、GPRS、GSM)を選択してください。パネルでは速度とレイテンシの両方を設定します。adb emu network speed edge と adb emu network delay edge を実行した場合と同じです。

Claude Code、Codex、Cursor 向けの Android MCP サーバーはありますか?

はい。ohmyandroid-mcp はアプリに同梱されています。エージェントは dp 単位でスクリーンショットを撮影し、UI ツリーを読み取り、タップや入力を行い、ダークモード、フォントサイズ、RTL を切り替え、logcat を読み取れます。AI エージェント(MCP)をご覧ください。

npx または uvx のパッケージはありますか?

いいえ。サーバーはランタイム不要のネイティブバイナリです。Homebrew を使うと、ohmyandroid-mcp が PATH に追加されます。

Windows や Linux に対応していますか?

現時点では対応していません。SwiftUI で構築されたネイティブの macOS アプリです。

Mac App Store で配布されていないのはなぜですか?

Mac App Store のアプリは App Sandbox 内で実行する必要があり、サンドボックス化されたアプリは adb を起動できません。 代わりに、Homebrew と GitHub のリリースは Apple による署名と公証を受けています。

macOS 26 以降が必要なのはなぜですか?

パネルでは、macOS 26 Tahoe で新たに導入された Liquid Glass などの API を使用しています。

## ソースからビルドする
brew install xcodegen
git clone https://github.com/ateymoori/oh-my-android.git && cd oh-my-android
xcodegen generate
open OhMyAndroid.xcodeproj

Xcode 26 が必要です。ローカルビルドはアドホック署名されるため、Apple Developer アカウントは必要ありません。

アーキテクチャ
Sources/
  App/        entry point, AppDelegate (host actions), Settings, assets
  Core/       no UI, no feature knowledge
    Shell/    ShellRunning: non-blocking Process runner, stopped on timeout or cancellation
    Android/  AndroidSDK, ADBClient, DeviceTracker (adb track-devices), UI hierarchy, app data
    SQLite/, Imaging/
  Features/   one small type per capability, registered in FeatureCatalog (Foundation only)
  MCP/        ohmyandroid-mcp: stdio MCP server built on Core and Features, shipped inside the app
  State/      AppModel (composition root), DeviceStore, FeatureStore, inspector stores
  Windows/    FloatingPanel, emulator window docking, tool windows
  UI/         SwiftUI; FeatureCell renders any feature from its protocol

依存関係の方向は一方向です:UI → State → Features → Core。各機能はADBClientプロトコルを介してデバイスとやり取りし、HostActions(ファイルピッカー、クリップボード、Finder)を介してMacとやり取りするため、それぞれ小さな値型です。Swift 6言語モード、厳格な並行処理、警告ゼロです。

プロトコル操作例
ToggleFeatureオン/オフのアイコンダークモード、TalkBack、Wi‑Fi
BatchReadable (アドオン)共有のadb shell呼び出し1回で状態を読み取りすべてのsettings/getprop機能
StepperFeature−/+付きポップオーバーフォントサイズ、ディスプレイサイズ
ChoiceFeatureメニュー言語、ネットワーク速度、バッテリー
ActionFeatureワンタップスクリーンショット、回転、強制停止
TextActionFeatureテキストフィールド付きポップオーバーディープリンク、テキスト入力、SMS

**消費電力:**ポーリングは行いません。デバイスの変更はadbのtrack-devicesストリームから取得します。デバイスを選択したとき、アクションの実行後、ポインターがパネルに戻ったときに、機能の値を1回のバッチadb shell呼び出しで読み取ります。エミュレーターの実行中かつパネルが表示されている間のみ、ドッキングで1 Hzのタイマーを使用します。

アプリとメニューバーのアイコンはコードで描画されます:Scripts/make-icon.swift。

ロードマップ

  • 比較モード:2台のデバイスを横並びに表示し、入力をミラーリングして、ピクセル差分を表示
  • パネルウィンドウ内にエミュレーター画面を埋め込み
  • Data InspectorでのDataStore(.preferences_pb)サポート
  • MCP:エミュレーターの起動と停止、画面の録画

アイデアをお持ちですか?機能リクエストを送信してください。 機能の追加は小さなSwift構造体1つでできます。CONTRIBUTING.mdをご覧ください。


⭐ Oh My Androidが時間の節約に役立ったら、このリポジトリにスターを付けてください。
スターを付けると、ほかのAndroid開発者がこのツールを見つけやすくなり、新機能の開発を後押しできます。
新しいバージョンごとに通知を受け取るには、Watch → Custom → Releasesをクリックしてください。

GitHubでOh My Androidにスターを付ける

ライセンス

MIT © 2026 Royan AB。

AndroidはGoogle LLCの商標です。Oh My AndroidはGoogleと提携しておらず、Googleから承認も受けていません。 Androidロボットは、Googleが作成して共有した作品を複製または改変したものであり、Creative Commons 3.0 Attribution Licenseに記載された条件に従って使用しています。


🇸🇪 Royan ABがスウェーデンで制作
Oh My Androidのウェブサイト · royan.se

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。