UI-dbugbridge-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IPROXY_PATH | No | Path to the iproxy executable. | iproxy |
| BRIDGE_BASE_URL | No | Base URL of the DebugBridge HTTP service on the Mac side after port forwarding. | http://127.0.0.1:37777 |
| BRIDGE_LOCAL_PORT | No | Local port for iproxy forwarding. | 37777 |
| BRIDGE_REMOTE_PORT | No | Remote port on the device for the DebugBridge service. | 37777 |
| DEV_FLOW_SESSION_ID | No | DevFlow/MCP context identifier used for runtime context reporting. | |
| LOOKDEBUG_DEVICE_UDID | Yes | UDID of the physical iOS device to use. | |
| LOOKDEBUG_SCREENSHOT_COMMAND | No | External screenshot command; uses {output} as placeholder for output file path. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| pingA | Require a connected physical iOS device, then check the in-app DebugBridge. |
| ensure_portsB | Require a connected physical device and ensure the DebugBridge port is forwarded. |
| inspect_uiB | Read the current App UIWindow/UIView tree directly from DebugBridge. |
| get_debug_pageB | Get semantic page and registered actionable element IDs from the in-app DebugBridge, optionally saving an artifact. |
| get_runtime_nodeA | Read a live UIKit node by runtime anchor/accessibilityIdentifier via the in-app DebugBridge, optionally saving a runtime detail artifact. |
| read_app_logsA | Search the current app run's in-memory DebugBridge log pool. Logs are temporary and are not written to disk or addressed by cursor. |
| wait_app_logsA | Wait for a new matching entry in the current app run's in-memory DebugBridge log pool; no cursor is required or returned. |
| tap_elementC | Tap an element by stable DebugBridge ID. |
| set_switchB | Set a UISwitch by stable DebugBridge ID. |
| set_textB | Replace text in a UITextField or UITextView by stable DebugBridge ID, focusing the control and firing editing-change events. |
| type_textA | Append text to a UITextField or UITextView by stable DebugBridge ID, focusing the control and firing editing-change events. |
| run_flowC | Run a UI operation flow against the current app page using DebugBridge IDs or labels. |
| audit_runtimeB | Compare a Figma raw frame with the current DebugBridge page and write semantic audit artifacts. |
| get_screenshotA | Capture a screenshot using the configured screenshot command. |
| get_pageA | Deprecated alias of get_debug_page. |
| get_ui_hierarchyA | Deprecated alias of inspect_ui using the current App UIWindow/UIView tree. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Each tool serves a clear, distinct purpose, such as connection setup, UI inspection, element interaction, log retrieval, or runtime auditing. The two deprecated aliases are explicitly labeled as such, minimizing confusion despite their overlap with get_debug_page and inspect_ui.
All tool names follow a consistent snake_case verb_noun pattern (e.g., get_debug_page, tap_element, run_flow). Deprecated aliases also adhere to this pattern, so the naming style is uniform throughout.
With 16 tools, the count is slightly above the typical 3-15 range, primarily due to two deprecated aliases. Excluding those, the 14 unique tools cover the domain comprehensively, making the count reasonable but marginally padded.
The tool set covers the full lifecycle of UI debugging: connection verification, port forwarding, UI tree inspection, runtime node retrieval, element interaction (tap, switches, text), log searching/waiting, screenshots, and Figma-based auditing. No significant gaps are evident for the stated purpose.