82 tools from the Preflight Ios MCP Server, categorised by risk level.
View the Preflight Ios policy →simulator_accessibility_audit Get the accessibility element tree of the current Simulator screen. Shows roles, labels, values, and positions of UI elements. simulator_app_info Get detailed metadata about an installed app (bundle ID, paths, version, etc.). simulator_defaults_read Read UserDefaults values from inside the simulator. Inspect app preferences, feature flags, and configuration. simulator_describe_point Returns the accessibility element at given coordinates on the iOS Simulator screen. Shows element type, label, value, and frame. simulator_get_app_container Get the filesystem path to an app's container (bundle, data, or shared groups). Use this to find where the app stores its files. simulator_get_booted_sim_id Get the UDID of the currently booted iOS Simulator. simulator_get_clipboard Read the text content of the simulator clipboard. simulator_get_crash_logs Retrieve crash reports from ~/Library/Logs/DiagnosticReports/. Shows stack traces, exception info, and thread states. Filter by process name. simulator_get_env Read an environment variable from the running simulator device (e.g., HOME, TMPDIR, PATH). simulator_get_logs Get recent device/app logs. Filter by process name, subsystem, log level, time range, and message content. Essential for debugging app behavior. simulator_get_screen_info Get diagnostic info about the Simulator window geometry and coordinate mapping. Useful for debugging tap/swipe accuracy. simulator_heap_info Dump heap allocation summary for a running app. Shows object counts by class and total memory usage. simulator_leak_check Check a running app for memory leaks using Apple's leaks tool. Returns leak count, leaked bytes, and details. simulator_list_app_files List files in an app's data container. Shows Documents, Library, Preferences, Caches, tmp, etc. Use to find databases, plists, caches. simulator_list_apps List all installed apps on the simulator with their bundle IDs. simulator_list_devices List iOS Simulator devices. Shows name, UDID, state, and runtime. simulator_network_status Get the current network configuration inside the simulator — interfaces, IP addresses, DNS config. simulator_override_status_bar Override the simulator status bar: set time, battery, signal bars, carrier name, network type. Use clear=true to reset. simulator_read_app_file Read a file from an app's data container. Handles plists (converts to JSON), SQLite databases (shows schema), and text files. Specify path relative... 2/5 simulator_screenshot Take a screenshot of the iOS Simulator screen. Returns the image directly for viewing. simulator_snapshot Capture a structured accessibility snapshot of the current screen — like Playwright's browser_snapshot. Returns roles, labels, values, and position... simulator_storekit_transactions List all StoreKit test transactions (purchases, subscriptions, etc.). simulator_vmmap Show virtual memory map for a running app. Displays memory regions, sizes, and permissions. Useful for diagnosing memory issues. simulator_add_media Add photos or videos to the simulator's camera roll from local file paths. 2/5 simulator_boot Boot an iOS Simulator device. Opens the Simulator app. Use simulator_list_devices to find device names/UDIDs. 2/5 simulator_clone_device Clone a simulator device with all its current state — apps, data, settings. 2/5 simulator_create_device Create a new simulator device. Specify name and device type; auto-detects latest iOS runtime if not provided. 2/5 simulator_defaults_write Write UserDefaults values inside the simulator. Set feature flags, change app configuration, or inject test data. 2/5 simulator_diagnose Generate a diagnostic summary: booted devices, Xcode version, disk usage, and system info. 2/5 simulator_element_exists Quick check: does an element matching your criteria exist on screen right now? Returns true/false. Useful for conditional logic. 2/5 simulator_install_app Install a .app bundle onto the simulator from a local file path. 3/5 simulator_install_app_data Install an .xcappdata package to replace the current app container contents. Useful for restoring test data snapshots. 3/5 simulator_location_route Simulate movement along a custom route with waypoints. Specify GPS coordinates and speed for realistic location testing. 2/5 simulator_long_press Long press at a point on the simulator screen. Useful for context menus, drag-and-drop initiation, etc. 2/5 simulator_network_capture Capture a snapshot of network activity: active TCP connections, DNS resolution, host interfaces, and any active network conditioning. 2/5 simulator_network_condition Apply network throttling: bandwidth limits, latency, and packet loss. Presets: 3G, LTE, Edge, WiFi, WiFi-lossy, 100%-loss (offline). Simulator shar... 2/5 simulator_notify_post Post a Darwin notification inside the simulator. Useful for triggering system events or testing notification observers. 2/5 simulator_open_simulator Opens the iOS Simulator application. 2/5 simulator_open_url Open a URL or deep link in the simulator (e.g., "https://example.com" or "myapp://screen"). 2/5 simulator_press_key Press a special key (return, escape, delete, tab, arrows, etc.) with optional modifiers (command, shift, option, control). 2/5 simulator_rename_device Rename a simulator device. 2/5 simulator_rotate Rotate the simulator device left or right. Uses Cmd+Arrow keyboard shortcut in Simulator.app. 2/5 simulator_sample_process Sample a running app's CPU activity for a few seconds. Returns call stack tree — useful for finding performance hotspots and hangs. 2/5 simulator_send_push Send a push notification to an app. Provide the full APNs payload JSON (e.g., {"aps": {"alert": "Hello"}}). 2/5 simulator_set_appearance Switch the simulator between light and dark mode. 2/5 simulator_set_bold_text Enable or disable Bold Text accessibility setting. Test text rendering with bold system fonts. 2/5 simulator_set_clipboard Set text on the simulator clipboard. Useful for pasting content into apps. 2/5 simulator_set_content_size Set the preferred content size for Dynamic Type testing. Test your app with accessibility text sizes without changing device settings manually. 2/5 simulator_set_increase_contrast Enable or disable the Increase Contrast accessibility setting. Test how your app responds to high contrast mode. 2/5 simulator_set_locale Set the device locale and language for internationalization testing. Requires device reboot to take effect. 2/5 simulator_set_location Set the simulated GPS location (latitude, longitude). Useful for testing location-based features. 2/5 simulator_set_reduce_motion Enable or disable the Reduce Motion accessibility setting. Test animations and transitions with motion sensitivity. 2/5 simulator_set_reduce_transparency Enable or disable Reduce Transparency. Test UI readability without blur/vibrancy effects. 2/5 simulator_set_smart_invert Enable or disable Smart Invert Colors. Test how your app handles inverted color schemes. 2/5 simulator_shutdown Shut down a running simulator device. 2/5 simulator_storekit_config Enable or disable StoreKit testing on the simulator. Required before using other StoreKit tools. 2/5 simulator_storekit_manage_subscription Expire or force-renew a StoreKit test subscription by transaction ID. 2/5 simulator_storekit_manage_transaction Refund, approve, or decline ask-to-buy for a StoreKit test transaction. 2/5 simulator_swipe Swipe/drag from one point to another on the simulator screen. Coordinates are in simulator screen points. Use for scrolling, pulling down, or any d... 2/5 simulator_tap Tap at a point on the simulator screen. Coordinates are in simulator screen points (e.g., 0-393 for iPhone width). Take a screenshot first to ident... 2/5 simulator_terminate_app Force-terminate a running app by bundle ID. 2/5 simulator_thermal_state Simulate thermal pressure changes (nominal, fair, serious, critical). Test how your app responds to device overheating. 2/5 simulator_type_text Type text into the currently focused text field in the simulator. Make sure a text field is focused first (tap on it). 2/5 simulator_verbose_logging Enable or disable verbose device logging for deep debugging. Requires device reboot to take effect. 2/5 simulator_delete_device Permanently delete a simulator device by UDID or name. 4/5 simulator_erase Factory reset a simulator device. Erases all content and settings. 4/5 simulator_grant_permission Grant, revoke, or reset app permissions (camera, location, photos, contacts, microphone, etc.). 4/5 simulator_keychain Manipulate the device keychain: add root certificates, add certificates, or reset the entire keychain. 5/5 simulator_storekit_delete_transactions Delete all StoreKit test transactions. Clears purchase history for fresh testing. 4/5 simulator_storekit_reset_eligibility Reset introductory offer eligibility for all StoreKit products. Allows re-testing intro pricing. 4/5 simulator_uninstall_app Uninstall an app from the simulator by bundle ID. 4/5 simulator_biometric Control Face ID / Touch ID: enroll, unenroll, trigger matching (success), or trigger failure. Test biometric authentication flows end-to-end. 3/5 simulator_icloud_sync Trigger iCloud sync on the device. Requires the device to be signed into an Apple ID. 3/5 simulator_launch_app Launch an app by bundle ID. Optionally pass launch arguments and environment variables. 3/5 simulator_location_scenario Run predefined GPS location scenarios (Freeway Drive, City Run, City Bicycle Ride). Simulates realistic movement patterns for testing location feat... 3/5 simulator_memory_warning Trigger a simulated memory warning. Apps will receive didReceiveMemoryWarning and can be tested for proper memory cleanup. 3/5 simulator_navigate_back Navigate back in the current app. Sends Cmd+[ (standard back navigation). Works in Safari and apps with standard UINavigationController. Workaround... 3/5 simulator_record_video Start recording the simulator screen to a video file. Use simulator_stop_recording to stop. Supports H.264 and HEVC codecs. 3/5 simulator_stop_recording Stop an active video recording and save the file. 3/5 simulator_stream_logs Start/read/stop a live log stream. Use action="start" to begin, "read" to get the buffer, "stop" to end. Great for watching app behavior in real-time. 3/5 simulator_trigger_siri Invoke Siri on the simulator. Use simulator_type_text to enter a query if text input is available. 3/5 simulator_wait_for_element Wait for an accessibility element to appear on screen. Polls until the element matching your criteria (label, role, or text) appears, or times out.... 3/5 The Preflight Ios MCP server exposes 82 tools across 4 categories: Read, Write, Destructive, Execute.
Use Intercept, the open-source MCP proxy. Write YAML rules for each tool — rate limits, argument validation, or deny rules — then run Intercept in front of the Preflight Ios server.
Preflight Ios tools are categorised as Read (23), Write (41), Destructive (7), Execute (11). Each category has a recommended default policy.
Open source. One binary. Zero dependencies.
npx -y @policylayer/intercept