LeashIndex Get the report

Index / storage

OpenDeck

io-github-kastro5-opendeck-mcp declares 33 capabilities across 33 tools, with 2 critical issues.

90/100 exposureHigh exposure

Manifest recorded 2026-10-26 from tools/list answered by the PyPI package opendeck-mcp==0.4.1 (published to PyPI as opendeck-mcp, listed in the official MCP registry as io.github.kastro5/opendeck-mcp 0.4.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 33 tools

33 of 33 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 · 7 of 33 tools

7 tools are classified as irreversible and declare no limit.

high · no-expiry · All 33 tools

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

33 of 33 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 · 12 of 33 tools

12 tools can modify data and declare no limit.

low · uncapped-read · 14 of 33 tools

14 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
get_overviewread declared
show_profileread declared
list_actionsread declared
describe_actionread declared
get_plugin_settingsread declared
read_logsread declared
get_app_rulesread declared
set_keywrite inferred
update_keywrite inferred
undo_livedestructive declared
make_folderwrite assumed
clear_keydelete inferred
move_keywrite inferred
add_childwrite inferred
remove_childdelete inferred
set_multi_delayswrite inferred
manage_profilewrite assumed
set_app_rulewrite inferred
set_plugin_settingswrite inferred
set_device_layoutwrite inferred
preview_changesread declared
discard_changesdelete inferred
render_profileread declared
make_iconwrite assumed
find_iconsread declared
ha_searchread declared
ha_describe_entityread declared
ha_call_servicedestructive declared
find_pluginsread declared
stage_pluginwrite assumed
apply_changesdestructive declared
list_backupsread declared
restore_backupdestructive 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.