LeashIndex Get the report

Index / storage

io.github.EthanAckerman-git/preflight-ios-mcp

io-github-ethanackerman-git-preflight-ios-mcp declares 57 capabilities across 57 tools, with 2 critical issues.

95/100 exposureHigh exposure

Manifest recorded 2026-10-12 from tools/list answered by the npm package preflight-ios-mcp@1.0.1 (published to npm as preflight-ios-mcp, listed in the official MCP registry as io.github.EthanAckerman-git/preflight-ios-mcp 1.0.1), run in an isolated container with no network access and no credentials. The date changes only when the manifest does. Not verified by a maintainer.

Issues

These describe what this server's manifest declares. A product can provide controls that MCP has no way to express — token revocation, an admin console, audit logs — and this page cannot see them. The absence of a declaration is not evidence that a control is absent.

critical · no-revocation · All 57 tools

57 of 57 tools declare no way for the customer to switch them off once granted. This applies to every tool because MCP has no field in which to declare a revocation mechanism; the product may provide one outside MCP that a manifest cannot show.

critical · irreversible-uncapped · 1 of 57 tools

1 tool is classified as irreversible and declares no limit.

high · no-expiry · All 57 tools

57 of 57 tools declare no expiry. This applies to every tool because MCP has no field in which to declare an expiry; the product may provide one outside MCP that a manifest cannot show.

high · no-audit-trail · All 57 tools

57 of 57 tools declare no record of their actions that the customer can read. This applies to every tool because MCP has no field in which to declare an audit requirement; the product may provide one outside MCP that a manifest cannot show.

high · uncapped-write · 39 of 57 tools

39 tools can modify data and declare no limit.

low · uncapped-read · 17 of 57 tools

17 tools can read data and declare no limit.

Declared capabilities

How each tool was read. declared means the server's own annotation said so — self-reported and unverified. inferred is from the tool's name. assumed means nothing indicated either way.

ToolRead asBasis
simulator_screenshotwrite assumed
simulator_list_devicesread inferred
simulator_list_appsread inferred
simulator_app_inforead inferred
simulator_get_clipboardread inferred
simulator_get_screen_inforead inferred
simulator_tapwrite assumed
simulator_swipewrite assumed
simulator_long_presswrite assumed
simulator_describe_pointread inferred
simulator_type_textwrite assumed
simulator_press_keywrite assumed
simulator_bootwrite assumed
simulator_shutdownwrite assumed
simulator_erasewrite assumed
simulator_open_urlwrite assumed
simulator_open_simulatorwrite assumed
simulator_get_booted_sim_idread inferred
simulator_launch_appwrite assumed
simulator_terminate_appwrite assumed
simulator_install_appwrite assumed
simulator_uninstall_appwrite assumed
simulator_get_logsread inferred
simulator_stream_logsread inferred
simulator_get_app_containerread inferred
simulator_list_app_filesread inferred
simulator_read_app_fileread inferred
simulator_get_crash_logsread inferred
simulator_diagnosewrite assumed
simulator_accessibility_auditread inferred
simulator_set_locationwrite inferred
simulator_send_pushsend inferred
simulator_set_clipboardwrite inferred
simulator_add_mediawrite inferred
simulator_grant_permissionwrite assumed
simulator_set_appearancewrite inferred
simulator_override_status_barwrite assumed
simulator_record_videowrite assumed
simulator_stop_recordingwrite assumed
simulator_navigate_backwrite assumed
simulator_icloud_syncwrite assumed
simulator_keychainwrite assumed
simulator_set_content_sizewrite inferred
simulator_set_increase_contrastwrite inferred
simulator_location_scenariowrite assumed
simulator_location_routewrite assumed
simulator_verbose_loggingwrite assumed
simulator_install_app_datawrite assumed
simulator_get_envread inferred
simulator_memory_warningwrite assumed
simulator_biometricwrite inferred
simulator_network_statusread inferred
simulator_defaults_readread inferred
simulator_defaults_writewrite inferred
simulator_snapshotwrite assumed
simulator_wait_for_elementwrite assumed
simulator_element_existswrite assumed
Answering this question about your own agent? The self-serve stack report applies the same reading to your own stack or server and gives you a dated document you can hand to a customer's security review. It is generated in your browser, with nobody to wait for. Buying one does not change this page, its score or its place in the index — see Independence.
Maintain this server? If this page misreads your manifest, or your server has changed, submit its current tools/list response and it will be re-scored and dated. Corrections are published alongside the original, not in place of it.