LeashIndex Get the report

Index / storage

PIO Agent

io-github-jl-codes-platformio-mcp declares 72 capabilities across 72 tools, with 2 critical issues.

100/100 exposureHigh exposure

Manifest recorded 2026-10-22 from tools/list answered by the npm package platformio-mcp@3.1.0 (published to npm as platformio-mcp, listed in the official MCP registry as io.github.jl-codes/platformio-mcp 3.1.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 72 tools

72 of 72 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 · 22 of 72 tools

22 tools are classified as irreversible and declare no limit.

high · no-expiry · All 72 tools

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

72 of 72 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 · 18 of 72 tools

18 tools can modify data and declare no limit.

low · uncapped-read · 32 of 72 tools

32 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
deps_checkwrite assumed
project_envsread declared
project_metadatawrite assumed
coredumpdestructive declared
partition_tabledestructive declared
run_targetdestructive declared
list_targetsread inferred
pkg_searchread declared
pkg_installwrite assumed
pkg_uninstalldestructive declared
pkg_listread inferred
pkg_outdatedwrite assumed
pkg_updatedestructive declared
decode_backtracewrite assumed
size_reportwrite assumed
list_boardsread declared
get_board_inforead declared
list_devicesread declared
init_projectwrite assumed
build_projectwrite assumed
clean_projectdestructive declared
upload_filesystemdestructive declared
upload_firmwaredestructive declared
acquire_lockwrite assumed
release_lockwrite assumed
get_lock_statusread declared
search_librariesread declared
install_librarywrite assumed
list_installed_librariesread declared
start_monitorwrite assumed
stop_monitorwrite assumed
query_logsread declared
reset_server_statedestructive declared
check_task_statusread declared
get_dashboard_urlread declared
get_project_contextread declared
get_project_configread declared
agent_validate_projectread declared
agent_build_diagnosewrite assumed
agent_safe_pin_auditread declared
agent_flash_monitor_verifydestructive declared
agent_get_last_reportread declared
agent_generate_board_reportread declared
get_policy_statusread declared
agent_resolve_targetread declared
get_monitor_statusread declared
capture_serial_windowwrite assumed
agent_monitor_healthwrite assumed
cancel_taskdestructive declared
list_task_historyread declared
get_approval_requestread declared
list_pending_approvalsread declared
system_inforead declared
check_projectread inferred
run_testsdestructive declared
uninstall_librarydestructive declared
update_librarydestructive declared
serial_session_startwrite assumed
serial_session_readread declared
serial_session_writedestructive declared
serial_session_listread declared
serial_session_stopdelete inferred
monitor_captureread inferred
memory_watchwrite assumed
port_diagnoseread declared
power_profiledestructive declared
debug_startdestructive declared
debug_cmddestructive declared
debug_stopdestructive declared
debug_listread declared
upload_otadestructive declared
flash_verificationdestructive declared
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.