LeashIndex Get the report

Index / messaging

Shopemail

app-shopemail-shopemail declares 78 capabilities across 78 tools, with 2 critical issues. One of them, no-revocation, is recorded for every server in the index because MCP has no field in which to declare a way to switch a tool off; a missing declaration is not evidence that the control is missing.

100/100 exposureHigh exposure

Manifest recorded 2026-11-08 from tools/list on https://shopemail.app/mcp, published in the official MCP registry as app.shopemail/shopemail 0.2.0. 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 78 tools

78 of 78 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 · 54 of 78 tools

54 tools are classified as irreversible or destructive and declare no limit. 53 of them are counted only because the server annotated them destructiveHint. In MCP that annotation marks a tool that may make destructive changes rather than only additive ones; it does not say the change cannot be undone.

high · no-expiry · All 78 tools

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

78 of 78 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 · 3 of 78 tools

3 tools can modify data and declare no limit.

low · uncapped-read · 21 of 78 tools

21 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
open_editorread declared
get_contextread declared
list_theme_examplesread declared
get_theme_exampleread declared
list_themesread declared
get_themeread declared
list_emailsread declared
read_emailread declared
list_blocksread declared
get_email_optionsread declared
list_rule_recipesread declared
get_shopify_data_catalogread declared
list_data_fieldsread declared
get_editor_formatsread declared
get_block_formatsread declared
list_imagesread declared
get_preview_dataread declared
preview_emailread declared
inspect_emailread declared
export_emailsend inferred
export_themewrite inferred
get_change_historyread declared
create_custom_themedestructive declared
copy_themedestructive declared
rename_themedestructive declared
archive_themedestructive declared
restore_themedestructive declared
set_workspace_active_themedestructive declared
set_brand_detailsdestructive declared
copy_brand_settingsdestructive declared
set_email_item_layoutdestructive declared
set_brand_logodestructive declared
set_theme_fontdestructive declared
set_checklist_itemdestructive declared
set_brand_colordestructive declared
set_brand_typographydestructive declared
set_brand_shapedestructive declared
set_theme_tokendestructive declared
set_dark_theme_tokendestructive declared
set_theme_layoutdestructive declared
set_shared_settingdestructive declared
set_theme_settingdestructive declared
set_section_visibilitydestructive declared
set_section_lockdestructive declared
remove_sectiondestructive declared
restore_sectiondestructive declared
set_email_copydestructive declared
set_email_contentdestructive declared
set_email_styledestructive declared
set_email_brand_defaultsdestructive declared
set_block_styledestructive declared
set_native_block_visibilitydestructive declared
set_section_ruledestructive declared
remove_section_ruledestructive declared
set_block_ruledestructive declared
remove_block_ruledestructive declared
set_block_contentdestructive declared
remove_block_contentdestructive declared
add_data_fielddestructive declared
remove_data_fielddestructive declared
save_rule_recipedestructive declared
remove_rule_recipedestructive declared
set_preview_datadestructive declared
set_shared_block_contentdestructive declared
reorder_blocksdestructive declared
add_blockdestructive declared
update_blockdestructive declared
set_custom_codedestructive declared
move_blockdestructive declared
duplicate_blockdestructive declared
remove_blockdestructive declared
import_email_contentdestructive declared
studio_snapshotread declared
studio_savedestructive declared
select_themewrite assumed
add_detail_fielddestructive declared
undo_editdestructive declared
upload_imagewrite inferred
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.