Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Mac app that lets AI agents drive iPhones, iOS simulators and Android: tap, type, install, logs.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
作者はレジストリにインストール情報を載せていません。下にある作者のREADMEをご覧ください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント niklas-schmidt-dev で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.2.64)がレジストリに届いたのは7 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, 오늘냥이 (Oneul Nyangi)
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Real cat photos, diaries, profiles, age and food reference calculators, and breeds.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
The Mobdev app: your iPhones, iOS simulators and Android devices in one window, for you and your AI agent. Free, open source, about 2 MB, no account.
Mobdev reads the iPhone screen over the USB cable, the way QuickTime does. With Developer Mode on the iPhone and Xcode on the Mac, it builds Mobdev Runner, a small UI test, and keeps it running on the iPhone: the runner taps, swipes, types any text, presses keys and buttons and reads the UI tree, over the same cable. iPhones without Developer Mode are driven over Bluetooth instead, with the Mac posing as a keyboard and pointer; nothing is installed on them. Booted simulators and Android devices take the same tools. Agents get an MCP server and a small HTTP API. An optional relay lets agents elsewhere reach the devices.
USB cable: screen frames (like QuickTime)
┌─────────┐ ◀──────────────────────────────────────────────── ┌────────┐ │ Mac │ │ iPhone │ │ Mobdev │ ────────────────────────────────────────────────▶ │ │ │ │ Developer Mode: Mobdev Runner over the cable │ │ │ │ (XCUITest: taps, swipes, keys, text, UI tree) │ │ │ │ ────────────────────────────────────────────────▶ │ │ └─────────┘ without it: Bluetooth LE keyboard + pointer └────────┘ ▲ ▲ (AssistiveTouch turns the pointer into taps) │ └── MCP / HTTP on 127.0.0.1 │ └── optional outgoing connection to a relay (see ../relay)
cd macos
MOBDEV_VARIANT=release scripts/build-app.sh # builds build/Mobdev.app (ad hoc signature) open build/Mobdev.app # allow Camera (and Bluetooth without Developer Mode) when macOS asks
macOS treats the iPhone screen like a camera, hence the Camera prompt. To sign with a certificate, set CODESIGN_IDENTITY; UNIVERSAL=1 builds for Apple silicon and Intel. With an ad hoc signature macOS may ask for the permissions again after each rebuild.
Without MOBDEV_VARIANT=release the script builds Mobdev Dev (build/Mobdev Dev.app) for development. It is a separate app that runs next to an installed Mobdev without changing it: bundle ID dev.mobdev.mac.dev, its own settings and secrets in ~/Library/Application Support/dev.mobdev.mac.dev, port 4687, the mobdev-dev:// URL scheme (so dashboard links keep opening the installed app), the MCP name mobdev-dev, an amber icon and no automatic updates. Both apps share the Mac's Bluetooth, and each starts its own Mobdev Runner on an iPhone in Developer Mode, so quit one before testing input on an iPhone.
On first launch a setup assistant walks through these steps and checks each off as soon as the Mac detects it. It asks for camera access on the page that explains it, and for Bluetooth access only on the way without Developer Mode. Open it again with Mobdev › Set Up iPhone…. Without an iPhone, choose Simulators and Android Only on the welcome page: nothing asks for camera or Bluetooth access until you set one up.
Choose Without Developer Mode in the setup assistant. Mobdev then taps and types through Bluetooth, posing as a keyboard and pointer, and installs nothing on the iPhone. The same way serves an iPhone whose Developer Mode Control is turned off, and, when the iPhone is paired, stands in while Mobdev Runner is still starting.
status, and swipe refuses while the pointer snaps.iOS hides its on-screen keyboard while a Bluetooth keyboard is connected, with or without the cable. After five minutes without input Mobdev lets go of Bluetooth, so the iPhone shows its own keyboard again; the next tap or key from Mobdev connects again within a few seconds (MOBDEV_BLUETOOTH_REST_SECONDS changes the five minutes). For ten minutes after an iPhone or iPad is plugged in without pairing, Mobdev stays connected so that it can still pair; Show on iPhone Again connects again after that. Moving the mouse over the mirror connects right away and keeps Bluetooth awake, so the first click goes through without delay. Until the iPhone has connected all of its inputs again, Mobdev refuses input rather than send a click without the pointer move before it.
The mirror in the app is live: click to tap, drag to swipe, swipe with two fingers on the trackpad (sideways too), scroll with the wheel (a sideways wheel or Shift scrolls sideways), and type while it has focus. Over Bluetooth the pointer follows the mouse as it moves; through Mobdev Runner each tap, swipe and scroll goes out when the button or the fingers lift, and typing in short bursts. ⌘V types the Mac clipboard on the phone. The inspector on the right shows what is still missing, Activity lists every agent action, and Settings (⌘,) holds the keyboard layout and API token.
.app, .ipa or .apk on it to install; launch, stop and remove apps; follow an app's console live, open its crash reports and try deep links. It uses the same tools as agents, so it needs Developer Mode and Xcode for an iPhone, and nothing for simulators and Android.{"tap_element":{"id":"login"}}, instead of tapping the device. Simulators, Android, and iPhones with Mobdev Runner.The app shows ready-to-copy configurations with the right paths. The stdio variants need no token: Mobdev mcp reads it locally and starts the app in the background if needed. It reaches the app over a Unix socket in the app's data directory rather than the TCP port, so another user on the Mac cannot pose as the app and collect the token.
Claude Code:
claude mcp add --scope user mobdev -- /Applications/Mobdev.app/Contents/MacOS/Mobdev mcp
Codex (~/.codex/config.toml):
[mcp_servers.mobdev]
command = "/Applications/Mobdev.app/Contents/MacOS/Mobdev" args = ["mcp"]
Claude Desktop, Cursor and other clients:
{ "mcpServers": { "mobdev": { "command": "/Applications/Mobdev.app/Contents/MacOS/Mobdev", "args": ["mcp"] } } }
Clients that speak Streamable HTTP can also use http://127.0.0.1:4686/mcp with Authorization: Bearer (copy it in the app). The server supports MCP 2026-07-28 and the earlier initialize-based versions from 2024-11-05 to 2025-11-25.
Coordinates are pixels of the image screenshot returns (long edge 1280 px, origin top-left). Actions return a fresh screenshot over MCP unless screenshot is false. With more than one device, pass device (an id or name from list_devices) to pick one. Without it, Mobdev uses the only device, or the connected iPhone when simulators or Android devices run next to it.
| Tool | Arguments | |
|---|---|---|
list_devices | iPhones, booted simulators and Android devices: id, name, model, system version, ready | |
list_virtual_devices | Every iOS simulator and Android Virtual Device on the Mac, running or not (see Simulators and Android) | |
boot_device | id, window | Starts a simulator or AVD and waits until it has booted; it then appears in list_devices |
shutdown_device | id | Shuts a simulator down or quits an emulator, unless a flow, test run or crawl holds it |
create_simulator | device_type, runtime, name, boot | Makes an iOS simulator, such as "iPhone 17 Pro" on "27.0" (default the newest iOS), and boots it |
delete_simulator | id | Deletes a simulator that create_simulator made; others are refused |
status | Screen and input readiness, how input reaches an iPhone (Mobdev Runner or Bluetooth), screenshot size | |
screenshot | JPEG of the screen | |
tap | x, y, double | x and y may also be shares of the screen such as "50%", as in every tool with coordinates |
long_press | x, y, seconds | |
swipe | from_x, from_y, to_x, to_y, duration |
| pinch | scale, x, y, duration | Two fingers around a point (default the center) a
冒頭だけを表示しています。続きはリポジトリで読めます