LeashIndex Get the report

Index / storage

io.github.JXUE0/opencut-controller

io-github-jxue0-opencut-controller declares 161 capabilities across 161 tools, with 2 critical issues.

100/100 exposureHigh exposure

Manifest recorded 2026-10-13 from tools/list answered by the npm package opencut-controller@1.30.0 (published to npm as opencut-controller, listed in the official MCP registry as io.github.JXUE0/opencut-controller 1.30.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 161 tools

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

18 tools are classified as irreversible and declare no limit.

high · no-expiry · All 161 tools

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

161 of 161 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 · 92 of 161 tools

92 tools can modify data and declare no limit.

low · uncapped-read · 51 of 161 tools

51 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
project_createwrite inferred
project_loadwrite assumed
project_savewrite assumed
project_deletedelete inferred
project_listread inferred
project_get_activeread inferred
project_renamewrite inferred
project_update_settingswrite inferred
project_get_timeline_view_stateread inferred
project_set_timeline_view_stateread inferred
project_get_export_stateread inferred
project_cancel_exportdelete inferred
project_clear_export_statewrite assumed
project_closedelete inferred
project_get_total_durationread inferred
project_duplicatewrite assumed
scene_createwrite inferred
scene_deletedelete inferred
scene_renamewrite inferred
scene_switchwrite assumed
scene_listread inferred
scene_get_currentread inferred
playback_playwrite assumed
playback_pausewrite assumed
playback_togglewrite assumed
playback_stopwrite assumed
playback_seekwrite assumed
playback_set_volumewrite inferred
playback_mutewrite assumed
playback_unmutewrite assumed
playback_toggle_mutewrite assumed
playback_get_stateread inferred
timeline_track_addwrite inferred
timeline_track_removedelete inferred
timeline_track_toggle_mutewrite assumed
timeline_track_toggle_visibilitywrite assumed
timeline_track_listread inferred
timeline_track_getread inferred
timeline_element_insertwrite inferred
timeline_element_deletedelete inferred
timeline_element_duplicatewrite assumed
timeline_element_movewrite inferred
timeline_element_splitwrite assumed
timeline_element_trimwrite assumed
timeline_element_update_durationwrite inferred
timeline_element_update_start_timewrite inferred
timeline_element_toggle_visibilityread inferred
timeline_element_toggle_mutewrite assumed
timeline_element_updatewrite inferred
timeline_element_getread inferred
timeline_element_previewread inferred
timeline_element_preview_commitread inferred
timeline_element_preview_discardread inferred
timeline_effect_addwrite inferred
timeline_effect_removedelete inferred
timeline_effect_update_paramswrite inferred
timeline_effect_togglewrite assumed
timeline_effect_reorderwrite assumed
keyframe_upsertwrite inferred
keyframe_removedelete inferred
keyframe_retimewrite inferred
keyframe_effect_param_upsertwrite inferred
keyframe_effect_param_removedelete inferred
keyframe_listread inferred
selection_selectwrite assumed
selection_deselect_allwrite assumed
selection_getread inferred
selection_is_selectedread inferred
clipboard_copywrite assumed
clipboard_pastewrite assumed
history_undowrite assumed
history_redowrite assumed
history_can_undoread inferred
history_can_redoread inferred
media_listread inferred
media_add_filewrite inferred
media_removedelete inferred
media_clear_alldelete inferred
media_getread inferred
media_add_to_timelinewrite inferred
media_is_loadingread inferred
text_createwrite inferred
text_update_contentwrite inferred
text_update_fontwrite inferred
text_update_stylewrite inferred
text_update_backgroundwrite inferred
text_update_transformwrite inferred
text_update_blend_modewrite inferred
text_listread inferred
text_deletedelete inferred
audio_set_element_volumewrite inferred
audio_sound_searchread inferred
audio_sound_savewrite assumed
audio_sound_remove_saveddelete inferred
audio_sound_list_savedread inferred
audio_sound_toggle_commercial_filterread inferred
audio_sound_add_to_timelinewrite inferred
audio_sound_clear_savedwrite assumed
sticker_searchread inferred
sticker_browse_categorywrite assumed
sticker_add_to_timelinewrite inferred
sticker_list_recentread inferred
sticker_clear_recentread inferred
sticker_set_categorywrite inferred
transcription_transcribewrite assumed
transcription_canceldelete inferred
transcription_generate_captionswrite assumed
transcription_add_captions_to_timelinewrite inferred
transcription_get_stateread inferred
export_projectwrite assumed
export_get_progressread inferred
export_canceldelete inferred
export_clear_statewrite assumed
export_set_qualitywrite inferred
export_set_fpswrite inferred
bookmark_togglewrite assumed
bookmark_updatewrite inferred
bookmark_movewrite inferred
bookmark_removedelete inferred
bookmark_listread inferred
bookmark_get_at_timeread inferred
bookmark_is_bookmarkedread inferred
bookmark_toggle_overlayread inferred
canvas_set_sizewrite inferred
canvas_set_fpswrite inferred
canvas_set_backgroundwrite inferred
canvas_set_layout_guidewrite inferred
canvas_toggle_layout_guidewrite assumed
canvas_clear_layout_guidedelete inferred
canvas_get_settingsread inferred
panel_set_sizewrite inferred
panel_resetwrite assumed
panel_get_sizesread inferred
panel_set_active_tabwrite inferred
panel_set_media_view_moderead inferred
panel_set_media_sortwrite inferred
panel_get_active_tabread inferred
keybinding_get_allread inferred
keybinding_updatewrite inferred
keybinding_removedelete inferred
keybinding_reset_defaultswrite assumed
keybinding_importwrite assumed
keybinding_exportwrite assumed
keybinding_enablewrite assumed
keybinding_disablewrite assumed
timeline_toggle_snappingwrite assumed
timeline_toggle_ripple_editingwrite inferred
timeline_set_zoomwrite inferred
timeline_set_scrollwrite inferred
storage_get_migration_stateread inferred
storage_list_projectsread inferred
storage_get_is_dirtyread inferred
auth_sign_upwrite inferred
auth_sign_inwrite assumed
auth_sign_outwrite assumed
auth_get_sessionread inferred
auth_get_profileread inferred
auth_check_logged_inread inferred
api_health_checkread inferred
api_sounds_searchread inferred
api_sounds_search_next_pageread 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.