Evidence-driven edit loops (Phase E): selects assembly, tighten, swap. Every loop is plan → confirm → execute. plan_* actions are dry-run by construction: they query the DB-canonical analysis store and return a per-decision rationale plus a stored plan_id. execute_* actions require a confirm_toke...
AI agents invoke edit_engine to trigger actions in DaVinci Resolve MCP. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call — builds kicked off, notifications sent, workflows started.
Although planning steps are dry-run, the tool includes execute actions that modify the video timeline (assembly edits, tightening, swapping clips). These are external operations on editing software with real side effects. The archiving mechanism mitigates but does not eliminate risk, making this Execute at high severity due to the potential blast radius of automated timeline edits on a production project.
From the tool's definition 'execute_* actions require a confirm_token, run under the version-on-mutate hook (the timeline is archived first)' and 'edit loops... selects assembly, tighten, swap' — the tool triggers direct mutations to the timeline in DaVinci Resolve
Risk signalsBulk/mass operation — affects multiple targets
Documented attack patterns abuse exactly the kind of access edit_engine gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and DaVinci Resolve MCP, and nothing reaches the server without passing your rules. This is the rule we recommend for edit_engine:
{
"version": "1",
"default": "deny",
"tools": {
"edit_engine": {
"limits": [
{
"counter": "edit_engine_rate",
"window": "minute",
"max": 10,
"scope": "grant"
}
]
}
}
} edit_engine stays usable, but rate-capped — a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Evidence-driven edit loops (Phase E): selects assembly, tighten, swap. Every loop is plan → confirm → execute. plan_* actions are dry-run by construction: they query the DB-canonical analysis store and return a per-decision rationale plus a stored plan_id. execute_* actions require a confirm_token, run under the version-on-mutate hook (the timeline is archived first), and return before/after metrics as readback. Actions: - plan_selects(min_select_potential?, max_duration_seconds?, timeline_name?, max_shots?, handle_seconds?, analysis_root?) — rank shots by deep-tier select potential (clip-level fallback), story-spine order. Additive. - execute_selects(plan_id, confirm_token?) — creates a NEW selects timeline from the plan's clip in/out ranges. Nothing existing is touched. - plan_tighten(timeline_name?, target_ratio?, min_pause_seconds?, handle_seconds?) — dead-air lifts from transcript-gap evidence for the current (or named) timeline. - execute_tighten(plan_id, confirm_token?) — duplicates the timeline and applies the lifts (ripple) to the DUPLICATE, never the original. - plan_swap(track_index?, timeline_start_frame | item_name, kind?, limit?) — alternates for one timeline item via the similarity index. - execute_swap(plan_id, alternate_index, confirm_token?) — replaces the item in place (lift + positioned append, same slot) on the current timeline (version-archived first). - list_plans(limit?) / get_plan(plan_id). It is categorised as a Execute tool in the DaVinci Resolve MCP MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
Register the DaVinci Resolve MCP server in PolicyLayer and add a rule for edit_engine: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches DaVinci Resolve MCP. Nothing to install.
edit_engine is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the edit_engine rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for edit_engine. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
edit_engine is provided by the DaVinci Resolve MCP server (samuelgursky/davinci-resolve-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Deterministic rules across all 369 DaVinci Resolve MCP tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.
Free to start. No card required.
369 DaVinci Resolve MCP tools catalogued and risk-classified — across an index of 42,500+ MCP servers.