LeashIndex Get the report

Index / storage

ai.switchapp/switch

ai-switchapp-switch declares 133 capabilities across 133 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://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.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 133 tools

133 of 133 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 · destructive-uncapped · 24 of 133 tools

24 tools are annotated by the server as destructive (destructiveHint) and declare no limit. 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 133 tools

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

133 of 133 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 · 41 of 133 tools

41 tools can modify data and declare no limit.

low · uncapped-read · 68 of 133 tools

68 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
premiere_list_connectionsread declared
premiere_read_timelineread declared
premiere_request_editdestructive declared
premiere_shot_logread declared
premiere_edit_statusread declared
premiere_cancel_editdestructive declared
premiere_framewrite assumed
aftereffects_list_connectionsread declared
aftereffects_read_projectread declared
aftereffects_request_editdestructive declared
aftereffects_edit_statusread declared
aftereffects_cancel_editdestructive declared
aftereffects_renderwrite assumed
explore_modelsread declared
check_balanceread declared
spend_logread declared
list_generationsread declared
show_generationread declared
check_job_statusread declared
show_mediaread declared
list_my_foldersread declared
list_my_assetsread declared
search_my_libraryread declared
get_my_active_referencesread declared
load_video_workflowread declared
load_workflow_playbookread declared
list_stylesread declared
apply_styleread declared
ask_switch_unrestrictedwrite assumed
decide_switch_unrestricted_actiondestructive declared
enhance_video_promptwrite assumed
quote_videoread declared
suggest_speech_secondsread declared
apply_iphone_realismread declared
apply_movie_sceneread declared
apply_high_fashion_editorialread declared
apply_graphic_editorial_portraitread declared
apply_travelread declared
apply_wellnessread declared
apply_cinematic_anamorphicread declared
apply_magic_hour_portraitread declared
apply_productread declared
apply_ugcread declared
generate_imagewrite assumed
cancel_my_taskdestructive declared
generate_videowrite assumed
list_video_modelsread declared
get_video_statusread declared
list_my_videosread declared
upscale_videowrite assumed
list_upscalersread declared
sync3_lip_sync_videowrite assumed
lip_sync_videowrite assumed
talking_avatar_videowrite assumed
voicedestructive declared
generate_audiowrite assumed
get_audio_statusread declared
list_my_audioread declared
find_library_soundread declared
find_epidemic_soundread inferred
generate_soundwrite inferred
generate_sound_effectwrite assumed
extract_sound_effectread inferred
sound_extraction_statusread inferred
add_sound_to_videowrite inferred
generate_speechwrite assumed
generate_dialoguewrite assumed
change_voicewrite assumed
list_voicesread declared
clone_voicewrite assumed
design_voicewrite assumed
delete_voicedestructive declared
manage_voicedestructive declared
transcribe_audiowrite inferred
align_wordsread inferred
generate_musicwrite assumed
video_to_musicwrite inferred
plan_musicread declared
isolate_voicewrite assumed
dub_audiowrite assumed
upload_reference_assetwrite inferred
stitch_videoswrite assumed
stitch_in_editorwrite assumed
analyze_videoread declared
quote_shot_logread declared
log_shotswrite assumed
export_shot_logread declared
place_on_editor_timelinewrite assumed
read_editor_timelineread declared
edit_editor_timelinedestructive declared
export_editor_projectwrite assumed
get_editor_exportread inferred
find_editor_scenesread declared
frame_atread declared
contact_sheetread declared
create_depth_mapwrite inferred
get_depth_map_statusread inferred
analyze_video_reportread inferred
get_vision_reportread declared
list_vision_reportsread declared
video_to_promptread declared
split_image_into_layerswrite assumed
get_layer_setread declared
update_layer_setdestructive declared
flatten_layer_setwrite inferred
export_layer_setdestructive declared
create_editor_projectwrite inferred
list_editor_projectsread declared
get_editor_projectread declared
delete_editor_projectdestructive declared
share_editor_projectdestructive declared
upload_editor_mediawrite inferred
add_editor_library_assetswrite inferred
list_editor_workflowsread declared
run_editor_agentdestructive declared
get_editor_runread declared
approve_editor_rundestructive declared
cancel_editor_rundestructive declared
render_editor_projectwrite assumed
capture_editor_assetswrite assumed
open_questionsread inferred
save_brand_kitwrite assumed
get_brand_kitread declared
list_brand_kitsread declared
delete_brand_kitdestructive declared
delete_my_assetdestructive declared
delete_my_videosdestructive declared
delete_layer_setdestructive declared
delete_my_audiodestructive declared
upload_mediawrite inferred
create_folderwrite inferred
rename_folderdestructive declared
delete_my_folderdestructive declared

Record history

Earlier records for this server. A correction is added here, never written over the record it corrects.

RecordedExposureSource
2026-10-28100 tools/list on https://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.0
2026-10-21100 tools/list on https://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.0
2026-10-16100 tools/list on https://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.0
2026-10-11100 tools/list on https://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.0
2026-09-2192 tools/list on https://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.0
2026-09-1491 tools/list on https://mcp.switchapp.ai/mcp, published in the official MCP registry as ai.switchapp/switch 1.0.0
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.