LeashIndex Get the report

Index / storage

adb-mcp: Android emulator and device control over adb

io-github-iksnerd-adb-mcp declares 79 capabilities across 79 tools, with 2 critical issues.

99/100 exposureHigh exposure

Manifest recorded 2026-10-22 from tools/list answered by the container image ghcr.io/iksnerd/adb-mcp version 0.23.0 (published as the image ghcr.io/iksnerd/adb-mcp:0.23.0, listed in the official MCP registry as io.github.iksnerd/adb-mcp 0.23.0), 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 79 tools

79 of 79 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 · 5 of 79 tools

5 tools are classified as irreversible and declare no limit.

high · no-expiry · All 79 tools

79 of 79 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 79 tools

79 of 79 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 · 57 of 79 tools

57 tools can modify data and declare no limit.

low · uncapped-read · 17 of 79 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
adb_reversewrite assumed
app_statewrite assumed
avd_snapshotwrite assumed
boot_emulatorwrite assumed
build_and_runwrite assumed
cellularwrite assumed
clear_app_datawrite assumed
clear_device_lockdelete inferred
clear_logcatwrite assumed
connect_wirelesswrite assumed
describe_uiread inferred
doctorwrite assumed
dragwrite inferred
enter_pinwrite assumed
finger_removedelete inferred
fingerprint_touchwrite assumed
get_app_detailsread inferred
get_coverage_reportread inferred
get_file_coverageread inferred
gradle_buildwrite assumed
gradle_project_propertieswrite assumed
grant_permissionwrite assumed
has_biometric_enrolledwrite assumed
input_key_combowrite assumed
input_textwrite assumed
install_appwrite assumed
is_device_securewrite inferred
last_crashdelete inferred
launch_appwrite assumed
launch_dev_clientwrite assumed
list_avdsread inferred
list_devicesread inferred
list_gradle_projectsread inferred
list_gradle_tasksread inferred
list_gradle_variantsread inferred
list_packagesread inferred
logcatwrite assumed
long_presswrite assumed
open_dev_menuwrite assumed
open_urlread inferred
phone_callwrite assumed
prefer_pinwrite inferred
press_keywrite assumed
pull_filewrite assumed
push_filewrite inferred
reload_appwrite assumed
render_statsread inferred
revoke_permissiondelete inferred
rotate_screenwrite assumed
run_instrumented_testswrite assumed
run_sequencewrite assumed
run_unit_testswrite assumed
scaffold_android_projectwrite inferred
screenshotwrite assumed
send_smssend inferred
session_clear_defaultswrite assumed
session_set_defaultswrite inferred
session_show_defaultsread inferred
set_batterywrite inferred
set_dark_modewrite inferred
set_device_lockwrite inferred
set_locationwrite inferred
set_sensorwrite inferred
set_status_barwrite inferred
shutdown_emulatorwrite assumed
start_logcat_capturewrite assumed
start_screen_recordread inferred
stay_awakewrite assumed
stop_appwrite assumed
stop_logcat_capturewrite assumed
stop_screen_recordread inferred
swipewrite assumed
tapwrite assumed
tap_elementread inferred
tap_on_textread inferred
uninstall_appwrite assumed
waitwrite assumed
wait_for_bootwrite assumed
wait_for_textwrite 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.