About Dsh Ios
Dsh Ios is an MCP server in the RAG category: run live iOS simulators and your real iPhone over USB inside DeepSeek Harness conversations with 22 agent tools, MJPEG previews, and SwiftUI hot reload.
Install
git clone https://github.com/ZSeven-W/dsh-iosThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (9)
ios_real_start_wdaStart WebDriverAgent (WDA) on a USB-connected physical iPhone — real devices only, never a simulator. Adopts an already-running WDA when one answers; otherwise runs the `xcodebuild` build/launch (a cold build takes minutes), then waits until WDA reports ready and returns the control/MJPEG ports the live panel streams through. Run this first when `ios_sim_screenshot` / `ios_sim_interact` / `ios_sim_ui_tree` / `ios_sim_tap_element` report WDA is not running for the device.
Parameters not published.
ios_sim_bootBoot a device and start its live serve-sim stream; the stream stays alive for the conversation so the panel can show the simulator live.
Parameters not published.
ios_sim_build_runBuild an `.xcodeproj`, `.xcworkspace`, or Swift package for the simulator, install the built `.app`, and launch it; pass a physical-device udid to build, install, and launch on the phone instead (requires Apple Development signing). On failure the result carries the filtered `xcodebuild` error tail. Takes minutes for a full build.
Parameters not published.
ios_sim_devicesList the iOS Simulator devices available on this Mac (udid, name, runtime, state) and which are booted, plus any USB-connected physical iPhones under `realDevices` (udid, name, osVersion, model, state, developerMode). Use it to discover the udid or name to pass to the other tools.
Parameters not published.
ios_sim_interactInteract with the streamed device — simulator or USB-connected phone: tap at normalized 0..1 coordinates, type text (US keyboard on a simulator), press a hardware button (`home`, `lock`, `volumeUp`…), scroll, or send a touch gesture; after the action settles (~300 ms) a fresh screenshot shows the effect.
Parameters not published.
ios_sim_launch_appLaunch an installed app on a booted simulator or a connected phone — by `bundleId`, or by `name` (a case-insensitive display-name substring resolved through the same listing, CJK included). Exactly one of the two; a launch failure and an ambiguous name both come back with what to do next (`ios_sim_build_run` is for building one from source).
Parameters not published.
ios_sim_list_appsList the apps INSTALLED on a booted simulator or a connected phone (bundle id, display name, version, system flag) — a third-party bundle id cannot be guessed, so list it or pass `name` to `ios_sim_launch_app`. A FAILED listing throws (e.g. "the device is not reachable by CoreDevice") instead of returning an empty list, so `count: 0` always means the device really has no matching app.
Parameters not published.
ios_sim_screenshotCapture a PNG and return a small JSON summary (path, bytes, dimensions, device); the image renders in the card/panel, never as an image block. Works on the streamed simulator and on a USB-connected phone via WebDriverAgent.
Parameters not published.
ios_sim_shutdownShut a device down; stops the stream when it targets that device.
Parameters not published.
Ask AI
Ask AI about Dsh Ios
Powered by Claude · Grounded in docs
Security checks
6 checks have not been run yet.