iOS: what WebKit does not offer
| Not available | Why or what to do instead |
|---|---|
| Viewport and device emulation | The page always renders at the device’s real size. Use a simulator of the size you need. |
| CPU and network throttling | WebKit has no throttling for debuggers. Only “No throttling” can be selected. |
| Editing JavaScript in Sources | Scripts cannot be replaced in the running page. Change the source and reload. CSS can be edited. |
| Performance and memory recording | No performance traces or heap snapshots on iOS. |
| SharedWorker debugging | Not supported by WebKit’s inspector. |
| Real input events | Clicks and typing from the screencast, the CLI and MCP are synthetic DOM events (isTrusted is false). |
iOS: which pages are reachable
- WebViews only in development builds that set
isInspectable(iOS 16.4+). App Store and TestFlight apps cannot be inspected. See iOS WebViews. - Locked devices and background tabs do not answer the debugger. Keep the device unlocked and the page in front.
- localhost: an iPhone cannot reach your Mac’s
localhost. Use the Mac’s LAN address or a tunnel. The simulator can reachlocalhost. - One debugger per page: WebKit allows one inspector connection per page. Tapscope shares its connection between DevTools, CLI, MCP and the raw console, but Safari’s own Web Inspector cannot attach to the same page at the same time.
Screencast
On iOS the preview is built from snapshots of the page: around 12 frames per second in the simulator and over USB, fewer over Wi-Fi. It shows the page’s viewport, not the status bar, Safari’s toolbar or the keyboard.
Agents and MCP
Chrome DevTools MCP runs 22 of its 33 tools against iOS. Not available: get_css_styles, upload_file, resize_page, emulate, performance_*, take_heapsnapshot, handle_dialog and lighthouse_audit. Details in Coding agents.
React DevTools
Reload and start profiling, hook names from source code and the jumps into Sources and Elements are not available. Production builds of React show the tree but cannot be edited.
Android
- WebViews appear only when the app enables debugging.
- Android pauses apps in the background; their pages show as Not responding until the app is in front again.
- Very old WebViews may not know every command of the current DevTools; harmless messages in the DevTools console can result.
Not yet verified
Tested during development: an iPhone on iOS 27 over USB and Wi-Fi, the iOS Simulator, an Android emulator, desktop Chrome and Node.js. Physical Android devices and WebView apps on a real iPhone have not been verified yet.
Platforms
Tapscope runs on macOS 15 or later. Windows is planned for later.