@hybridlabor-api/aos 4.2.0 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1098) hide show
  1. package/.claude/hooks/memb-inject.mjs +121 -0
  2. package/.claude/settings.json +10 -0
  3. package/CLAUDE.md +37 -84
  4. package/CODEX.md +31 -12
  5. package/GEMINI.md +51 -58
  6. package/README.de.md +13 -14
  7. package/README.md +13 -14
  8. package/README.pt.md +13 -14
  9. package/THIRD_PARTY_NOTICES.md +54 -0
  10. package/docs/skills_table.md +0 -2
  11. package/installer.js +29 -16
  12. package/package.json +21 -2
  13. package/scripts/validate-skills.mjs +402 -0
  14. package/skills/basic/godmode-engineering/SKILL.md +1 -1
  15. package/skills/basic/godmode-shipping/SKILL.md +1 -1
  16. package/skills/github-repo/SKILL.md +1 -0
  17. package/skills/global_config/agent-tool-builder/SKILL.md +5 -4
  18. package/skills/global_config/ai-product/SKILL.md +3 -2
  19. package/skills/global_config/aos-project-init/SKILL.md +194 -0
  20. package/skills/global_config/aos-project-init/assets/AGENTS.template.md +56 -0
  21. package/skills/global_config/aos-project-init/scripts/aos-project-doctor.mjs +137 -0
  22. package/skills/global_config/aos-setup/SKILL.md +222 -0
  23. package/skills/global_config/aos-setup/scripts/aos-doctor.mjs +262 -0
  24. package/skills/global_config/ask-tim/SKILL.md +4 -2
  25. package/skills/global_config/{bdb-adobe-suite-mcp.md → bdb-adobe-suite-mcp/SKILL.md} +1 -0
  26. package/skills/global_config/{bdb-after-effects-mcp.md → bdb-after-effects-mcp/SKILL.md} +1 -0
  27. package/skills/global_config/{bdb-blender-mcp.md → bdb-blender-mcp/SKILL.md} +1 -0
  28. package/skills/global_config/{bdb-computer-use-mcp.md → bdb-computer-use-mcp/SKILL.md} +1 -0
  29. package/skills/global_config/{bdb-davinci-mcp.md → bdb-davinci-mcp/SKILL.md} +1 -0
  30. package/skills/global_config/bdb-ecosystem-health/SKILL.md +3 -3
  31. package/skills/global_config/{bdb-grandma3-mcp.md → bdb-grandma3-mcp/SKILL.md} +1 -0
  32. package/skills/global_config/{bdb-memb-mcp.md → bdb-memb-mcp/SKILL.md} +10 -0
  33. package/skills/global_config/{bdb-resolume-mcp.md → bdb-resolume-mcp/SKILL.md} +1 -0
  34. package/skills/global_config/{bdb-rhino-mcp.md → bdb-rhino-mcp/SKILL.md} +1 -0
  35. package/skills/global_config/{bdb-touchdesigner-mcp.md → bdb-touchdesigner-mcp/SKILL.md} +1 -0
  36. package/skills/global_config/{bdb-unreal-mcp.md → bdb-unreal-mcp/SKILL.md} +1 -0
  37. package/skills/global_config/{bdb-vectorworks-mcp.md → bdb-vectorworks-mcp/SKILL.md} +1 -0
  38. package/skills/global_config/bdbsaashost/SKILL.md +50 -50
  39. package/skills/global_config/browser-automation/SKILL.md +4 -4
  40. package/skills/global_config/crewai/SKILL.md +3 -2
  41. package/skills/global_config/debugger/SKILL.md +3 -6
  42. package/skills/global_config/git-advanced-workflows/SKILL.md +0 -1
  43. package/skills/global_config/github-actions-templates/SKILL.md +0 -2
  44. package/skills/global_config/neon-postgres/SKILL.md +3 -2
  45. package/skills/global_config/playwright-skill/SKILL.md +1 -1
  46. package/skills/global_config/posix-shell-pro/SKILL.md +0 -1
  47. package/skills/global_config/postgres-best-practices/SKILL.md +1 -1
  48. package/skills/global_config/prompt-engineering-patterns/SKILL.md +0 -1
  49. package/skills/global_config/rag-engineer/SKILL.md +4 -3
  50. package/skills/global_config/react-best-practices/SKILL.md +1 -1
  51. package/skills/global_config/remotion/SKILL.md +0 -1
  52. package/skills/global_config/seo/SKILL.md +6 -41
  53. package/skills/global_config/systematic-debugging/CREATION-LOG.md +1 -1
  54. package/skills/global_config/systematic-debugging/root-cause-tracing.md +1 -1
  55. package/skills/global_config/turborepo-caching/SKILL.md +0 -1
  56. package/skills/global_config/using-neon/SKILL.md +1 -47
  57. package/skills/global_config/vector-database-engineer/SKILL.md +0 -1
  58. package/skills/global_config/web-artifacts-builder/LICENSE.txt +1 -1
  59. package/skills/global_config/web-artifacts-builder/SKILL.md +1 -1
  60. package/skills/global_config/webapp-testing/LICENSE.txt +1 -1
  61. package/skills/global_config/webapp-testing/SKILL.md +1 -1
  62. package/assets/Give_AI_Agents_Control_of_Creative_Software.mp4 +0 -0
  63. package/mcps/RhinoMCP/connector/icon-dark.png +0 -3
  64. package/mcps/RhinoMCP/connector/icon-light.png +0 -3
  65. package/mcps/RhinoMCP/connector/screenshots/casa-rhino.png +0 -3
  66. package/mcps/RhinoMCP/docs/assets/css/custom.css +0 -640
  67. package/mcps/RhinoMCP/docs/content/_index.md +0 -88
  68. package/mcps/RhinoMCP/docs/content/docs/_index.md +0 -35
  69. package/mcps/RhinoMCP/docs/content/docs/advanced/_index.md +0 -37
  70. package/mcps/RhinoMCP/docs/content/docs/advanced/bulk-file-processing.md +0 -70
  71. package/mcps/RhinoMCP/docs/content/docs/advanced/headless-render-farm.md +0 -60
  72. package/mcps/RhinoMCP/docs/content/docs/advanced/make-this-parametric.md +0 -56
  73. package/mcps/RhinoMCP/docs/content/docs/advanced/sketch-to-model.md +0 -58
  74. package/mcps/RhinoMCP/docs/content/docs/advanced/upgrade-gh1-to-gh2.md +0 -51
  75. package/mcps/RhinoMCP/docs/content/docs/developers/_index.md +0 -39
  76. package/mcps/RhinoMCP/docs/content/docs/developers/dev-troubleshooting.md +0 -15
  77. package/mcps/RhinoMCP/docs/content/docs/developers/plugin-prototyping.md +0 -56
  78. package/mcps/RhinoMCP/docs/content/docs/developers/upgrade-gh1-to-gh2.md +0 -98
  79. package/mcps/RhinoMCP/docs/content/docs/developers/upgrade-to-netcore.md +0 -53
  80. package/mcps/RhinoMCP/docs/content/docs/developers/windows-to-cross-platform.md +0 -58
  81. package/mcps/RhinoMCP/docs/content/docs/developers/wpf-to-eto.md +0 -64
  82. package/mcps/RhinoMCP/docs/content/docs/getting-started/_index.md +0 -45
  83. package/mcps/RhinoMCP/docs/content/docs/getting-started/cc-plugin.md +0 -116
  84. package/mcps/RhinoMCP/docs/content/docs/getting-started/connector.md +0 -65
  85. package/mcps/RhinoMCP/docs/content/docs/getting-started/copilot.md +0 -61
  86. package/mcps/RhinoMCP/docs/content/docs/getting-started/lm-studio.md +0 -62
  87. package/mcps/RhinoMCP/docs/content/docs/troubleshooting.md +0 -66
  88. package/mcps/RhinoMCP/docs/content/docs/try-it-out/_index.md +0 -39
  89. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/_index.md +0 -25
  90. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/build-grasshopper.md +0 -26
  91. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/generate-variations.md +0 -25
  92. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/inspect-and-report.md +0 -26
  93. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/layers.md +0 -28
  94. package/mcps/RhinoMCP/docs/content/docs/try-it-out/examples/model-from-image.md +0 -27
  95. package/mcps/RhinoMCP/docs/content/docs/try-it-out/recipes.md +0 -178
  96. package/mcps/RhinoMCP/docs/data/icons.yaml +0 -3
  97. package/mcps/RhinoMCP/docs/go.mod +0 -5
  98. package/mcps/RhinoMCP/docs/go.sum +0 -4
  99. package/mcps/RhinoMCP/docs/hugo.yaml +0 -78
  100. package/mcps/RhinoMCP/docs/layouts/_partials/sidebar.html +0 -333
  101. package/mcps/RhinoMCP/docs/layouts/docs/list.html +0 -29
  102. package/mcps/RhinoMCP/docs/layouts/docs/single.html +0 -29
  103. package/mcps/RhinoMCP/docs/layouts/partials/custom/head-end.html +0 -3
  104. package/mcps/RhinoMCP/docs/layouts/shortcodes/download-asset.html +0 -21
  105. package/mcps/RhinoMCP/docs/layouts/shortcodes/github.html +0 -21
  106. package/mcps/RhinoMCP/docs/layouts/shortcodes/prompt.html +0 -23
  107. package/mcps/RhinoMCP/docs/layouts/shortcodes/yak.html +0 -21
  108. package/mcps/RhinoMCP/docs/static/developer/sel-arc.png +0 -3
  109. package/mcps/RhinoMCP/docs/static/developer/voxelizer-gh2-conversion.png +0 -3
  110. package/mcps/RhinoMCP/docs/static/examples/ai-kettle.png +0 -3
  111. package/mcps/RhinoMCP/docs/static/examples/casa_rhino_shapes.png +0 -3
  112. package/mcps/RhinoMCP/docs/static/examples/kettle.jpg +0 -0
  113. package/mcps/RhinoMCP/docs/static/examples/raygun-layers.png +0 -3
  114. package/mcps/RhinoMCP/docs/static/examples/raygun-thumbnail.png +0 -3
  115. package/mcps/RhinoMCP/docs/static/examples/twisty-tower-gh.png +0 -3
  116. package/mcps/RhinoMCP/docs/static/favicon.svg +0 -26
  117. package/mcps/RhinoMCP/docs/static/images/landing-dark.png +0 -3
  118. package/mcps/RhinoMCP/docs/static/images/landing.png +0 -3
  119. package/mcps/RhinoMCP/docs/static/images/logo-dark.svg +0 -26
  120. package/mcps/RhinoMCP/docs/static/images/logo.svg +0 -26
  121. package/mcps/RhinoMCP/docs/static/local-llm.png +0 -3
  122. package/mcps/RhinoMCP/rhino/plugin/icon.png +0 -3
  123. package/mcps/RhinoMCP/tests/Acp.Tests/Acp.Tests.csproj +0 -29
  124. package/mcps/RhinoMCP/tests/Acp.Tests/CoverageTests.cs +0 -52
  125. package/mcps/RhinoMCP/tests/Acp.Tests/Fakes.cs +0 -90
  126. package/mcps/RhinoMCP/tests/Acp.Tests/GlobalUsings.cs +0 -1
  127. package/mcps/RhinoMCP/tests/Acp.Tests/LoopbackTests.cs +0 -59
  128. package/mcps/RhinoMCP/tests/Acp.Tests/RobustnessTests.cs +0 -124
  129. package/mcps/RhinoMCP/tests/Acp.Tests/SerializationTests.cs +0 -94
  130. package/mcps/RhinoMCP/tests/Integration.Tests/AdoptedSlotTests.cs +0 -136
  131. package/mcps/RhinoMCP/tests/Integration.Tests/AutoSpawnNotificationTests.cs +0 -63
  132. package/mcps/RhinoMCP/tests/Integration.Tests/CloseSlotAgentTests.cs +0 -56
  133. package/mcps/RhinoMCP/tests/Integration.Tests/CloseSlotTests.cs +0 -37
  134. package/mcps/RhinoMCP/tests/Integration.Tests/DocLifecycleTests.cs +0 -42
  135. package/mcps/RhinoMCP/tests/Integration.Tests/GlobalUsings.cs +0 -3
  136. package/mcps/RhinoMCP/tests/Integration.Tests/GrasshopperStartTests.cs +0 -56
  137. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/ReturnResult.cs +0 -28
  138. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RhinoMcpFixture.cs +0 -90
  139. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RhinoMcpRouter.cs +0 -111
  140. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RhinoRouterPaths.cs +0 -83
  141. package/mcps/RhinoMCP/tests/Integration.Tests/Harness/RouterFixture.cs +0 -50
  142. package/mcps/RhinoMCP/tests/Integration.Tests/Integration.Tests.csproj +0 -31
  143. package/mcps/RhinoMCP/tests/Integration.Tests/ListSlotsShapeTests.cs +0 -55
  144. package/mcps/RhinoMCP/tests/Integration.Tests/ListSlotsTests.cs +0 -19
  145. package/mcps/RhinoMCP/tests/Integration.Tests/MacSharedProcessTests.cs +0 -87
  146. package/mcps/RhinoMCP/tests/Integration.Tests/MultiRouterTests.cs +0 -74
  147. package/mcps/RhinoMCP/tests/Integration.Tests/PluginToolTests.cs +0 -115
  148. package/mcps/RhinoMCP/tests/Integration.Tests/README.md +0 -35
  149. package/mcps/RhinoMCP/tests/Integration.Tests/RhinoCrashHandlingTests.cs +0 -107
  150. package/mcps/RhinoMCP/tests/Integration.Tests/SlotReapingTests.cs +0 -84
  151. package/mcps/RhinoMCP/tests/Integration.Tests/SpawnErrorTests.cs +0 -52
  152. package/mcps/RhinoMCP/tests/Integration.Tests/SpawnSlotTests.cs +0 -66
  153. package/mcps/RhinoMCP/tests/Integration.Tests/ToolDispatchBySlotTests.cs +0 -53
  154. package/mcps/RhinoMCP/tests/Integration.Tests/WindowsProcessIsolationTests.cs +0 -62
  155. package/mcps/RhinoMCP/tests/Router.Tests/CodegenTests.cs +0 -125
  156. package/mcps/RhinoMCP/tests/Router.Tests/ReturnResultTests.cs +0 -90
  157. package/mcps/RhinoMCP/tests/Router.Tests/RhinoCrashReportFinderTests.cs +0 -207
  158. package/mcps/RhinoMCP/tests/Router.Tests/RhinoLocatorOverrideTests.cs +0 -61
  159. package/mcps/RhinoMCP/tests/Router.Tests/RhinoLocatorTests.cs +0 -38
  160. package/mcps/RhinoMCP/tests/Router.Tests/RhinoManagerResolutionTests.cs +0 -151
  161. package/mcps/RhinoMCP/tests/Router.Tests/Router.Tests.csproj +0 -31
  162. package/mcps/RhinoMCP/tests/Router.Tests/RouterConfigTests.cs +0 -92
  163. package/mcps/RhinoMCP/tests/Router.Tests/SlotStoreLaunchingAbsenceTests.cs +0 -70
  164. package/mcps/RhinoMCP/tests/Router.Tests/SlotStorePortReservationTests.cs +0 -92
  165. package/mcps/RhinoMCP/tests/Router.Tests/SpawnDiagnosticsTests.cs +0 -100
  166. package/mcps/RhinoMCP/tests/Router.Tests/SpawnSlotToolDiagnoseTests.cs +0 -66
  167. package/mcps/RhinoMCP/tests/Server.Tests/McpConfigEditTests.cs +0 -223
  168. package/mcps/RhinoMCP/tests/Server.Tests/ParameterBinderTests.cs +0 -208
  169. package/mcps/RhinoMCP/tests/Server.Tests/ProtocolTests.cs +0 -200
  170. package/mcps/RhinoMCP/tests/Server.Tests/ResourceRegistryTests.cs +0 -218
  171. package/mcps/RhinoMCP/tests/Server.Tests/ResultUnwrapperTests.cs +0 -53
  172. package/mcps/RhinoMCP/tests/Server.Tests/SchemaBuilderTests.cs +0 -166
  173. package/mcps/RhinoMCP/tests/Server.Tests/Server.Tests.csproj +0 -40
  174. package/mcps/RhinoMCP/tests/StreamJson.Tests/AcpMessageMapperTests.cs +0 -82
  175. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentPromptsTests.cs +0 -56
  176. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentRegistryOverlayTests.cs +0 -88
  177. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentRegistryResolutionTests.cs +0 -152
  178. package/mcps/RhinoMCP/tests/StreamJson.Tests/AgentRunnerTurnTests.cs +0 -149
  179. package/mcps/RhinoMCP/tests/StreamJson.Tests/ClaudeStreamJsonParserTests.cs +0 -118
  180. package/mcps/RhinoMCP/tests/StreamJson.Tests/CodexStreamJsonParserTests.cs +0 -100
  181. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationStorePruneTests.cs +0 -94
  182. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationStoreRoundTripTests.cs +0 -70
  183. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationTests.cs +0 -153
  184. package/mcps/RhinoMCP/tests/StreamJson.Tests/ConversationUsageTests.cs +0 -56
  185. package/mcps/RhinoMCP/tests/StreamJson.Tests/GlobalUsings.cs +0 -12
  186. package/mcps/RhinoMCP/tests/StreamJson.Tests/Shims.cs +0 -93
  187. package/mcps/RhinoMCP/tests/StreamJson.Tests/StreamJson.Tests.csproj +0 -56
  188. package/mcps/RhinoMCP/tests/StreamJson.Tests/StreamJsonAgentLoopbackTests.cs +0 -75
  189. package/mcps/RhinoMCP/tests/StreamJson.Tests/StreamJsonParserEdgeCaseTests.cs +0 -128
  190. package/mcps/RhinoMCP/tests/StreamJson.Tests/TokenUsageTests.cs +0 -40
  191. package/mcps/RhinoMCP/tests/launcher/launcher.test.mjs +0 -461
  192. package/mcps/RhinoMCP/tests/launcher/package.json +0 -8
  193. package/mcps/ae-mcp/docs/demo.png +0 -0
  194. package/mcps/ae-mcp/docs/demo1.png +0 -0
  195. package/mcps/ae-mcp/docs/demo3.png +0 -0
  196. package/mcps/ae-mcp/docs/video.png +0 -0
  197. package/mcps/after-effects-mcp/assets/MCP Auto Bridge.png +0 -0
  198. package/mcps/bdb-remoteos-mcp/tests/__init__.py +0 -1
  199. package/mcps/bdb-remoteos-mcp/tests/mock_incus.py +0 -60
  200. package/mcps/bdb-remoteos-mcp/tests/test_mcp_server.py +0 -27
  201. package/mcps/bdb-remoteos-mcp/tests/test_security_redteam.py +0 -349
  202. package/mcps/bdb-remoteos-mcp/tests/test_webhook.py +0 -61
  203. package/mcps/blender-mcp/assets/addon-instructions.png +0 -0
  204. package/mcps/blender-mcp/assets/hammer-icon.png +0 -0
  205. package/mcps/blender-mcp-server/docs/architecture.md +0 -209
  206. package/mcps/blender-mcp-server/docs/images/demo_render.png +0 -0
  207. package/mcps/blender-mcp-server/docs/python-execute-design.md +0 -515
  208. package/mcps/blender-mcp-server/tests/__init__.py +0 -0
  209. package/mcps/blender-mcp-server/tests/test_addon.py +0 -953
  210. package/mcps/blender-mcp-server/tests/test_server.py +0 -364
  211. package/mcps/davinci-mcp-professional/docs/README.md +0 -67
  212. package/mcps/davinci-mcp-professional/docs/html/README_8md.html +0 -113
  213. package/mcps/davinci-mcp-professional/docs/html/____init_____8py.html +0 -126
  214. package/mcps/davinci-mcp-professional/docs/html/____init_____8py.js +0 -6
  215. package/mcps/davinci-mcp-professional/docs/html/____init_____8py_source.html +0 -125
  216. package/mcps/davinci-mcp-professional/docs/html/__version_8py.html +0 -130
  217. package/mcps/davinci-mcp-professional/docs/html/__version_8py.js +0 -9
  218. package/mcps/davinci-mcp-professional/docs/html/__version_8py_source.html +0 -130
  219. package/mcps/davinci-mcp-professional/docs/html/annotated.html +0 -123
  220. package/mcps/davinci-mcp-professional/docs/html/annotated_dup.js +0 -21
  221. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveClient-members.html +0 -131
  222. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveClient.html +0 -706
  223. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveClient.js +0 -26
  224. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError.html +0 -143
  225. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__coll__graph.map +0 -7
  226. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__coll__graph.md5 +0 -1
  227. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__coll__graph.png +0 -0
  228. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__inherit__graph.map +0 -7
  229. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__inherit__graph.md5 +0 -1
  230. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveConnectionError__inherit__graph.png +0 -0
  231. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError.html +0 -143
  232. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__coll__graph.map +0 -5
  233. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__coll__graph.md5 +0 -1
  234. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__coll__graph.png +0 -0
  235. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__inherit__graph.map +0 -9
  236. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__inherit__graph.md5 +0 -1
  237. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveError__inherit__graph.png +0 -0
  238. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError.html +0 -143
  239. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__coll__graph.map +0 -7
  240. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__coll__graph.md5 +0 -1
  241. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__coll__graph.png +0 -0
  242. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__inherit__graph.map +0 -7
  243. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__inherit__graph.md5 +0 -1
  244. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1resolve__client_1_1DaVinciResolveNotRunningError__inherit__graph.png +0 -0
  245. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1server_1_1DaVinciMCPServer-members.html +0 -115
  246. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1server_1_1DaVinciMCPServer.html +0 -325
  247. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1server_1_1DaVinciMCPServer.js +0 -10
  248. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool-members.html +0 -110
  249. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool.html +0 -188
  250. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool.js +0 -5
  251. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__coll__graph.map +0 -5
  252. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__coll__graph.md5 +0 -1
  253. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__coll__graph.png +0 -0
  254. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__inherit__graph.map +0 -5
  255. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__inherit__graph.md5 +0 -1
  256. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciMediaPool__inherit__graph.png +0 -0
  257. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject-members.html +0 -113
  258. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject.html +0 -248
  259. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject.js +0 -8
  260. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager-members.html +0 -113
  261. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager.html +0 -252
  262. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager.js +0 -8
  263. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__coll__graph.map +0 -5
  264. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__coll__graph.md5 +0 -1
  265. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__coll__graph.png +0 -0
  266. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__inherit__graph.map +0 -5
  267. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__inherit__graph.md5 +0 -1
  268. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProjectManager__inherit__graph.png +0 -0
  269. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__coll__graph.map +0 -5
  270. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__coll__graph.md5 +0 -1
  271. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__coll__graph.png +0 -0
  272. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__inherit__graph.map +0 -5
  273. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__inherit__graph.md5 +0 -1
  274. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciProject__inherit__graph.png +0 -0
  275. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp-members.html +0 -115
  276. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp.html +0 -288
  277. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp.js +0 -10
  278. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__coll__graph.map +0 -5
  279. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__coll__graph.md5 +0 -1
  280. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__coll__graph.png +0 -0
  281. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__inherit__graph.map +0 -5
  282. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__inherit__graph.md5 +0 -1
  283. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciResolveApp__inherit__graph.png +0 -0
  284. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline-members.html +0 -110
  285. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline.html +0 -188
  286. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline.js +0 -5
  287. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__coll__graph.map +0 -5
  288. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__coll__graph.md5 +0 -1
  289. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__coll__graph.png +0 -0
  290. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__inherit__graph.map +0 -5
  291. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__inherit__graph.md5 +0 -1
  292. package/mcps/davinci-mcp-professional/docs/html/classdavinci__mcp_1_1types_1_1DaVinciTimeline__inherit__graph.png +0 -0
  293. package/mcps/davinci-mcp-professional/docs/html/classes.html +0 -111
  294. package/mcps/davinci-mcp-professional/docs/html/cli_8py.html +0 -135
  295. package/mcps/davinci-mcp-professional/docs/html/cli_8py.js +0 -11
  296. package/mcps/davinci-mcp-professional/docs/html/cli_8py_source.html +0 -249
  297. package/mcps/davinci-mcp-professional/docs/html/clipboard.js +0 -61
  298. package/mcps/davinci-mcp-professional/docs/html/cookie.js +0 -58
  299. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe.html +0 -127
  300. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe.js +0 -4
  301. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe_dep.map +0 -4
  302. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe_dep.md5 +0 -1
  303. package/mcps/davinci-mcp-professional/docs/html/dir_1a1069c9a5427270b3ccd00c87d405fe_dep.png +0 -0
  304. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603.html +0 -128
  305. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603.js +0 -5
  306. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603_dep.map +0 -4
  307. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603_dep.md5 +0 -1
  308. package/mcps/davinci-mcp-professional/docs/html/dir_6a5346f4427b2e9426ba2ccfd9f0b603_dep.png +0 -0
  309. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef.html +0 -127
  310. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef.js +0 -4
  311. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef_dep.map +0 -4
  312. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef_dep.md5 +0 -1
  313. package/mcps/davinci-mcp-professional/docs/html/dir_77c8a4d399bde190a30252eceec792ef_dep.png +0 -0
  314. package/mcps/davinci-mcp-professional/docs/html/dir_f94b29b73815c35a8351f4403bcc4f74.html +0 -129
  315. package/mcps/davinci-mcp-professional/docs/html/dir_f94b29b73815c35a8351f4403bcc4f74.js +0 -12
  316. package/mcps/davinci-mcp-professional/docs/html/doxygen.css +0 -2540
  317. package/mcps/davinci-mcp-professional/docs/html/doxygen.svg +0 -28
  318. package/mcps/davinci-mcp-professional/docs/html/doxygen_crawl.html +0 -170
  319. package/mcps/davinci-mcp-professional/docs/html/dynsections.js +0 -198
  320. package/mcps/davinci-mcp-professional/docs/html/files.html +0 -123
  321. package/mcps/davinci-mcp-professional/docs/html/files_dup.js +0 -4
  322. package/mcps/davinci-mcp-professional/docs/html/functions.html +0 -190
  323. package/mcps/davinci-mcp-professional/docs/html/functions_func.html +0 -184
  324. package/mcps/davinci-mcp-professional/docs/html/functions_vars.html +0 -110
  325. package/mcps/davinci-mcp-professional/docs/html/graph_legend.html +0 -165
  326. package/mcps/davinci-mcp-professional/docs/html/graph_legend.md5 +0 -1
  327. package/mcps/davinci-mcp-professional/docs/html/graph_legend.png +0 -0
  328. package/mcps/davinci-mcp-professional/docs/html/hierarchy.html +0 -123
  329. package/mcps/davinci-mcp-professional/docs/html/hierarchy.js +0 -18
  330. package/mcps/davinci-mcp-professional/docs/html/index.html +0 -200
  331. package/mcps/davinci-mcp-professional/docs/html/index.js +0 -9
  332. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_0.map +0 -3
  333. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_0.md5 +0 -1
  334. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_0.png +0 -0
  335. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_1.map +0 -3
  336. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_1.md5 +0 -1
  337. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_1.png +0 -0
  338. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_2.map +0 -9
  339. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_2.md5 +0 -1
  340. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_2.png +0 -0
  341. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_3.map +0 -13
  342. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_3.md5 +0 -1
  343. package/mcps/davinci-mcp-professional/docs/html/inherit_graph_3.png +0 -0
  344. package/mcps/davinci-mcp-professional/docs/html/inherits.html +0 -145
  345. package/mcps/davinci-mcp-professional/docs/html/jquery.js +0 -204
  346. package/mcps/davinci-mcp-professional/docs/html/menu.js +0 -131
  347. package/mcps/davinci-mcp-professional/docs/html/menudata.js +0 -73
  348. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp.html +0 -209
  349. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp.js +0 -34
  350. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1__version.html +0 -260
  351. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1cli.html +0 -303
  352. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1resolve__client.html +0 -147
  353. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1resolve__client.js +0 -8
  354. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1resources.html +0 -140
  355. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1server.html +0 -144
  356. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1server.js +0 -5
  357. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1tools.html +0 -140
  358. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1types.html +0 -216
  359. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1types.js +0 -13
  360. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1utils.html +0 -155
  361. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1utils.js +0 -11
  362. package/mcps/davinci-mcp-professional/docs/html/namespacedavinci__mcp_1_1utils_1_1platform.html +0 -232
  363. package/mcps/davinci-mcp-professional/docs/html/namespacemembers.html +0 -173
  364. package/mcps/davinci-mcp-professional/docs/html/namespacemembers_func.html +0 -114
  365. package/mcps/davinci-mcp-professional/docs/html/namespacemembers_vars.html +0 -121
  366. package/mcps/davinci-mcp-professional/docs/html/namespaces.html +0 -119
  367. package/mcps/davinci-mcp-professional/docs/html/namespaces_dup.js +0 -4
  368. package/mcps/davinci-mcp-professional/docs/html/navtree.css +0 -327
  369. package/mcps/davinci-mcp-professional/docs/html/navtree.js +0 -901
  370. package/mcps/davinci-mcp-professional/docs/html/navtreedata.js +0 -68
  371. package/mcps/davinci-mcp-professional/docs/html/navtreeindex0.js +0 -212
  372. package/mcps/davinci-mcp-professional/docs/html/platform_8py.html +0 -130
  373. package/mcps/davinci-mcp-professional/docs/html/platform_8py.js +0 -8
  374. package/mcps/davinci-mcp-professional/docs/html/platform_8py_source.html +0 -245
  375. package/mcps/davinci-mcp-professional/docs/html/resolve__client_8py.html +0 -132
  376. package/mcps/davinci-mcp-professional/docs/html/resolve__client_8py.js +0 -8
  377. package/mcps/davinci-mcp-professional/docs/html/resolve__client_8py_source.html +0 -501
  378. package/mcps/davinci-mcp-professional/docs/html/resources_2____init_____8py.html +0 -125
  379. package/mcps/davinci-mcp-professional/docs/html/resources_2____init_____8py.js +0 -4
  380. package/mcps/davinci-mcp-professional/docs/html/resources_2____init_____8py_source.html +0 -169
  381. package/mcps/davinci-mcp-professional/docs/html/search/all_0.js +0 -22
  382. package/mcps/davinci-mcp-professional/docs/html/search/all_1.js +0 -4
  383. package/mcps/davinci-mcp-professional/docs/html/search/all_10.js +0 -4
  384. package/mcps/davinci-mcp-professional/docs/html/search/all_11.js +0 -4
  385. package/mcps/davinci-mcp-professional/docs/html/search/all_12.js +0 -4
  386. package/mcps/davinci-mcp-professional/docs/html/search/all_13.js +0 -4
  387. package/mcps/davinci-mcp-professional/docs/html/search/all_2.js +0 -4
  388. package/mcps/davinci-mcp-professional/docs/html/search/all_3.js +0 -15
  389. package/mcps/davinci-mcp-professional/docs/html/search/all_4.js +0 -26
  390. package/mcps/davinci-mcp-professional/docs/html/search/all_5.js +0 -4
  391. package/mcps/davinci-mcp-professional/docs/html/search/all_6.js +0 -6
  392. package/mcps/davinci-mcp-professional/docs/html/search/all_7.js +0 -25
  393. package/mcps/davinci-mcp-professional/docs/html/search/all_8.js +0 -7
  394. package/mcps/davinci-mcp-professional/docs/html/search/all_9.js +0 -9
  395. package/mcps/davinci-mcp-professional/docs/html/search/all_a.js +0 -6
  396. package/mcps/davinci-mcp-professional/docs/html/search/all_b.js +0 -6
  397. package/mcps/davinci-mcp-professional/docs/html/search/all_c.js +0 -9
  398. package/mcps/davinci-mcp-professional/docs/html/search/all_d.js +0 -10
  399. package/mcps/davinci-mcp-professional/docs/html/search/all_e.js +0 -11
  400. package/mcps/davinci-mcp-professional/docs/html/search/all_f.js +0 -5
  401. package/mcps/davinci-mcp-professional/docs/html/search/classes_0.js +0 -13
  402. package/mcps/davinci-mcp-professional/docs/html/search/files_0.js +0 -5
  403. package/mcps/davinci-mcp-professional/docs/html/search/files_1.js +0 -4
  404. package/mcps/davinci-mcp-professional/docs/html/search/files_2.js +0 -4
  405. package/mcps/davinci-mcp-professional/docs/html/search/files_3.js +0 -5
  406. package/mcps/davinci-mcp-professional/docs/html/search/files_4.js +0 -4
  407. package/mcps/davinci-mcp-professional/docs/html/search/files_5.js +0 -4
  408. package/mcps/davinci-mcp-professional/docs/html/search/functions_0.js +0 -9
  409. package/mcps/davinci-mcp-professional/docs/html/search/functions_1.js +0 -4
  410. package/mcps/davinci-mcp-professional/docs/html/search/functions_2.js +0 -10
  411. package/mcps/davinci-mcp-professional/docs/html/search/functions_3.js +0 -4
  412. package/mcps/davinci-mcp-professional/docs/html/search/functions_4.js +0 -25
  413. package/mcps/davinci-mcp-professional/docs/html/search/functions_5.js +0 -6
  414. package/mcps/davinci-mcp-professional/docs/html/search/functions_6.js +0 -7
  415. package/mcps/davinci-mcp-professional/docs/html/search/functions_7.js +0 -4
  416. package/mcps/davinci-mcp-professional/docs/html/search/functions_8.js +0 -5
  417. package/mcps/davinci-mcp-professional/docs/html/search/functions_9.js +0 -4
  418. package/mcps/davinci-mcp-professional/docs/html/search/functions_a.js +0 -4
  419. package/mcps/davinci-mcp-professional/docs/html/search/functions_b.js +0 -6
  420. package/mcps/davinci-mcp-professional/docs/html/search/namespaces_0.js +0 -13
  421. package/mcps/davinci-mcp-professional/docs/html/search/pages_0.js +0 -4
  422. package/mcps/davinci-mcp-professional/docs/html/search/pages_1.js +0 -6
  423. package/mcps/davinci-mcp-professional/docs/html/search/pages_2.js +0 -5
  424. package/mcps/davinci-mcp-professional/docs/html/search/pages_3.js +0 -4
  425. package/mcps/davinci-mcp-professional/docs/html/search/pages_4.js +0 -5
  426. package/mcps/davinci-mcp-professional/docs/html/search/pages_5.js +0 -4
  427. package/mcps/davinci-mcp-professional/docs/html/search/pages_6.js +0 -4
  428. package/mcps/davinci-mcp-professional/docs/html/search/pages_7.js +0 -4
  429. package/mcps/davinci-mcp-professional/docs/html/search/pages_8.js +0 -5
  430. package/mcps/davinci-mcp-professional/docs/html/search/pages_9.js +0 -5
  431. package/mcps/davinci-mcp-professional/docs/html/search/pages_a.js +0 -6
  432. package/mcps/davinci-mcp-professional/docs/html/search/pages_b.js +0 -4
  433. package/mcps/davinci-mcp-professional/docs/html/search/pages_c.js +0 -4
  434. package/mcps/davinci-mcp-professional/docs/html/search/pages_d.js +0 -4
  435. package/mcps/davinci-mcp-professional/docs/html/search/search.css +0 -377
  436. package/mcps/davinci-mcp-professional/docs/html/search/search.js +0 -708
  437. package/mcps/davinci-mcp-professional/docs/html/search/searchdata.js +0 -33
  438. package/mcps/davinci-mcp-professional/docs/html/search/variables_0.js +0 -14
  439. package/mcps/davinci-mcp-professional/docs/html/search/variables_1.js +0 -4
  440. package/mcps/davinci-mcp-professional/docs/html/search/variables_2.js +0 -4
  441. package/mcps/davinci-mcp-professional/docs/html/search/variables_3.js +0 -5
  442. package/mcps/davinci-mcp-professional/docs/html/search/variables_4.js +0 -4
  443. package/mcps/davinci-mcp-professional/docs/html/search/variables_5.js +0 -5
  444. package/mcps/davinci-mcp-professional/docs/html/search/variables_6.js +0 -5
  445. package/mcps/davinci-mcp-professional/docs/html/search/variables_7.js +0 -4
  446. package/mcps/davinci-mcp-professional/docs/html/search/variables_8.js +0 -4
  447. package/mcps/davinci-mcp-professional/docs/html/search/variables_9.js +0 -4
  448. package/mcps/davinci-mcp-professional/docs/html/server_8py.html +0 -129
  449. package/mcps/davinci-mcp-professional/docs/html/server_8py.js +0 -5
  450. package/mcps/davinci-mcp-professional/docs/html/server_8py_source.html +0 -318
  451. package/mcps/davinci-mcp-professional/docs/html/tabs.css +0 -1
  452. package/mcps/davinci-mcp-professional/docs/html/tools_2____init_____8py.html +0 -125
  453. package/mcps/davinci-mcp-professional/docs/html/tools_2____init_____8py.js +0 -4
  454. package/mcps/davinci-mcp-professional/docs/html/tools_2____init_____8py_source.html +0 -253
  455. package/mcps/davinci-mcp-professional/docs/html/types_8py.html +0 -137
  456. package/mcps/davinci-mcp-professional/docs/html/types_8py.js +0 -13
  457. package/mcps/davinci-mcp-professional/docs/html/types_8py_source.html +0 -309
  458. package/mcps/davinci-mcp-professional/docs/html/utils_2____init_____8py.html +0 -125
  459. package/mcps/davinci-mcp-professional/docs/html/utils_2____init_____8py.js +0 -4
  460. package/mcps/davinci-mcp-professional/docs/html/utils_2____init_____8py_source.html +0 -123
  461. package/mcps/davinci-mcp-professional/tests/README.md +0 -49
  462. package/mcps/davinci-mcp-professional/tests/__init__.py +0 -1
  463. package/mcps/davinci-mcp-professional/tests/conftest.py +0 -75
  464. package/mcps/davinci-mcp-professional/tests/test_security.py +0 -251
  465. package/mcps/davinci-resolve-mcp/docs/README.md +0 -56
  466. package/mcps/davinci-resolve-mcp/docs/SKILL.md +0 -1635
  467. package/mcps/davinci-resolve-mcp/docs/authoring/fuse-dctl-authoring.md +0 -242
  468. package/mcps/davinci-resolve-mcp/docs/authoring/script-plugin-authoring.md +0 -195
  469. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/README.md +0 -152
  470. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/category-patterns.md +0 -780
  471. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/controls.md +0 -259
  472. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/format.md +0 -568
  473. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/gotchas.md +0 -168
  474. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/references/thumbnails.md +0 -106
  475. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Blur.setting +0 -46
  476. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Color Tint.setting +0 -78
  477. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Cross Dissolve.setting +0 -57
  478. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Fade Title.setting +0 -111
  479. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Glow.setting +0 -55
  480. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Gradient.setting +0 -52
  481. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Iris.setting +0 -127
  482. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Lower Third.setting +0 -192
  483. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Noise.setting +0 -74
  484. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Solid Color.setting +0 -55
  485. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Title.setting +0 -105
  486. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Vignette.setting +0 -98
  487. package/mcps/davinci-resolve-mcp/docs/authoring/setting-files/templates/MCP Test Wipe.setting +0 -98
  488. package/mcps/davinci-resolve-mcp/docs/contributing.md +0 -82
  489. package/mcps/davinci-resolve-mcp/docs/guides/color-decision-guide.md +0 -427
  490. package/mcps/davinci-resolve-mcp/docs/guides/control-panel.md +0 -234
  491. package/mcps/davinci-resolve-mcp/docs/guides/editorial-decision-guide.md +0 -165
  492. package/mcps/davinci-resolve-mcp/docs/guides/media-analysis-guide.md +0 -763
  493. package/mcps/davinci-resolve-mcp/docs/guides/multicam-setup-guide.md +0 -138
  494. package/mcps/davinci-resolve-mcp/docs/images/control-panel/01-overview.png +0 -0
  495. package/mcps/davinci-resolve-mcp/docs/images/control-panel/02-review-bin-grid.png +0 -0
  496. package/mcps/davinci-resolve-mcp/docs/images/control-panel/03-clip-detail.png +0 -0
  497. package/mcps/davinci-resolve-mcp/docs/images/control-panel/04-transcript.png +0 -0
  498. package/mcps/davinci-resolve-mcp/docs/images/control-panel/05-shot-detail.png +0 -0
  499. package/mcps/davinci-resolve-mcp/docs/images/control-panel/06-inventory.png +0 -0
  500. package/mcps/davinci-resolve-mcp/docs/images/control-panel/07-diagnostics-resolve.png +0 -0
  501. package/mcps/davinci-resolve-mcp/docs/images/control-panel/08-preferences-analysis.png +0 -0
  502. package/mcps/davinci-resolve-mcp/docs/images/control-panel/09-ai-console.png +0 -0
  503. package/mcps/davinci-resolve-mcp/docs/images/control-panel/10-history.png +0 -0
  504. package/mcps/davinci-resolve-mcp/docs/images/control-panel/11-edit-plans.png +0 -0
  505. package/mcps/davinci-resolve-mcp/docs/install.md +0 -208
  506. package/mcps/davinci-resolve-mcp/docs/integrations/workflow-integrations.md +0 -120
  507. package/mcps/davinci-resolve-mcp/docs/kernels/README.md +0 -28
  508. package/mcps/davinci-resolve-mcp/docs/kernels/audio-fairlight-kernel.md +0 -86
  509. package/mcps/davinci-resolve-mcp/docs/kernels/color-grade-kernel.md +0 -103
  510. package/mcps/davinci-resolve-mcp/docs/kernels/extension-authoring-kernel.md +0 -101
  511. package/mcps/davinci-resolve-mcp/docs/kernels/fusion-composition-kernel.md +0 -121
  512. package/mcps/davinci-resolve-mcp/docs/kernels/media-pool-ingest-kernel.md +0 -147
  513. package/mcps/davinci-resolve-mcp/docs/kernels/project-lifecycle-kernel.md +0 -120
  514. package/mcps/davinci-resolve-mcp/docs/kernels/render-deliver-kernel.md +0 -92
  515. package/mcps/davinci-resolve-mcp/docs/kernels/review-annotation-kernel.md +0 -110
  516. package/mcps/davinci-resolve-mcp/docs/kernels/timeline-conform-interchange-kernel.md +0 -102
  517. package/mcps/davinci-resolve-mcp/docs/kernels/timeline-edit-kernel.md +0 -189
  518. package/mcps/davinci-resolve-mcp/docs/notes/codec-plugin-notes.md +0 -136
  519. package/mcps/davinci-resolve-mcp/docs/notes/dctl-notes.md +0 -234
  520. package/mcps/davinci-resolve-mcp/docs/notes/fusion-template-notes.md +0 -136
  521. package/mcps/davinci-resolve-mcp/docs/notes/lut-notes.md +0 -136
  522. package/mcps/davinci-resolve-mcp/docs/notes/openfx-notes.md +0 -120
  523. package/mcps/davinci-resolve-mcp/docs/process/release-process.md +0 -180
  524. package/mcps/davinci-resolve-mcp/docs/reference/api-coverage.md +0 -521
  525. package/mcps/davinci-resolve-mcp/docs/reference/api-limitations.md +0 -259
  526. package/mcps/davinci-resolve-mcp/docs/reference/readwrite-symmetry.md +0 -25
  527. package/mcps/davinci-resolve-mcp/docs/reference/resolve_scripting_api.txt +0 -1024
  528. package/mcps/davinci-resolve-mcp/tests/_error_envelope_helpers.py +0 -35
  529. package/mcps/davinci-resolve-mcp/tests/benchmark_server.py +0 -270
  530. package/mcps/davinci-resolve-mcp/tests/create_test_timeline.py +0 -177
  531. package/mcps/davinci-resolve-mcp/tests/live_api_gap_verification.py +0 -274
  532. package/mcps/davinci-resolve-mcp/tests/live_audio_fairlight_validation.py +0 -77
  533. package/mcps/davinci-resolve-mcp/tests/live_auto_sync_settings_check.py +0 -76
  534. package/mcps/davinci-resolve-mcp/tests/live_color_grade_validation.py +0 -89
  535. package/mcps/davinci-resolve-mcp/tests/live_delete_governance_check.py +0 -71
  536. package/mcps/davinci-resolve-mcp/tests/live_duplicate_clips_validation.py +0 -831
  537. package/mcps/davinci-resolve-mcp/tests/live_edit_engine_validation.py +0 -277
  538. package/mcps/davinci-resolve-mcp/tests/live_enum_settings_check.py +0 -89
  539. package/mcps/davinci-resolve-mcp/tests/live_extension_authoring_validation.py +0 -77
  540. package/mcps/davinci-resolve-mcp/tests/live_fuse_diagnose.py +0 -230
  541. package/mcps/davinci-resolve-mcp/tests/live_fuse_smoke.py +0 -250
  542. package/mcps/davinci-resolve-mcp/tests/live_fusion_composition_validation.py +0 -82
  543. package/mcps/davinci-resolve-mcp/tests/live_fusion_keyframe_validation.py +0 -116
  544. package/mcps/davinci-resolve-mcp/tests/live_fusion_mask_title_validation.py +0 -286
  545. package/mcps/davinci-resolve-mcp/tests/live_marker_validation.py +0 -439
  546. package/mcps/davinci-resolve-mcp/tests/live_media_pool_ingest_validation.py +0 -98
  547. package/mcps/davinci-resolve-mcp/tests/live_metadata_field_inventory_validation.py +0 -379
  548. package/mcps/davinci-resolve-mcp/tests/live_metadata_publish_validation.py +0 -192
  549. package/mcps/davinci-resolve-mcp/tests/live_multicam_setup_validation.py +0 -198
  550. package/mcps/davinci-resolve-mcp/tests/live_path_probe.py +0 -119
  551. package/mcps/davinci-resolve-mcp/tests/live_project_lifecycle_validation.py +0 -77
  552. package/mcps/davinci-resolve-mcp/tests/live_render_deliver_validation.py +0 -82
  553. package/mcps/davinci-resolve-mcp/tests/live_review_annotation_validation.py +0 -91
  554. package/mcps/davinci-resolve-mcp/tests/live_script_smoke.py +0 -141
  555. package/mcps/davinci-resolve-mcp/tests/live_sync_event_validation.py +0 -165
  556. package/mcps/davinci-resolve-mcp/tests/live_timeline_conform_validation.py +0 -77
  557. package/mcps/davinci-resolve-mcp/tests/live_v233_validation.py +0 -282
  558. package/mcps/davinci-resolve-mcp/tests/test-after-restart.bat +0 -83
  559. package/mcps/davinci-resolve-mcp/tests/test-after-restart.sh +0 -87
  560. package/mcps/davinci-resolve-mcp/tests/test_action_help.py +0 -47
  561. package/mcps/davinci-resolve-mcp/tests/test_action_list_drift.py +0 -163
  562. package/mcps/davinci-resolve-mcp/tests/test_ai_console_dispatch.py +0 -91
  563. package/mcps/davinci-resolve-mcp/tests/test_analysis_caps.py +0 -210
  564. package/mcps/davinci-resolve-mcp/tests/test_analysis_runs.py +0 -157
  565. package/mcps/davinci-resolve-mcp/tests/test_analysis_store.py +0 -366
  566. package/mcps/davinci-resolve-mcp/tests/test_api_limitations_doc.py +0 -56
  567. package/mcps/davinci-resolve-mcp/tests/test_api_truth.py +0 -64
  568. package/mcps/davinci-resolve-mcp/tests/test_api_truth_mitigations.py +0 -45
  569. package/mcps/davinci-resolve-mcp/tests/test_append_clip_infos_result_handling.py +0 -679
  570. package/mcps/davinci-resolve-mcp/tests/test_audio_fairlight_probe.py +0 -216
  571. package/mcps/davinci-resolve-mcp/tests/test_auto_run.py +0 -76
  572. package/mcps/davinci-resolve-mcp/tests/test_auto_sync_audio.py +0 -171
  573. package/mcps/davinci-resolve-mcp/tests/test_batch_cli.py +0 -253
  574. package/mcps/davinci-resolve-mcp/tests/test_brain_edits.py +0 -218
  575. package/mcps/davinci-resolve-mcp/tests/test_bridge_metrics.py +0 -52
  576. package/mcps/davinci-resolve-mcp/tests/test_bulk_match_to_hero.py +0 -219
  577. package/mcps/davinci-resolve-mcp/tests/test_caps_events_and_history.py +0 -147
  578. package/mcps/davinci-resolve-mcp/tests/test_caps_integration.py +0 -315
  579. package/mcps/davinci-resolve-mcp/tests/test_cdl_and_install_config.py +0 -372
  580. package/mcps/davinci-resolve-mcp/tests/test_clip_query.py +0 -57
  581. package/mcps/davinci-resolve-mcp/tests/test_cloud_settings.py +0 -62
  582. package/mcps/davinci-resolve-mcp/tests/test_color_grade_probe.py +0 -230
  583. package/mcps/davinci-resolve-mcp/tests/test_confirm_token.py +0 -85
  584. package/mcps/davinci-resolve-mcp/tests/test_confirm_token_preferences.py +0 -22
  585. package/mcps/davinci-resolve-mcp/tests/test_contracts.py +0 -81
  586. package/mcps/davinci-resolve-mcp/tests/test_create_subtitles_settings.py +0 -111
  587. package/mcps/davinci-resolve-mcp/tests/test_custom_timeline.py +0 -137
  588. package/mcps/davinci-resolve-mcp/tests/test_cut_executor.py +0 -87
  589. package/mcps/davinci-resolve-mcp/tests/test_cut_ir.py +0 -82
  590. package/mcps/davinci-resolve-mcp/tests/test_dashboard_transport.py +0 -47
  591. package/mcps/davinci-resolve-mcp/tests/test_deep_vision.py +0 -311
  592. package/mcps/davinci-resolve-mcp/tests/test_description_xml_shape.py +0 -71
  593. package/mcps/davinci-resolve-mcp/tests/test_destructive_decorator_coverage.py +0 -92
  594. package/mcps/davinci-resolve-mcp/tests/test_destructive_hook.py +0 -245
  595. package/mcps/davinci-resolve-mcp/tests/test_destructive_registry_drift.py +0 -108
  596. package/mcps/davinci-resolve-mcp/tests/test_edit_engine.py +0 -574
  597. package/mcps/davinci-resolve-mcp/tests/test_embeddings.py +0 -302
  598. package/mcps/davinci-resolve-mcp/tests/test_entities.py +0 -225
  599. package/mcps/davinci-resolve-mcp/tests/test_error_envelope.py +0 -179
  600. package/mcps/davinci-resolve-mcp/tests/test_exhaustive_wave_a.py +0 -101
  601. package/mcps/davinci-resolve-mcp/tests/test_extension_authoring_probe.py +0 -77
  602. package/mcps/davinci-resolve-mcp/tests/test_extract_frames.py +0 -42
  603. package/mcps/davinci-resolve-mcp/tests/test_extract_source_frame_ranges.py +0 -129
  604. package/mcps/davinci-resolve-mcp/tests/test_failure_tracker.py +0 -103
  605. package/mcps/davinci-resolve-mcp/tests/test_fuse_dctl_authoring.py +0 -596
  606. package/mcps/davinci-resolve-mcp/tests/test_fusion_comp_targeting.py +0 -269
  607. package/mcps/davinci-resolve-mcp/tests/test_fusion_composition_probe.py +0 -156
  608. package/mcps/davinci-resolve-mcp/tests/test_fusion_group_settings.py +0 -284
  609. package/mcps/davinci-resolve-mcp/tests/test_fusion_mask_title.py +0 -205
  610. package/mcps/davinci-resolve-mcp/tests/test_fusion_node_ops.py +0 -212
  611. package/mcps/davinci-resolve-mcp/tests/test_governance_identity.py +0 -155
  612. package/mcps/davinci-resolve-mcp/tests/test_grade_evidence_base.py +0 -132
  613. package/mcps/davinci-resolve-mcp/tests/test_import.py +0 -153
  614. package/mcps/davinci-resolve-mcp/tests/test_improvements.py +0 -334
  615. package/mcps/davinci-resolve-mcp/tests/test_inventory_exclude_bins.py +0 -139
  616. package/mcps/davinci-resolve-mcp/tests/test_live_api.py +0 -315
  617. package/mcps/davinci-resolve-mcp/tests/test_marker_params.py +0 -234
  618. package/mcps/davinci-resolve-mcp/tests/test_mcp_prompts.py +0 -77
  619. package/mcps/davinci-resolve-mcp/tests/test_mcp_resources.py +0 -117
  620. package/mcps/davinci-resolve-mcp/tests/test_mcp_transport.py +0 -74
  621. package/mcps/davinci-resolve-mcp/tests/test_media_analysis.py +0 -4637
  622. package/mcps/davinci-resolve-mcp/tests/test_media_pool_append_verification.py +0 -153
  623. package/mcps/davinci-resolve-mcp/tests/test_media_pool_changes.py +0 -105
  624. package/mcps/davinci-resolve-mcp/tests/test_media_pool_delete_governance.py +0 -69
  625. package/mcps/davinci-resolve-mcp/tests/test_media_pool_ingest_probe.py +0 -546
  626. package/mcps/davinci-resolve-mcp/tests/test_media_pool_walk.py +0 -79
  627. package/mcps/davinci-resolve-mcp/tests/test_multicam_setup.py +0 -178
  628. package/mcps/davinci-resolve-mcp/tests/test_object_inspection.py +0 -140
  629. package/mcps/davinci-resolve-mcp/tests/test_open_control_panel.py +0 -172
  630. package/mcps/davinci-resolve-mcp/tests/test_p1_param_validation.py +0 -57
  631. package/mcps/davinci-resolve-mcp/tests/test_p1_whitelist_and_delete.py +0 -81
  632. package/mcps/davinci-resolve-mcp/tests/test_page_lock.py +0 -52
  633. package/mcps/davinci-resolve-mcp/tests/test_panel_docs_drift.py +0 -77
  634. package/mcps/davinci-resolve-mcp/tests/test_partial_success_manifest.py +0 -113
  635. package/mcps/davinci-resolve-mcp/tests/test_persistence_safety.py +0 -147
  636. package/mcps/davinci-resolve-mcp/tests/test_prefer_handle.py +0 -89
  637. package/mcps/davinci-resolve-mcp/tests/test_project_cleanup.py +0 -111
  638. package/mcps/davinci-resolve-mcp/tests/test_project_lifecycle_probe.py +0 -256
  639. package/mcps/davinci-resolve-mcp/tests/test_project_lint.py +0 -79
  640. package/mcps/davinci-resolve-mcp/tests/test_project_spec.py +0 -246
  641. package/mcps/davinci-resolve-mcp/tests/test_propose_grade.py +0 -116
  642. package/mcps/davinci-resolve-mcp/tests/test_provenance.py +0 -88
  643. package/mcps/davinci-resolve-mcp/tests/test_readback.py +0 -77
  644. package/mcps/davinci-resolve-mcp/tests/test_readwrite_audit.py +0 -43
  645. package/mcps/davinci-resolve-mcp/tests/test_reel_name_writeback.py +0 -149
  646. package/mcps/davinci-resolve-mcp/tests/test_render_deliver_probe.py +0 -250
  647. package/mcps/davinci-resolve-mcp/tests/test_resolve20_api.py +0 -282
  648. package/mcps/davinci-resolve-mcp/tests/test_resolve21_actions.py +0 -386
  649. package/mcps/davinci-resolve-mcp/tests/test_resolve_ai_governance.py +0 -92
  650. package/mcps/davinci-resolve-mcp/tests/test_resolve_ai_ledger.py +0 -89
  651. package/mcps/davinci-resolve-mcp/tests/test_resolve_busy.py +0 -134
  652. package/mcps/davinci-resolve-mcp/tests/test_review_annotation_probe.py +0 -162
  653. package/mcps/davinci-resolve-mcp/tests/test_sampling_modes.py +0 -293
  654. package/mcps/davinci-resolve-mcp/tests/test_script_plugin.py +0 -750
  655. package/mcps/davinci-resolve-mcp/tests/test_shot_relationships.py +0 -254
  656. package/mcps/davinci-resolve-mcp/tests/test_spec_lint_wiring.py +0 -311
  657. package/mcps/davinci-resolve-mcp/tests/test_static_undefined_names.py +0 -45
  658. package/mcps/davinci-resolve-mcp/tests/test_structural_diff.py +0 -67
  659. package/mcps/davinci-resolve-mcp/tests/test_sync_detection.py +0 -213
  660. package/mcps/davinci-resolve-mcp/tests/test_thumbnail_image.py +0 -55
  661. package/mcps/davinci-resolve-mcp/tests/test_timeline_brain_db.py +0 -230
  662. package/mcps/davinci-resolve-mcp/tests/test_timeline_conform_probe.py +0 -229
  663. package/mcps/davinci-resolve-mcp/tests/test_timeline_editorial_helpers.py +0 -88
  664. package/mcps/davinci-resolve-mcp/tests/test_timeline_export_enum.py +0 -59
  665. package/mcps/davinci-resolve-mcp/tests/test_timeline_kernel_probe.py +0 -70
  666. package/mcps/davinci-resolve-mcp/tests/test_timeline_title_text_utils.py +0 -64
  667. package/mcps/davinci-resolve-mcp/tests/test_timeline_versioning.py +0 -419
  668. package/mcps/davinci-resolve-mcp/tests/test_tool_choice_hint.py +0 -42
  669. package/mcps/davinci-resolve-mcp/tests/test_tool_exposure.py +0 -159
  670. package/mcps/davinci-resolve-mcp/tests/test_tool_registration.py +0 -91
  671. package/mcps/davinci-resolve-mcp/tests/test_transcript_read.py +0 -74
  672. package/mcps/davinci-resolve-mcp/tests/test_update_check.py +0 -171
  673. package/mcps/davinci-resolve-mcp/tests/test_update_hardening.py +0 -171
  674. package/mcps/davinci-resolve-mcp/tests/test_update_history.py +0 -116
  675. package/mcps/davinci-resolve-mcp/tests/test_v232_helpers.py +0 -265
  676. package/mcps/davinci-resolve-mcp/tests/test_v233_helpers.py +0 -307
  677. package/mcps/davinci-resolve-mcp/tests/test_validation_guards.py +0 -108
  678. package/mcps/davinci-resolve-mcp/tests/test_verification_stats.py +0 -32
  679. package/mcps/davinci-resolve-mcp/tests/test_waveb_p2_p3.py +0 -65
  680. package/mcps/golem-rhino-mcp/Nexus-AI-Agents.png +0 -0
  681. package/mcps/golem-rhino-mcp/docs/ARCHITECTURE.md +0 -277
  682. package/mcps/golem-rhino-mcp/docs/PROTOCOL.md +0 -247
  683. package/mcps/golem-rhino-mcp/docs/TOOL_REFERENCE.md +0 -1571
  684. package/mcps/golem-rhino-mcp/docs/TROUBLESHOOTING.md +0 -396
  685. package/mcps/golem-rhino-mcp/mcp_server/Screenshot 2026-03-20 at 18.33.06.png +0 -0
  686. package/mcps/golem-rhino-mcp/mcp_server/Screenshot 2026-03-21 at 1.43.01.png +0 -0
  687. package/mcps/golem-rhino-mcp/nexus-pngs/CAIO.png +0 -0
  688. package/mcps/golem-rhino-mcp/nexus-pngs/CEO.png +0 -0
  689. package/mcps/golem-rhino-mcp/nexus-pngs/CFO.png +0 -0
  690. package/mcps/golem-rhino-mcp/nexus-pngs/CHRO.png +0 -0
  691. package/mcps/golem-rhino-mcp/nexus-pngs/CISO.png +0 -0
  692. package/mcps/golem-rhino-mcp/nexus-pngs/CLO.png +0 -0
  693. package/mcps/golem-rhino-mcp/nexus-pngs/CMO.png +0 -0
  694. package/mcps/golem-rhino-mcp/nexus-pngs/COO.png +0 -0
  695. package/mcps/golem-rhino-mcp/nexus-pngs/CPO.png +0 -0
  696. package/mcps/golem-rhino-mcp/nexus-pngs/CRO.png +0 -0
  697. package/mcps/golem-rhino-mcp/nexus-pngs/CTO.png +0 -0
  698. package/mcps/golem-rhino-mcp/nexus-pngs/king-hippo.png +0 -0
  699. package/mcps/golem-rhino-mcp/nexus-pngs/tier-0-csuite.png +0 -0
  700. package/mcps/golem-rhino-mcp/screenshots/city_monument.png +0 -0
  701. package/mcps/golem-rhino-mcp/screenshots/city_skyline.png +0 -0
  702. package/mcps/golem-rhino-mcp/screenshots/city_street.png +0 -0
  703. package/mcps/golem-rhino-mcp/screenshots/city_wide.png +0 -0
  704. package/mcps/golem-rhino-mcp/tests/__init__.py +0 -0
  705. package/mcps/golem-rhino-mcp/tests/conftest.py +0 -150
  706. package/mcps/golem-rhino-mcp/tests/test_connection.py +0 -543
  707. package/mcps/golem-rhino-mcp/tests/test_integration.py +0 -344
  708. package/mcps/golem-rhino-mcp/tests/test_models.py +0 -749
  709. package/mcps/golem-rhino-mcp/tests/test_protocol.py +0 -334
  710. package/mcps/golem-rhino-mcp/tests/test_tools_mock.py +0 -689
  711. package/mcps/tdmcp/.github/social-preview.png +0 -0
  712. package/mcps/tdmcp/docs/.vitepress/config.ts +0 -397
  713. package/mcps/tdmcp/docs/AI_PARTY_LLM_TRAINING_PLAN.md +0 -118
  714. package/mcps/tdmcp/docs/AI_PARTY_POC.md +0 -142
  715. package/mcps/tdmcp/docs/AI_PARTY_POC_PLAN.md +0 -112
  716. package/mcps/tdmcp/docs/CREATIVE_RAG.md +0 -346
  717. package/mcps/tdmcp/docs/DEPLOYMENT.md +0 -113
  718. package/mcps/tdmcp/docs/PROJECT_RAG.md +0 -477
  719. package/mcps/tdmcp/docs/ROADMAP.md +0 -1346
  720. package/mcps/tdmcp/docs/guide/ai-controlled-party.md +0 -215
  721. package/mcps/tdmcp/docs/guide/body-tracking.md +0 -169
  722. package/mcps/tdmcp/docs/guide/codex.md +0 -107
  723. package/mcps/tdmcp/docs/guide/components.md +0 -126
  724. package/mcps/tdmcp/docs/guide/dashboard-foh.md +0 -93
  725. package/mcps/tdmcp/docs/guide/faq.md +0 -62
  726. package/mcps/tdmcp/docs/guide/first-visual.md +0 -76
  727. package/mcps/tdmcp/docs/guide/generators.md +0 -230
  728. package/mcps/tdmcp/docs/guide/glossary.md +0 -123
  729. package/mcps/tdmcp/docs/guide/install.md +0 -200
  730. package/mcps/tdmcp/docs/guide/local-copilot.md +0 -154
  731. package/mcps/tdmcp/docs/guide/lops-integration.md +0 -133
  732. package/mcps/tdmcp/docs/guide/mcp-resources.md +0 -96
  733. package/mcps/tdmcp/docs/guide/mediapipe-adapters.md +0 -90
  734. package/mcps/tdmcp/docs/guide/physical-installations.md +0 -129
  735. package/mcps/tdmcp/docs/guide/prompt-cookbook.md +0 -2285
  736. package/mcps/tdmcp/docs/guide/recipes.md +0 -72
  737. package/mcps/tdmcp/docs/guide/session-profile.md +0 -90
  738. package/mcps/tdmcp/docs/guide/shader-park.md +0 -94
  739. package/mcps/tdmcp/docs/guide/show-timelines.md +0 -125
  740. package/mcps/tdmcp/docs/guide/troubleshooting.md +0 -121
  741. package/mcps/tdmcp/docs/guide/what-is-tdmcp.md +0 -62
  742. package/mcps/tdmcp/docs/index.md +0 -49
  743. package/mcps/tdmcp/docs/privacy.md +0 -85
  744. package/mcps/tdmcp/docs/pt/CREATIVE_RAG.md +0 -370
  745. package/mcps/tdmcp/docs/pt/PROJECT_RAG.md +0 -420
  746. package/mcps/tdmcp/docs/pt/guide/ai-controlled-party.md +0 -218
  747. package/mcps/tdmcp/docs/pt/guide/body-tracking.md +0 -175
  748. package/mcps/tdmcp/docs/pt/guide/codex.md +0 -113
  749. package/mcps/tdmcp/docs/pt/guide/components.md +0 -129
  750. package/mcps/tdmcp/docs/pt/guide/dashboard-foh.md +0 -95
  751. package/mcps/tdmcp/docs/pt/guide/faq.md +0 -62
  752. package/mcps/tdmcp/docs/pt/guide/first-visual.md +0 -81
  753. package/mcps/tdmcp/docs/pt/guide/generators.md +0 -243
  754. package/mcps/tdmcp/docs/pt/guide/glossary.md +0 -127
  755. package/mcps/tdmcp/docs/pt/guide/install.md +0 -196
  756. package/mcps/tdmcp/docs/pt/guide/local-copilot.md +0 -164
  757. package/mcps/tdmcp/docs/pt/guide/lops-integration.md +0 -143
  758. package/mcps/tdmcp/docs/pt/guide/mcp-resources.md +0 -96
  759. package/mcps/tdmcp/docs/pt/guide/mediapipe-adapters.md +0 -93
  760. package/mcps/tdmcp/docs/pt/guide/physical-installations.md +0 -135
  761. package/mcps/tdmcp/docs/pt/guide/prompt-cookbook.md +0 -2342
  762. package/mcps/tdmcp/docs/pt/guide/recipes.md +0 -59
  763. package/mcps/tdmcp/docs/pt/guide/session-profile.md +0 -92
  764. package/mcps/tdmcp/docs/pt/guide/shader-park.md +0 -95
  765. package/mcps/tdmcp/docs/pt/guide/show-timelines.md +0 -128
  766. package/mcps/tdmcp/docs/pt/guide/troubleshooting.md +0 -109
  767. package/mcps/tdmcp/docs/pt/guide/what-is-tdmcp.md +0 -61
  768. package/mcps/tdmcp/docs/pt/index.md +0 -49
  769. package/mcps/tdmcp/docs/pt/privacy.md +0 -91
  770. package/mcps/tdmcp/docs/pt/reference/architecture.md +0 -178
  771. package/mcps/tdmcp/docs/pt/reference/environment.md +0 -70
  772. package/mcps/tdmcp/docs/public/favicon.svg +0 -12
  773. package/mcps/tdmcp/docs/public/logo-400.png +0 -0
  774. package/mcps/tdmcp/docs/public/og-image.jpg +0 -0
  775. package/mcps/tdmcp/docs/public/robots.txt +0 -4
  776. package/mcps/tdmcp/docs/reference/API_STABILITY.md +0 -116
  777. package/mcps/tdmcp/docs/reference/architecture.md +0 -191
  778. package/mcps/tdmcp/docs/reference/bridge-api.md +0 -155
  779. package/mcps/tdmcp/docs/reference/cli.md +0 -288
  780. package/mcps/tdmcp/docs/reference/coverage-harness.md +0 -61
  781. package/mcps/tdmcp/docs/reference/environment.md +0 -116
  782. package/mcps/tdmcp/docs/reference/packages.md +0 -98
  783. package/mcps/tdmcp/docs/reference/tool-contract.md +0 -74
  784. package/mcps/tdmcp/docs/superpowers/plans/2026-05-29-shader-park-animus-integrations.md +0 -76
  785. package/mcps/tdmcp/docs/superpowers/plans/2026-06-02-doctor-fix-textport-auto-install.md +0 -131
  786. package/mcps/tdmcp/docs/superpowers/plans/2026-06-06-body-bubbles.md +0 -138
  787. package/mcps/tdmcp/docs/superpowers/plans/2026-06-08-deep-doppelganger-implementation.md +0 -201
  788. package/mcps/tdmcp/docs/superpowers/plans/2026-06-10-ai-party-ollama-integration.md +0 -55
  789. package/mcps/tdmcp/docs/superpowers/plans/2026-06-24-kinect-wall-harp-calibration-wizard.md +0 -53
  790. package/mcps/tdmcp/docs/superpowers/plans/2026-06-24-kinect-wall-harp-external-kinect.md +0 -286
  791. package/mcps/tdmcp/docs/superpowers/specs/2026-05-31-create-vector-lines-design.md +0 -308
  792. package/mcps/tdmcp/docs/superpowers/specs/2026-06-01-ai-controlled-party-plan.md +0 -461
  793. package/mcps/tdmcp/docs/superpowers/specs/2026-06-04-ai-party-ui24r-scene-arming-design.md +0 -296
  794. package/mcps/tdmcp/docs/superpowers/specs/2026-06-08-ai-controlled-party-producer-poc.md +0 -232
  795. package/mcps/tdmcp/docs/superpowers/specs/2026-06-08-deep-doppelganger-design.md +0 -136
  796. package/mcps/tdmcp/docs/superpowers/specs/2026-06-10-hermes-ai-party-poc.md +0 -383
  797. package/mcps/tdmcp/docs/superpowers/specs/2026-06-23-kinect-wall-harp-design.md +0 -340
  798. package/mcps/tdmcp/docs/superpowers/specs/2026-06-24-kinect-environment-diagnostic-design.md +0 -151
  799. package/mcps/tdmcp/docs/superpowers/specs/2026-06-24-kinect-wall-harp-external-kinect-design.md +0 -104
  800. package/mcps/tdmcp/training/showintent/data/curated/.gitkeep +0 -1
  801. package/mcps/tdmcp/training/showintent/data/curated/curated-approved.jsonl +0 -1
  802. package/mcps/tdmcp/training/showintent/data/curation_template.csv +0 -1
  803. package/mcps/tdmcp/training/showintent/data/generated/.gitkeep +0 -1
  804. package/mcps/tdmcp/training/showintent/data/generated/showintent-synthetic.jsonl +0 -2000
  805. package/mcps/tdmcp/training/showintent/data/raw/.gitkeep +0 -1
  806. package/mcps/tdmcp/training/showintent/data/splits/.gitkeep +0 -1
  807. package/mcps/tdmcp/training/showintent/data/splits/train-compact.jsonl +0 -1800
  808. package/mcps/tdmcp/training/showintent/data/splits/train.jsonl +0 -1800
  809. package/mcps/tdmcp/training/showintent/data/splits/validation-compact.jsonl +0 -200
  810. package/mcps/tdmcp/training/showintent/data/splits/validation.jsonl +0 -200
  811. package/mcps/touchdesigner-mcp/assets/import.png +0 -0
  812. package/mcps/touchdesigner-mcp/assets/nodes_list.png +0 -0
  813. package/mcps/touchdesigner-mcp/assets/particle_on_youtube.png +0 -0
  814. package/mcps/touchdesigner-mcp/assets/textport.png +0 -0
  815. package/mcps/touchdesigner-mcp/assets/tutorial.png +0 -0
  816. package/mcps/touchdesigner-mcp/assets/tutorial_docker.png +0 -0
  817. package/mcps/touchdesigner-mcp/docs/architecture.md +0 -1245
  818. package/mcps/touchdesigner-mcp/docs/development.ja.md +0 -197
  819. package/mcps/touchdesigner-mcp/docs/development.md +0 -212
  820. package/mcps/touchdesigner-mcp/docs/installation.ja.md +0 -370
  821. package/mcps/touchdesigner-mcp/docs/installation.md +0 -406
  822. package/mcps/unreal_mcp/Public/icon.png +0 -0
  823. package/mcps/unreal_mcp/docs/Engine-API-Reference.md +0 -2251
  824. package/mcps/unreal_mcp/docs/Roadmap.md +0 -2269
  825. package/mcps/unreal_mcp/docs/editor-plugin-extension.md +0 -373
  826. package/mcps/unreal_mcp/docs/handler-mapping.md +0 -1170
  827. package/mcps/unreal_mcp/docs/native-automation-progress.md +0 -431
  828. package/mcps/unreal_mcp/docs/testing-guide.md +0 -149
  829. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Domains/Test/McpAutomationBridge_TestHandlers.cpp +0 -74
  830. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Tests/McpCustomHandlerAliasTests.cpp +0 -191
  831. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Tests/McpEnvironmentSnapshotSchemaTests.cpp +0 -192
  832. package/mcps/unreal_mcp/plugins/McpAutomationBridge/Source/McpAutomationBridge/Private/Tests/McpPropertyReflectionImportTests.cpp +0 -269
  833. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAcpClientProtocolAutomation.cpp +0 -152
  834. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAcpProtocolTestHelpers.cpp +0 -136
  835. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAcpProtocolTestHelpers.h +0 -49
  836. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationTestDelegates.h +0 -12
  837. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationTests.cpp +0 -34
  838. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationWidgetHelpers.cpp +0 -116
  839. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentAutomationWidgetHelpers.h +0 -15
  840. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentFakeAcpScript.cpp +0 -76
  841. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelAutomation.h +0 -35
  842. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelAutomationFixture.cpp +0 -118
  843. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelHistoryChecks.cpp +0 -162
  844. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelLayoutChecks.cpp +0 -158
  845. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentPanelTranscriptChecks.cpp +0 -117
  846. package/mcps/unreal_mcp/plugins/UnrealAgent/Source/UnrealAgent/Private/Tests/UnrealAgentStudioKitAutomationChecks.cpp +0 -155
  847. package/mcps/unreal_mcp/tests/AGENTS.md +0 -73
  848. package/mcps/unreal_mcp/tests/expectation-utils.mjs +0 -29
  849. package/mcps/unreal_mcp/tests/heartbeat-progress.test.mjs +0 -143
  850. package/mcps/unreal_mcp/tests/integration/get_ai_info_characterization.mjs +0 -216
  851. package/mcps/unreal_mcp/tests/integration.mjs +0 -94
  852. package/mcps/unreal_mcp/tests/mcp-tools/core/control-actor.test.mjs +0 -114
  853. package/mcps/unreal_mcp/tests/mcp-tools/core/control-editor.test.mjs +0 -86
  854. package/mcps/unreal_mcp/tests/mcp-tools/core/inspect.test.mjs +0 -85
  855. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-asset.test.mjs +0 -302
  856. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-blueprint.test.mjs +0 -331
  857. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-level.test.mjs +0 -73
  858. package/mcps/unreal_mcp/tests/mcp-tools/core/manage-tools.test.mjs +0 -30
  859. package/mcps/unreal_mcp/tests/mcp-tools/core/system-control.test.mjs +0 -205
  860. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/animation-physics.test.mjs +0 -277
  861. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-ai.test.mjs +0 -299
  862. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-character.test.mjs +0 -85
  863. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-combat.test.mjs +0 -106
  864. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-effect.test.mjs +0 -108
  865. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-gas.test.mjs +0 -96
  866. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-interaction.test.mjs +0 -122
  867. package/mcps/unreal_mcp/tests/mcp-tools/gameplay/manage-inventory.test.mjs +0 -146
  868. package/mcps/unreal_mcp/tests/mcp-tools/utility/behavior-tree-get-tree.test.mjs +0 -233
  869. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-audio.test.mjs +0 -160
  870. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-behavior-tree.test.mjs +0 -223
  871. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-networking.test.mjs +0 -635
  872. package/mcps/unreal_mcp/tests/mcp-tools/utility/manage-sequence.test.mjs +0 -95
  873. package/mcps/unreal_mcp/tests/mcp-tools/world/build-environment.test.mjs +0 -282
  874. package/mcps/unreal_mcp/tests/mcp-tools/world/manage-geometry.test.mjs +0 -130
  875. package/mcps/unreal_mcp/tests/mcp-tools/world/manage-level-structure.test.mjs +0 -149
  876. package/mcps/unreal_mcp/tests/mcp-tools/world/manage-pcg.test.mjs +0 -471
  877. package/mcps/unreal_mcp/tests/mcp-tools/world/rendering-cases.cjs +0 -775
  878. package/mcps/unreal_mcp/tests/mcp-tools/world/rendering.test.mjs +0 -15
  879. package/mcps/unreal_mcp/tests/native-mcp-parity-audit.mjs +0 -260
  880. package/mcps/unreal_mcp/tests/native-mcp-source-parser.mjs +0 -229
  881. package/mcps/unreal_mcp/tests/native-mcp-typescript-parity-parser.mjs +0 -121
  882. package/mcps/unreal_mcp/tests/parameter-audit-cli.mjs +0 -23
  883. package/mcps/unreal_mcp/tests/parameter-audit-context.mjs +0 -14
  884. package/mcps/unreal_mcp/tests/parameter-audit-coverage.mjs +0 -164
  885. package/mcps/unreal_mcp/tests/parameter-audit-schema.mjs +0 -190
  886. package/mcps/unreal_mcp/tests/parameter-audit-suites.mjs +0 -218
  887. package/mcps/unreal_mcp/tests/parameter-combination-audit.mjs +0 -37
  888. package/mcps/unreal_mcp/tests/test-runner-response-utils.mjs +0 -132
  889. package/mcps/unreal_mcp/tests/test-runner.mjs +0 -1798
  890. package/mcps/unreal_mcp/tests/unit/automation/bridge_host_validation.test.ts +0 -165
  891. package/mcps/unreal_mcp/tests/unit/config.test.ts +0 -205
  892. package/mcps/unreal_mcp/tests/unit/native_mcp_parity_audit.test.ts +0 -281
  893. package/mcps/unreal_mcp/tests/unit/native_mcp_parity_comment_filtering.test.ts +0 -175
  894. package/mcps/unreal_mcp/tests/unit/parameter_audit_schema.test.ts +0 -273
  895. package/mcps/unreal_mcp/tests/unit/plugin/automation_event_stream_contracts.test.ts +0 -195
  896. package/mcps/unreal_mcp/tests/unit/plugin/environment_asset_name_contracts.test.ts +0 -115
  897. package/mcps/unreal_mcp/tests/unit/plugin/environment_build_adapter_contracts.test.ts +0 -377
  898. package/mcps/unreal_mcp/tests/unit/plugin/environment_snapshot_path_contracts.test.ts +0 -122
  899. package/mcps/unreal_mcp/tests/unit/plugin/handler_routing_contracts.test.ts +0 -120
  900. package/mcps/unreal_mcp/tests/unit/plugin/level_lighting_contracts.test.ts +0 -125
  901. package/mcps/unreal_mcp/tests/unit/plugin/plugin_manifest_contracts.test.ts +0 -154
  902. package/mcps/unreal_mcp/tests/unit/plugin/plugin_packaging_contracts.test.ts +0 -124
  903. package/mcps/unreal_mcp/tests/unit/plugin/runtime_behavior_contracts.test.ts +0 -372
  904. package/mcps/unreal_mcp/tests/unit/plugin/security_contracts.test.ts +0 -81
  905. package/mcps/unreal_mcp/tests/unit/plugin/source_structure.test.ts +0 -101
  906. package/mcps/unreal_mcp/tests/unit/plugin/source_structure_contracts.test.ts +0 -103
  907. package/mcps/unreal_mcp/tests/unit/plugin/websocket_origin_contracts.test.ts +0 -25
  908. package/mcps/unreal_mcp/tests/unit/server_shutdown_contracts.test.ts +0 -33
  909. package/mcps/unreal_mcp/tests/unit/source_structure.test.ts +0 -79
  910. package/mcps/unreal_mcp/tests/unit/test_runner.test.ts +0 -342
  911. package/mcps/unreal_mcp/tests/unit/test_runner_response_utils.test.ts +0 -105
  912. package/mcps/unreal_mcp/tests/unit/tools/asset_handlers_security.test.ts +0 -246
  913. package/mcps/unreal_mcp/tests/unit/tools/behavior_tree_get_tree.test.ts +0 -20
  914. package/mcps/unreal_mcp/tests/unit/tools/blueprint_handlers.test.ts +0 -122
  915. package/mcps/unreal_mcp/tests/unit/tools/editor.test.ts +0 -56
  916. package/mcps/unreal_mcp/tests/unit/tools/handler_structure.test.ts +0 -59
  917. package/mcps/unreal_mcp/tests/unit/tools/inspect_handlers.test.ts +0 -231
  918. package/mcps/unreal_mcp/tests/unit/tools/level.test.ts +0 -56
  919. package/mcps/unreal_mcp/tests/unit/tools/level_security.test.ts +0 -45
  920. package/mcps/unreal_mcp/tests/unit/tools/lighting_timeout_propagation.test.ts +0 -123
  921. package/mcps/windows-computer-use-mcp/cua-reports/app-1781542686.png +0 -0
  922. package/mcps/windows-computer-use-mcp/cua-reports/bridge-1781542694.png +0 -0
  923. package/mcps/windows-computer-use-mcp/cua-reports/bridge-ok-1781442393.png +0 -0
  924. package/mcps/windows-computer-use-mcp/cua-reports/bridge-ok-1781442915.png +0 -0
  925. package/mcps/windows-computer-use-mcp/cua-reports/bridge-snap-1781444105.png +0 -0
  926. package/mcps/windows-computer-use-mcp/cua-reports/bridge-snap-1781444214.png +0 -0
  927. package/mcps/windows-computer-use-mcp/cua-reports/bridge-snap-1781457035.png +0 -0
  928. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781440024.png +0 -0
  929. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781440234.png +0 -0
  930. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781442383.png +0 -0
  931. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781442906.png +0 -0
  932. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781444096.png +0 -0
  933. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781444209.png +0 -0
  934. package/mcps/windows-computer-use-mcp/cua-reports/cua-smoke-1781457029.png +0 -0
  935. package/mcps/windows-computer-use-mcp/cua-reports/nav/dashboard-1781542713.png +0 -0
  936. package/mcps/windows-computer-use-mcp/cua-reports/nav/help-1781542738.png +0 -0
  937. package/mcps/windows-computer-use-mcp/cua-reports/nav/logging-1781542722.png +0 -0
  938. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-dashboard-1781444225.png +0 -0
  939. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-dashboard-1781457051.png +0 -0
  940. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-help-1781444245.png +0 -0
  941. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-help-1781457075.png +0 -0
  942. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-logging-1781444232.png +0 -0
  943. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-logging-1781457059.png +0 -0
  944. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-settings-1781444239.png +0 -0
  945. package/mcps/windows-computer-use-mcp/cua-reports/nav/nav-settings-1781457067.png +0 -0
  946. package/mcps/windows-computer-use-mcp/cua-reports/nav/settings-1781542730.png +0 -0
  947. package/mcps/windows-computer-use-mcp/cua-reports/nav-dashboard-1781442925.png +0 -0
  948. package/mcps/windows-computer-use-mcp/cua-reports/nav-help-1781442941.png +0 -0
  949. package/mcps/windows-computer-use-mcp/cua-reports/nav-logging-1781442930.png +0 -0
  950. package/mcps/windows-computer-use-mcp/cua-reports/nav-settings-1781442936.png +0 -0
  951. package/mcps/windows-computer-use-mcp/docs/ARCHITECTURE.md +0 -46
  952. package/mcps/windows-computer-use-mcp/docs/ASSESSMENT_BY_CURSOR_2026-06-14_CUA_NSIS.md +0 -383
  953. package/mcps/windows-computer-use-mcp/docs/AUTOMATION_ASSERT_SPEC.md +0 -202
  954. package/mcps/windows-computer-use-mcp/docs/CUA_PARITY.md +0 -39
  955. package/mcps/windows-computer-use-mcp/docs/DEVELOPMENT.md +0 -51
  956. package/mcps/windows-computer-use-mcp/docs/MEMOPS_CUA.md +0 -147
  957. package/mcps/windows-computer-use-mcp/docs/PRD.md +0 -93
  958. package/mcps/windows-computer-use-mcp/docs/README.md +0 -34
  959. package/mcps/windows-computer-use-mcp/docs/ROADMAP.md +0 -142
  960. package/mcps/windows-computer-use-mcp/docs/SAFETY.md +0 -138
  961. package/mcps/windows-computer-use-mcp/docs/TESTING.md +0 -90
  962. package/mcps/windows-computer-use-mcp/docs/TOOLS.md +0 -80
  963. package/mcps/windows-computer-use-mcp/docs/TOOL_DOCSTRING_STANDARD.md +0 -538
  964. package/mcps/windows-computer-use-mcp/docs/_stale/AHK_VS_PYWINAUTO_COMPARISON.md +0 -353
  965. package/mcps/windows-computer-use-mcp/docs/_stale/ASSESSMENT.md +0 -54
  966. package/mcps/windows-computer-use-mcp/docs/_stale/ASSESSMENT_2026-06-08.md +0 -309
  967. package/mcps/windows-computer-use-mcp/docs/_stale/COMPLETE_DOCUMENTATION_STRUCTURE.md +0 -5
  968. package/mcps/windows-computer-use-mcp/docs/_stale/CUA_ASSISTANT_TODO.md +0 -84
  969. package/mcps/windows-computer-use-mcp/docs/_stale/CUA_PARITY_ROADMAP.md +0 -81
  970. package/mcps/windows-computer-use-mcp/docs/_stale/CUA_ROADMAP.md +0 -306
  971. package/mcps/windows-computer-use-mcp/docs/_stale/DESKTOP_APP.md +0 -125
  972. package/mcps/windows-computer-use-mcp/docs/_stale/DOCUMENTATION_INDEX.md +0 -59
  973. package/mcps/windows-computer-use-mcp/docs/_stale/GLAMA_AI_CRITICISM_ANALYSIS.md +0 -259
  974. package/mcps/windows-computer-use-mcp/docs/_stale/GLAMA_AI_PLATFORM.md +0 -175
  975. package/mcps/windows-computer-use-mcp/docs/_stale/GLAMA_AI_RESCAN_GUIDE.md +0 -216
  976. package/mcps/windows-computer-use-mcp/docs/_stale/GOLD_STATUS_ACHIEVEMENT.md +0 -197
  977. package/mcps/windows-computer-use-mcp/docs/_stale/LLM_REPO_CONTEXT.md +0 -7
  978. package/mcps/windows-computer-use-mcp/docs/_stale/MCP_PRODUCTION_CHECKLIST.md +0 -105
  979. package/mcps/windows-computer-use-mcp/docs/_stale/OFFICE_BACKGROUND_MATRIX.md +0 -19
  980. package/mcps/windows-computer-use-mcp/docs/_stale/OPERATOR_PROTOCOL.md +0 -37
  981. package/mcps/windows-computer-use-mcp/docs/_stale/ORGANIZATION_SUMMARY.md +0 -305
  982. package/mcps/windows-computer-use-mcp/docs/_stale/RENAME-TO-AUTOMATION-MCP.md +0 -191
  983. package/mcps/windows-computer-use-mcp/docs/_stale/STATUS_REPORT.md +0 -288
  984. package/mcps/windows-computer-use-mcp/docs/_stale/TARGETS_PAGE_SKETCH.md +0 -977
  985. package/mcps/windows-computer-use-mcp/docs/_stale/TOOL_DOCSTRING_MIGRATION.md +0 -365
  986. package/mcps/windows-computer-use-mcp/docs/_stale/USAGE_SCENARIOS.md +0 -697
  987. package/mcps/windows-computer-use-mcp/docs/_stale/desktop-state-tool.md +0 -464
  988. package/mcps/windows-computer-use-mcp/docs/_stale/development/README.md +0 -18
  989. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/AI_DEVELOPMENT_RULES.md +0 -928
  990. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/AI_DEVELOPMENT_TOOLS_COMPARISON.md +0 -364
  991. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/BULLETPROOF_MCP_GUIDE.md +0 -793
  992. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/DEBUGGING_LESSONS_LEARNED.md +0 -635
  993. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/DEVELOPMENT_PAIN_POINTS.md +0 -699
  994. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/FILE_VALIDATION_COMPLETE.md +0 -410
  995. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/FILE_VALIDATION_GUIDE.md +0 -575
  996. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/LINK_PARSER_FIX.md +0 -769
  997. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/MCP_SYNC_DEBUGGING_GUIDE.md +0 -512
  998. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/PYTHON_DEPENDENCY_HELL_FIX.md +0 -568
  999. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/PYTHON_SNIPPETS_USAGE_GUIDE.md +0 -717
  1000. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/README.md +0 -25
  1001. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/SYNC_HEALTH_IMPROVEMENTS_SUMMARY.md +0 -496
  1002. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/SYNC_HEALTH_INTEGRATION.md +0 -381
  1003. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/SYSTEMATIC_PROJECT_UPDATES.md +0 -532
  1004. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/mcp-prompt-templates-vs-docstrings.md +0 -657
  1005. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/mcp-tool-docstring-best-practices.md +0 -439
  1006. package/mcps/windows-computer-use-mcp/docs/_stale/development/archive/mcp-tool-documentation-standards.md +0 -1153
  1007. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/CI_CD_GLAMA_OPTIMIZATION_GUIDE.md +0 -850
  1008. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_CRITICISM_ANALYSIS.md +0 -259
  1009. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_OPTIMIZATION_SUMMARY.md +0 -204
  1010. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_PLATFORM.md +0 -175
  1011. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_AI_RESCAN_GUIDE.md +0 -216
  1012. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_GITHUB_APP_SETUP.md +0 -199
  1013. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_INTEGRATION.md +0 -181
  1014. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GLAMA_RESCAN_EMAIL.txt +0 -43
  1015. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GOLD_STATUS_ACHIEVEMENT.md +0 -197
  1016. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/GOLD_STATUS_UPDATE_2025_10_08.md +0 -378
  1017. package/mcps/windows-computer-use-mcp/docs/_stale/glama-platform/README.md +0 -632
  1018. package/mcps/windows-computer-use-mcp/docs/_stale/legacy/requirements-fastmcp.txt +0 -8
  1019. package/mcps/windows-computer-use-mcp/docs/_stale/legacy/requirements_minimal.txt +0 -4
  1020. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/CLAUDE_DESKTOP_DEBUGGING.md +0 -561
  1021. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/CONTAINERIZATION_GUIDELINES.md +0 -707
  1022. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/MCP_PRODUCTION_CHECKLIST.md +0 -101
  1023. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/MONITORING_STACK_DEPLOYMENT.md +0 -532
  1024. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/README.md +0 -266
  1025. package/mcps/windows-computer-use-mcp/docs/_stale/mcp-technical/TROUBLESHOOTING_FASTMCP_2.12.md +0 -670
  1026. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/MCPB_BUILDING_GUIDE.md +0 -1921
  1027. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/MCPB_IMPLEMENTATION_SUMMARY.md +0 -387
  1028. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/PYPI_PUBLISHING_GUIDE.md +0 -789
  1029. package/mcps/windows-computer-use-mcp/docs/_stale/mcpb-packaging/README.md +0 -404
  1030. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/COMMUNITY_AND_SUPPORT.md +0 -976
  1031. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/LANGUAGE_SERVER_PROTOCOL_EXPLAINED.md +0 -416
  1032. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/MCP_TOOL_CORRUPTION_ISSUE.md +0 -279
  1033. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_ALTERNATIVES.md +0 -308
  1034. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_COLOR_FIX_2025_10_08.md +0 -187
  1035. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_COMPLETE_GUIDE.md +0 -1259
  1036. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NOTEPADPP_NUCLEAR_REINSTALL_2025_10_08.md +0 -196
  1037. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/NPP_WHITE_ON_WHITE_BATTLE_PLAN.md +0 -336
  1038. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/PLUGIN_ECOSYSTEM_COMPREHENSIVE.md +0 -887
  1039. package/mcps/windows-computer-use-mcp/docs/_stale/notepadpp/README.md +0 -472
  1040. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/BACKUP_AND_RECOVERY_GUIDE.md +0 -455
  1041. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/BRANCH_PROTECTION_SETTINGS.md +0 -236
  1042. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/BRANCH_STRATEGY_AND_AI_WORKFLOW.md +0 -616
  1043. package/mcps/windows-computer-use-mcp/docs/_stale/repository-protection/README.md +0 -333
  1044. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_COPY_TO_OTHER_REPOS.md +0 -159
  1045. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_GUIDE.md +0 -632
  1046. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_INSTALL_AND_TEST.md +0 -569
  1047. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_NEXT_STEPS.md +0 -351
  1048. package/mcps/windows-computer-use-mcp/docs/_stale/serena/SERENA_QUICK_INSTALL.md +0 -195
  1049. package/mcps/windows-computer-use-mcp/docs/_stale/state-tool-implementation.md +0 -498
  1050. package/mcps/windows-computer-use-mcp/docs/composing-with-playwright.md +0 -55
  1051. package/mcps/windows-computer-use-mcp/docs/cua-nsis-certification.md +0 -101
  1052. package/mcps/windows-computer-use-mcp/docs/ocr.md +0 -107
  1053. package/mcps/windows-computer-use-mcp/docs/py-stack.md +0 -47
  1054. package/mcps/windows-computer-use-mcp/native/icons/icon.png +0 -0
  1055. package/mcps/windows-computer-use-mcp/screenshot_demo.png +0 -0
  1056. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/export_complete_toast.png +0 -0
  1057. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/export_dialog_title.png +0 -0
  1058. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/file_dialog_path_field.png +0 -0
  1059. package/mcps/windows-computer-use-mcp/src/windows_computer_use_mcp/templates/vroidstudio/default/sample_tile_female.png +0 -0
  1060. package/mcps/windows-computer-use-mcp/tests/README.md +0 -155
  1061. package/mcps/windows-computer-use-mcp/tests/__init__.py +0 -1
  1062. package/mcps/windows-computer-use-mcp/tests/conftest.py +0 -281
  1063. package/mcps/windows-computer-use-mcp/tests/conftest_env.py +0 -116
  1064. package/mcps/windows-computer-use-mcp/tests/e2e/conftest.py +0 -96
  1065. package/mcps/windows-computer-use-mcp/tests/e2e/test_libreoffice_cua_loop.py +0 -72
  1066. package/mcps/windows-computer-use-mcp/tests/test_app_integration.py +0 -83
  1067. package/mcps/windows-computer-use-mcp/tests/test_app_profiles.py +0 -28
  1068. package/mcps/windows-computer-use-mcp/tests/test_automation_assert.py +0 -185
  1069. package/mcps/windows-computer-use-mcp/tests/test_automation_dialog.py +0 -43
  1070. package/mcps/windows-computer-use-mcp/tests/test_automation_elements.py +0 -138
  1071. package/mcps/windows-computer-use-mcp/tests/test_automation_keyboard.py +0 -57
  1072. package/mcps/windows-computer-use-mcp/tests/test_automation_mouse.py +0 -57
  1073. package/mcps/windows-computer-use-mcp/tests/test_automation_shortcut.py +0 -41
  1074. package/mcps/windows-computer-use-mcp/tests/test_automation_task.py +0 -115
  1075. package/mcps/windows-computer-use-mcp/tests/test_automation_windows.py +0 -105
  1076. package/mcps/windows-computer-use-mcp/tests/test_cameras_api.py +0 -43
  1077. package/mcps/windows-computer-use-mcp/tests/test_cua_parity.py +0 -51
  1078. package/mcps/windows-computer-use-mcp/tests/test_dependency_failures.py +0 -39
  1079. package/mcps/windows-computer-use-mcp/tests/test_desktop_state.py +0 -99
  1080. package/mcps/windows-computer-use-mcp/tests/test_face_recognition.py +0 -238
  1081. package/mcps/windows-computer-use-mcp/tests/test_face_recognition_api.py +0 -161
  1082. package/mcps/windows-computer-use-mcp/tests/test_images/README.md +0 -28
  1083. package/mcps/windows-computer-use-mcp/tests/test_mission.py +0 -42
  1084. package/mcps/windows-computer-use-mcp/tests/test_portmanteau_windows_mock.py +0 -173
  1085. package/mcps/windows-computer-use-mcp/tests/test_portmanteau_windows_real.py +0 -139
  1086. package/mcps/windows-computer-use-mcp/tests/test_retry.py +0 -26
  1087. package/mcps/windows-computer-use-mcp/tests/test_safety_api.py +0 -24
  1088. package/mcps/windows-computer-use-mcp/tests/test_template_library.py +0 -53
  1089. package/mcps/windows-computer-use-mcp/tests/test_utils.py +0 -185
  1090. package/mcps/windows-computer-use-mcp/web_sota/src-tauri/icons/icon.png +0 -0
  1091. package/skills/global_config/google-sheets-automation/SKILL.md +0 -150
  1092. package/skills/global_config/senior-fullstack/SKILL.md +0 -221
  1093. package/skills/global_config/senior-fullstack/references/architecture_patterns.md +0 -103
  1094. package/skills/global_config/senior-fullstack/references/development_workflows.md +0 -103
  1095. package/skills/global_config/senior-fullstack/references/tech_stack_guide.md +0 -103
  1096. package/skills/global_config/senior-fullstack/scripts/code_quality_analyzer.py +0 -114
  1097. package/skills/global_config/senior-fullstack/scripts/fullstack_scaffolder.py +0 -114
  1098. package/skills/global_config/senior-fullstack/scripts/project_scaffolder.py +0 -114
@@ -1,1635 +0,0 @@
1
- # DaVinci Resolve MCP Server — AI Skill Reference
2
-
3
- This document gives AI assistants the context needed to use the DaVinci Resolve
4
- MCP server effectively. It covers the tool landscape, page prerequisites,
5
- common workflow patterns, error recovery, and known gotchas.
6
-
7
- ---
8
-
9
- ## What This Server Does
10
-
11
- The DaVinci Resolve MCP server bridges AI assistants to DaVinci Resolve Studio
12
- via its official Scripting API. You can control every aspect of a post-production
13
- session — projects, timelines, clips, color grading, Fusion compositions, audio,
14
- render queues, and more — through natural language.
15
-
16
- DaVinci Resolve must be running with **Preferences > General > "External scripting
17
- using"** set to **Local**. The server auto-launches Resolve if it is not running,
18
- but that first connection can take up to 60 seconds.
19
-
20
- Workflow Integration plugins/scripts are a separate Resolve-hosted UI mechanism.
21
- They are not required for this MCP server, but `docs/integrations/workflow-integrations.md`
22
- summarizes when they are useful for optional in-Resolve panels, UIManager
23
- scripts, and render callback companions.
24
-
25
- OpenFX plugins are native C++ image-effect plugins, not an MCP control surface.
26
- Use `docs/notes/openfx-notes.md` when diagnosing `insert_ofx_generator` failures or
27
- discussing optional OFX plugin development.
28
-
29
- LUT files are directly relevant to Color-page graph actions. Use
30
- `docs/notes/lut-notes.md` when diagnosing `graph.set_lut` failures, validating `.cube`
31
- files, or explaining `project_settings.refresh_luts`.
32
-
33
- Fusion templates are relevant to Edit/Cut page insertion actions. Use
34
- `docs/notes/fusion-template-notes.md` when diagnosing `insert_fusion_generator` or
35
- `insert_fusion_title` failures, template paths, `.setting` files, or `.drfx`
36
- bundles.
37
-
38
- DCTL files are programmable color transforms/effects adjacent to LUT and OpenFX
39
- workflows. Use `docs/notes/dctl-notes.md` when diagnosing `.dctl`/`.dctle` discovery,
40
- ResolveFX DCTL plugin behavior, ACES DCTL IDT/ODT setup, or DCTL-as-LUT usage.
41
-
42
- Codec plugins are native IO encode plugins that extend Deliver-page render
43
- formats/codecs. Use `docs/notes/codec-plugin-notes.md` when diagnosing missing custom
44
- render formats/codecs, `.dvcp.bundle` packaging, or IOPlugins install paths.
45
-
46
- The `fuse_plugin`, `dctl`, and `script_plugin` compound tools (v2.5.0+) write
47
- Fuse plugin source, DCTL files, and Lua/Python scripts into Resolve's install
48
- directories. They are *authoring* tools — every other tool in this server wraps
49
- Resolve's scripting API, while these three emit and install plugin/script
50
- source. Status: lifecycle-verified in DaVinci Resolve Studio 20.3.2.9 for
51
- MCP-marked install/read/list/remove, regular DCTL `refresh_luts`, ACES/Fuse
52
- restart-required classification, Python installed-script execution, and
53
- Python/Lua `run_inline`. Use `docs/kernels/extension-authoring-kernel.md` for the
54
- kernel boundary map, `docs/authoring/fuse-dctl-authoring.md` for the Fuse + DCTL coverage
55
- matrix, and `docs/authoring/script-plugin-authoring.md` for the script DSL spec and the
56
- conversational-execution model. For hand-authoring `.setting` template files
57
- (Edit effects/transitions/titles/generators and Fusion macros) — the format,
58
- control catalog, thumbnail conventions, install paths, and gotchas, plus copyable
59
- starter templates — see `docs/authoring/setting-files/`.
60
-
61
- Extension Authoring kernel actions (v2.16.0+) are exposed through
62
- `script_plugin`:
63
-
64
- - `extension_capabilities`
65
- - `probe_fuse_lifecycle(name?, kind?, install?, cleanup?)`
66
- - `probe_dctl_lifecycle(name?, kind?, category?, install?, refresh_luts?, cleanup?)`
67
- - `probe_script_lifecycle(name?, language?, category?, install?, execute?, cleanup?)`
68
- - `safe_install_extension(extension_type, name, source?|kind?, dry_run?)`
69
- - `safe_remove_extension(extension_type, name, dry_run?)`
70
- - `refresh_or_restart_required(extension_type, category?)`
71
- - `extension_boundary_report(include_template_matrix?)`
72
-
73
- Key behavioral notes for `script_plugin`:
74
- - `run_inline(source, language)` runs ad-hoc Lua/Python in Resolve and returns
75
- stdout + result — use this for one-off conversational queries against the
76
- Resolve API instead of building+installing a script.
77
- - `language` accepts `lua`, `py`, or the human-facing aliases `python` and
78
- `python3`.
79
- - `execute(name, category, language)` runs an installed script; Python stdout
80
- and stderr are captured, while installed Lua execution can return false from
81
- the Python bridge even when install/read/list/remove worked.
82
- - Lua scripts: `fusion.Execute()` from the Python bridge is a no-op in
83
- Resolve 20.x — `_run_inline_lua` works around this with `RunScript` against
84
- a temp file plus completion-sentinel polling on `app:SetData/GetData`.
85
- - Fuse install path on macOS is `…/DaVinci Resolve/Fusion/Fuses/` (NOT
86
- `Support/Fusion/Fuses/` as the SDK doc lists). The MCP path helpers handle
87
- this; if you're staging files manually, use the path the implementation
88
- emits.
89
- - Resolve picks up new scripts without a restart; new Fuses need a restart
90
- to register; new DCTLs need `project_settings(action='refresh_luts')`
91
- (regular LUT category) or a restart (ACES IDT/ODT category).
92
-
93
- Tool metadata (v2.17.1+) includes MCP `ToolAnnotations` for read-only,
94
- destructive, idempotent, and external-resource hints. Treat compound tool
95
- annotations as conservative because a single compound tool may expose both probe
96
- and mutation actions behind its `action` parameter. Continue to prefer
97
- `safe_*`, `dry_run`, `probe_*`, `capabilities`, and `boundary_report` actions
98
- before mutating Resolve state.
99
-
100
- ---
101
-
102
- ## Two Server Modes
103
-
104
- | Mode | Entry point | Tool count | Use when |
105
- |---|---|---|---|
106
- | Compound (default) | `src/server.py` | 32 tools | Most workflows — keeps context lean |
107
- | Granular (full) | `src/server.py --full` | 341 tools | Power users needing one tool per API method |
108
-
109
- This skill document covers the **compound server** (the default). Each compound
110
- tool accepts an `action` string and an optional `params` object.
111
-
112
- The compound server also registers MCP prompts. Use `davinci_resolve_workflow`
113
- as the compact operating brief, and use `analyze_media` as a slash-command style
114
- entry point for source-safe project, selected-clip, bin, file, or sequence
115
- analysis. The Analyze Media prompt executes directly by default, persists
116
- inspectable reports/artifacts under the project analysis root, requests
117
- `host_chat_paths` visual analysis (frames are extracted to disk and the host
118
- chat finalizes each clip via `media_analysis(action="commit_vision", ...)`),
119
- runs local transcription through the configured backend, and writes metadata
120
- plus source-time Media Pool markers back to the Resolve project unless the
121
- user opts out.
122
-
123
- Anti-regression rule: do not silently downgrade media analysis. Source-safe
124
- means source media stays untouched; it does not mean no visuals, no transcript,
125
- no persisted report, no metadata writeback, or no Media Pool markers. Do not
126
- add `include_visuals=false`, `include_transcription=false`,
127
- `publish_metadata=false`, `timed_markers=no`, `session_only=true`, or
128
- `dry_run=true` unless the user explicitly asks for that opt-out, the target is a
129
- raw file path that cannot receive Resolve project writeback. The host_chat_paths
130
- vision protocol is: `analyze_*` returns a deferred payload with absolute
131
- `frame_paths` and a JSON schema; you must read those frames as images (Claude
132
- Code's Read tool handles JPG/PNG natively), produce the JSON, and call
133
- `commit_vision` for each clip. Skipping `commit_vision` leaves the run in
134
- `pending_host_vision_analysis` — surface that explicitly; do not call the
135
- analysis complete.
136
-
137
- The deferred payload also includes a `host_tool_choice_hint` block. Hosts that
138
- respect this hint pass it as `tool_choice={type:"tool", name:"media_analysis"}`
139
- on the next API turn, hard-locking the agent into the correct next call. Hosts
140
- that don't recognize the field ignore it — the flow is unchanged for them.
141
-
142
- ## Local Control Panel
143
-
144
- If the user asks to open, launch, or inspect the Resolve MCP control panel, run
145
- this from the repository root:
146
-
147
- ```bash
148
- venv/bin/python -m src.control_panel
149
- ```
150
-
151
- The command starts the local control panel and opens the default browser. Use
152
- `--no-open` when running in a headless context, then give the user the printed
153
- localhost URL. The panel is local and single-user; it is an operational surface
154
- for server status, Resolve clips, source-safe analysis jobs, preferences, and
155
- diagnostics as those sections are added.
156
-
157
- The **Review tab → History** button opens the timeline-history surface:
158
- per-timeline version chain, brain-edit deltas, manual archive, and rollback.
159
- Backed by `timeline_versioning` MCP actions; see that tool's section below for
160
- the underlying primitives.
161
-
162
- ---
163
-
164
- ## Editorial Memory And Decision-Making
165
-
166
- When the user asks for cutting, pacing, story shape, suspense, comedy timing, or
167
- tonal reframing, operate like an editor, not just a metadata scanner. Use
168
- `docs/guides/editorial-decision-guide.md` as the project-owned craft reference. The
169
- short version: emotion and story come first, then clarity, rhythm, eye trace,
170
- screen geography, continuity, and coverage variety.
171
-
172
- Before analyzing or rebuilding anything, check whether the active project already
173
- contains useful evidence:
174
-
175
- - `media_analysis(action="coverage_report", params={"target": {...}})` — the
176
- pre-flight contract. Pure read; never triggers analysis. Returns per-clip
177
- state (analyzed / stale / missing / reuse_blocked / superseded_by_relink),
178
- layer presence, `source_trust` tier, and a `recommended_action`. The response
179
- carries an `evidence_base` summary string — **lead any editorial or color
180
- recommendation with that line, before the creative answer.**
181
- - `media_analysis(action="summarize")` for project-wide rollup of warnings,
182
- motion distribution, and signed-report counts.
183
- - `media_analysis(action="get_report")` when a manifest or report path is known.
184
- - `timeline(action="list")`
185
- - `timeline(action="get_current")`
186
- - `timeline(action="probe_timeline_structure")`
187
- - `timeline(action="source_range_report")`
188
- - `timeline_markers(action="get_all")`
189
- - `media_analysis(action="review_timeline_markers")` when marker imagery matters
190
-
191
- Reuse prior analysis unless it is stale, incomplete, missing a modality, or
192
- flagged `superseded_by_relink` because Resolve's source clip was replaced after
193
- analysis ran. Coverage_report surfaces all of these in one read. Do not re-run
194
- visual analysis just because the edit task is new if a current report already
195
- has keyframes, motion variance, and usable visual descriptions. Add
196
- transcription, host_chat_paths vision (followed by commit_vision), marker
197
- review, or source range checks only when that missing evidence changes the
198
- decision. Use `force_refresh=true` only when the user asks for a fresh read or
199
- when cache signatures show the source, prompt, depth, or requested modality has
200
- changed.
201
-
202
- Source-trust filtering: `coverage_report` accepts `min_source_trust` (one of
203
- `auto`, `filename`, `low`, `medium`, `high`). Clips below the threshold appear
204
- in `summary.clips_needs_higher_trust` and are reported with
205
- `below_min_source_trust=true`. Use `medium` for routine work, `high` for
206
- shot-matching or look-development passes where confident scene/identity reads
207
- matter.
208
-
209
- For finished-video editorial work, scene detection and motion variance are
210
- guardrails, not story. Use them to avoid black frames, flash frames, corrupt
211
- ranges, and accidental cut points. Let transcript, sound events, complete
212
- thoughts, reactions, and decisive visual frames drive the actual edit.
213
-
214
- After creating or modifying a timeline variant, do a second pass before calling
215
- the work done:
216
-
217
- - `timeline(action="detect_gaps_overlaps")`
218
- - `timeline(action="source_range_report")`
219
- - `timeline_markers(action="get_thumbnail_image")` at important markers and cuts
220
- - Compare each marker name against the Resolve-rendered frame; revise the marker
221
- or edit if the image contradicts the plan.
222
-
223
- Do not depend on personal, external, or workstation-specific editorial context.
224
- For this project, keep the editorial craft reference self-contained in
225
- `docs/guides/editorial-decision-guide.md` and keep this `SKILL.md` focused on
226
- operational use of the MCP.
227
-
228
- ---
229
-
230
- ## Color Memory And Decision-Making
231
-
232
- When the user asks for color correction, shot matching, look development, LUTs,
233
- DCTLs, DRX grades, Gallery stills, or color-group workflows, use
234
- `docs/guides/color-decision-guide.md` as the project-owned color reference.
235
-
236
- Be explicit about the API boundary:
237
-
238
- - Directly creatable/control surfaces: CDL values on an existing node, grade
239
- versions, color-group assignment, LUT assignment on existing nodes, node
240
- enable/cache state, LUT/DCTL assets, Gallery still import/export, and grade
241
- copy/export helpers.
242
- - Opaque full-grade surfaces: copied grades, imported/exported `.drx` stills,
243
- and manually built Resolve node graphs. These can carry full grades, but the
244
- MCP applies or copies them as packages.
245
- - Not directly creatable from structured params: new node trees, Lift/Gamma/Gain
246
- wheel values, log/HDR palette values, curves, qualifiers, power windows,
247
- tracking, Color Warper, and detailed ResolveFX/OFX parameter edits.
248
-
249
- Before any color recommendation, run
250
- `media_analysis(action="coverage_report", params={"target": {...},
251
- "min_source_trust": "medium"})` (use `"high"` for shot-matching or
252
- look-development passes). Lead the response with the returned `evidence_base`
253
- line before the grade plan. Coverage_report surfaces relink-superseded clips
254
- that must be re-analyzed before being graded from prior visual descriptions.
255
-
256
- For safe color work, start with `timeline_item_color(action="grade_boundary_report")`,
257
- `timeline_item_color(action="grade_version_snapshot")`,
258
- `timeline_item_color(action="probe_node_graph")`, and a Resolve-rendered frame
259
- reference for the target shot or shots. Use thumbnails, contact sheets, Gallery
260
- stills, marker frames, or existing visual analysis reports before writing a
261
- grade, and cite the inspected frames in the response. When the API can safely
262
- provide them, compare matched untreated/bypass, current, and after frames at the
263
- same timecodes, then restore the previous active version or node-enabled state
264
- after any temporary bypass capture. Treat untreated frames as diagnostic
265
- evidence, not as permission to discard an existing creative grade.
266
-
267
- Prefer `safe_set_cdl` for small reversible primary corrections. Use DRX/stills
268
- or grade copy only when the user accepts whole-grade replacement/transfer
269
- semantics. Use DCTL/LUT authoring only for reusable mathematical transforms, not
270
- as a substitute for hand-built windows, qualifiers, or tracked secondaries. Do
271
- not apply blind/global grades unless the user explicitly asks for that. When the
272
- user asks to build on or adjust an existing grade, preserve the current
273
- grade/version as the starting point, create or switch to a recoverable
274
- adjustment version, and apply only incremental changes through supported
275
- controls. Do not reset grades, replace graphs, or apply DRX/copy-grade
276
- whole-grade artifacts unless replacement or transfer semantics are explicitly
277
- accepted. Distinguish Resolve's default one-node graph from an existing creative
278
- grade; only describe a creative grade when active tools, LUTs, or other grade
279
- state are present.
280
-
281
- For sequence-wide looks, prefer a duplicated timeline, batch creation of
282
- reference/current/look versions across all target clips, and one bulk Resolve
283
- script for repeated version, group, or CDL operations. Use color groups for shared
284
- scene-level intent only when they fit the work: group pre-clip for shared
285
- normalization, clip versions for shot-specific matching, and group post-clip for
286
- the creative look. Sampling can guide a first pass, but final handoff should
287
- state the reviewed scope; short sequences should be checked shot by shot.
288
-
289
- ---
290
-
291
- ## Page Context Requirements
292
-
293
- DaVinci Resolve is a page-based application. Certain operations only work on
294
- specific pages. Always confirm or switch pages before calling page-sensitive tools.
295
-
296
- | Operation category | Required page | How to switch |
297
- |---|---|---|
298
- | Color grading, node graphs, CDL | Color | `resolve_control(action="open_page", params={"page": "color"})` |
299
- | Gallery stills export, `grab_and_export` | Color, Gallery panel open | `resolve_control` + open Gallery panel in Workspace menu |
300
- | Fusion compositions (page comp) | Fusion | `resolve_control(action="open_page", params={"page": "fusion"})` |
301
- | Timeline editing, track operations | Edit or Cut | `resolve_control(action="open_page", params={"page": "edit"})` |
302
- | Fairlight audio | Fairlight | `resolve_control(action="open_page", params={"page": "fairlight"})` |
303
- | Render / deliver | Deliver | `resolve_control(action="open_page", params={"page": "deliver"})` |
304
- | Media import, storage browsing | Media | `resolve_control(action="open_page", params={"page": "media"})` |
305
-
306
- When a tool returns an unexpected `False` or an error about context, check whether
307
- you are on the correct page first.
308
-
309
- ---
310
-
311
- ## Tool Map
312
-
313
- ### App Control
314
-
315
- **`resolve_control`** — App-level operations.
316
-
317
- Key actions:
318
- - `launch` — connect to or start Resolve; call this first if any tool returns a
319
- "Not connected" error
320
- - `get_version` — returns `{product, version, version_string}`
321
- - `api_truth(query?)` — look up behaviorally-verified facts about quirky/unreliable
322
- Resolve API behavior (no connection needed); filter by substring
323
- - `verification_stats` — readback-verification tally (verified/contradicted/
324
- unverified) since server start (no connection needed)
325
- - `get_page` / `open_page(page)` — read or switch the active page
326
- - `get_keyframe_mode` / `set_keyframe_mode(mode)`
327
- - `get_fairlight_presets` — Resolve 20.2.2+; returns available Fairlight
328
- preset names
329
- - `quit` — terminates Resolve (destructive; confirm with user first)
330
-
331
- **`layout_presets`** — Save, load, export, import, delete UI layout presets.
332
-
333
- **`render_presets`** — Import and export render and burn-in presets.
334
-
335
- ---
336
-
337
- ### Project Management
338
-
339
- **`project_manager`** — CRUD on projects.
340
-
341
- Key actions: `list`, `get_current`, `create(name, media_location_path?)`,
342
- `load(name)`, `save`, `close`,
343
- `delete(name)`, `import_project(path)`, `export_project(name, path)`, `archive`,
344
- `restore`
345
-
346
- Project / Database / Archive kernel actions (v2.15.0+) add guarded project
347
- lifecycle, settings, database, preset, and archive boundary helpers:
348
-
349
- - `project_capabilities`
350
- - `probe_project_lifecycle`
351
- - `probe_project_settings(keys?, try_write?, dry_run?)`
352
- - `safe_project_create(name, media_location_path?, dry_run?)`
353
- - `safe_project_export(name, path, with_stills_and_luts?, dry_run?)`
354
- - `safe_project_import(path, name, dry_run?)`
355
- - `safe_project_archive(name, path, src_media=false, render_cache=false, proxy_media=false, dry_run?)`
356
- - `safe_project_restore(path, name, dry_run?)`
357
- - `safe_project_delete(name, close_current?, dry_run?)`
358
- - `safe_set_project_settings(settings, restore?, dry_run?)`
359
- - `project_settings_snapshot(name?)`
360
- - `database_capabilities`
361
- - `safe_set_current_database(db_info, dry_run?, allow_switch?)`
362
- - `preset_lifecycle_probe`
363
- - `project_boundary_report`
364
-
365
- Health check and declarative spec (v2.28.0+):
366
-
367
- - `lint` — graded project health pre-flight returning `{ok, counts, issues}`.
368
- Issues (error / warning / info) cover: no project, no current timeline, mixed
369
- frame rates across timelines, empty timeline, render format unset, color
370
- science unmanaged, offline media, and unanalyzed clips. Composed from existing
371
- probes; safe read-only.
372
- - `diff_to_spec(spec_path | spec)` — preview drift between a declarative spec and
373
- the live project WITHOUT mutating. Returns `{actions, diff, change_count}`.
374
- - `plan_spec(spec_path | spec)` — the ordered action list as a dry run.
375
- - `apply_spec(spec_path | spec, dry_run?, run_hooks?, continue_on_error?)` —
376
- reconcile the project toward the spec. Idempotent (re-runs are no-ops); color/
377
- HDR settings apply in dependency order; markers added only when absent; explicit
378
- `settings` override a named `color_preset`; before/after shell hooks run only
379
- with `run_hooks=true`. The spec is YAML or JSON:
380
- `{project, color_preset?, settings?, timelines:[{name, fps?, settings?, markers?}], hooks?}`.
381
- Note: `apply_spec` reconciles the **currently open or already-existing** project;
382
- creating a brand-new project from a spec depends on Resolve's `CreateProject`
383
- succeeding (it can return None when an unsaved project blocks the switch).
384
-
385
- Safe project actions require `_mcp_` names and temp paths by default. Database
386
- switching dry-runs by default because Resolve closes open projects when
387
- switching databases. Archive source media/cache/proxy flags are rejected unless
388
- explicitly opted in.
389
-
390
- **`project_manager_folders`** — Navigate project folders.
391
-
392
- Key actions: `list`, `get_current`, `create(name)`, `open(name)`, `goto_root`,
393
- `goto_parent`
394
-
395
- **`project_manager_database`** — Switch databases.
396
-
397
- Key actions: `get_current`, `list`, `set_current(db_info)`
398
-
399
- **`project_manager_cloud`** — Cloud projects (requires Resolve cloud
400
- infrastructure; most users will not have this).
401
-
402
- **`project_settings`** — Project metadata, settings, color groups, and misc
403
- operations on the open project.
404
-
405
- Key actions: `get_name`, `set_name(name)`, `get_setting(name?)`,
406
- `set_setting(name, value)`, `get_color_groups`, `add_color_group(name)`,
407
- `delete_color_group(name)`, `export_frame_as_still(path)`,
408
- `load_burnin_preset(name)`, `insert_audio(media_path, ...)`,
409
- `apply_fairlight_preset(preset_name)`,
410
- `project_summary(include_clips?, clip_limit?)` — live structural readout
411
- (current page, timeline count, media-pool inventory by type)
412
-
413
- ---
414
-
415
- ### Media
416
-
417
- **`media_storage`** — Browse mounted volumes and import files.
418
-
419
- Key actions: `get_volumes`, `get_subfolders(path)`, `get_files(path)`,
420
- `import_to_pool(items)` — `items` is a list of file path strings
421
-
422
- **`media_pool`** — Full Media Pool management.
423
-
424
- Key actions: `get_root_folder`, `get_current_folder`, `set_current_folder(path)`,
425
- `add_subfolder(name)`, `create_timeline(name)`, `import_timeline(path, options?)`,
426
- `import_media(paths)`, `delete_clips(clip_ids)`, `move_clips(clip_ids, target_path)`,
427
- `setup_multicam_timeline(name, clip_ids|angles, sync_mode?, include_audio?, dry_run?)`,
428
- `get_selected`, `set_selected(clip_id)`, `export_metadata(path, clip_ids?)`
429
-
430
- Media Pool / Ingest kernel actions (v2.8.0+) add safer agent-facing workflows:
431
- `ingest_capabilities`, `probe_media_pool`, `probe_ingest_item`,
432
- `safe_import_media`, `safe_import_sequence`, `safe_import_folder`,
433
- `organize_clips`, `copy_metadata`, `normalize_metadata`,
434
- `probe_clip_properties`, `metadata_field_inventory`, `safe_relink`,
435
- `safe_unlink`, `link_proxy_checked`, `link_full_resolution_checked`,
436
- `set_clip_marks`, `clear_clip_marks`, `copy_clip_annotations`,
437
- `setup_multicam_timeline`, and
438
- `media_pool_boundary_report`. See
439
- `docs/kernels/media-pool-ingest-kernel.md` for the live-tested support map.
440
-
441
- `setup_multicam_timeline` is a helper, not a native multicam API wrapper. It
442
- creates a source-safe stacked prep timeline with one angle per video track,
443
- optional matching audio tracks, and `stack_start`, `source_timecode`, or
444
- explicit `record_frame` placement. Native multicam clip creation, angle
445
- switching, and flattening remain Resolve UI workflows; see
446
- `docs/guides/multicam-setup-guide.md`.
447
-
448
- Note: `folder path` arguments use slash notation like `"Master/SubFolder"`.
449
- `"Master"` or `"/"` refers to the root folder.
450
-
451
- **`folder`** — Operations on a specific Media Pool folder.
452
-
453
- Key actions: `get_clips(path?)`, `get_subfolders(path?)`, `export(path?, export_path)`,
454
- `transcribe_audio(path?, use_speaker_detection?)`, `clear_transcription(path?)`,
455
- `perform_audio_classification(path?)`, `analyze_for_intellisearch(path?, identify_faces?, is_better_mode?)`,
456
- `analyze_for_slate(path?, marker_color?)`, `remove_motion_blur(path?, deblur_option?)` (Resolve 21+;
457
- the last three need AI Extras, and `remove_motion_blur` is confirm-token gated)
458
-
459
- **`media_pool_item`** — Read/write clip metadata and properties. All actions
460
- require a `clip_id` (the UUID returned by `GetUniqueId()`).
461
-
462
- Key actions: `get_name`, `get_metadata(key?)`, `set_metadata(key, value)`,
463
- `get_clip_property(key?)`, `set_clip_property(key, value)`, `get_clip_color`,
464
- `set_clip_color(color)`, `link_proxy(proxy_path)`, `replace_clip(path)`,
465
- `set_name(name)`, `link_full_resolution_media(path)`,
466
- `replace_clip_preserve_sub_clip(path)`, `monitor_growing_file`,
467
- `transcribe_audio(use_speaker_detection?)`, `clear_transcription`,
468
- `get_transcription` (read back `{text, truncated, status, has_transcription}`;
469
- `truncated` flags when Resolve's preview cut the text off),
470
- `perform_audio_classification`,
471
- `analyze_for_intellisearch(identify_faces?, is_better_mode?)`, `analyze_for_slate(marker_color?)`,
472
- `remove_motion_blur(deblur_option?)` (Resolve 21+; AI Extras / confirm-token gated as noted above),
473
- `get_audio_mapping`, `get_mark_in_out`, `set_mark_in_out`
474
-
475
- **`media_pool_item_markers`** — Markers and flags on clips in the Media Pool.
476
- All actions require a `clip_id`.
477
-
478
- Key actions: `add(frame, color, name, note, duration)`, `get_all`, `delete_by_color(color)`,
479
- `delete_at_frame(frame)`, `add_flag(color)`, `get_flags`, `set_name(name)`
480
-
481
- **`media_analysis`** — Project-scoped media intelligence and guarded metadata publishing.
482
-
483
- Media Analysis and editorial-assist actions (v2.17.0+) add source-safe planning,
484
- report reuse, persisted analysis execution, host_chat_paths visual review
485
- (finalized per clip via `commit_vision`), transcription, default Resolve
486
- metadata/marker writeback, and timeline-level editorial helpers.
487
-
488
- Key actions: `capabilities`, `install_guidance`, `resolve_output_root`, `plan`,
489
- `coverage_report`, `analyze_file`, `analyze_clip`, `analyze_bin`,
490
- `analyze_project`, `detect_sync_events`, `add_sync_event_markers`,
491
- `publish_clip_metadata`, `commit_vision`, `summarize`, `get_report`,
492
- `build_index`, `index_status`, `query_index`, `start_batch_job`,
493
- `run_batch_job_slice`, `batch_job_status`, `list_batch_jobs`,
494
- `cancel_batch_job`, `resume_batch_job`, `review_timeline_markers`,
495
- `cleanup_artifacts`, `db_status`, `db_ingest`, `get_panel_state`,
496
- `set_panel_state`, `session_start_context`, `update_clip_field`,
497
- `update_shot_field`, `get_field_history`, `revert_field`,
498
- `list_corrections`, `deepen`, `commit_shot_vision`, `vision_pending_sweep`,
499
- `build_embeddings`, `find_similar`, `detect_entities`, `commit_entities`,
500
- `list_entities`, `prepare_bin_briefing`, `commit_bin_summary`,
501
- `detect_shot_relationships`, `commit_shot_relationships`, and
502
- `list_shot_relationships`.
503
-
504
- **Cross-clip entities + bin briefing v2 (v2.44.0+).** Recurring
505
- people/places/props across a project's media, found cheaply and confirmed
506
- with ONE vision call per cluster:
507
- - `detect_entities(threshold?, min_cluster_size?)` clusters the v10 CLIP
508
- frame vectors (build visual embeddings first), writes provisional entity
509
- rows + appearances, and returns a deferred payload with one
510
- representative frame per cluster (caps pre-checked, estimate inlined).
511
- The host chat reads those frames and calls
512
- `commit_entities(entities=[{entity_index, kind, label, description,
513
- confidence, merge_with?}], vision_token)` — conservative labels only
514
- (describe what's visible; never guess names). `merge_with` collapses
515
- clusters that show the same entity.
516
- - `list_entities` returns labeled entities with per-clip/shot appearances;
517
- the panel's Review page shows a "Recurring across this bin" card.
518
- - `prepare_bin_briefing` returns entities + per-clip summaries (text-only,
519
- no vision cost); the host writes a colleague-style markdown briefing and
520
- calls `commit_bin_summary(briefing, briefing_token)`, which lands in
521
- `memory/bin_summary.md` above the v2.0 aggregate.
522
-
523
- **Cross-shot relationships (v2.49.0+).** Pattern recognition only (spec §4 —
524
- no editorial suggestions): `same_setup_as` / `alt_take_of` (symmetric) and
525
- `continues_from` (directional; the source shot continues from the target).
526
- - `detect_shot_relationships(setup_threshold?, alt_take_threshold?,
527
- continues_band?, max_candidates?)` — pairwise cosine over the per-shot
528
- visual vectors (build visual embeddings first; raise
529
- `max_frames_per_clip` if shot coverage is partial), plus transcript
530
- continuity as a second signal for `continues_from`. Returns a deferred
531
- payload with a representative frame PAIR per candidate (caps pre-checked,
532
- two frames per candidate). Candidates live only in the detection-state
533
- stash until committed — re-detect replaces them.
534
- - The host chat reads BOTH frames of each pair and calls
535
- `commit_shot_relationships(relationships=[{candidate_index, verdict:
536
- confirm|reject, relationship_type?, confidence?}], vision_token)`.
537
- Confirm only what the frames show; reject lookalikes. Overriding the
538
- suggested type is allowed. Committed rows supersede prior machine rows
539
- for the same pair.
540
- - `list_shot_relationships(clip_id?, shot_uuid?, relationship_type?)` —
541
- current rows with clip/shot context on both ends. The shot page's
542
- Relationships group fills from these rows, and `plan_swap` prefers
543
- confirmed `alt_take_of` alternates over raw cosine (the rationale states
544
- which basis ranked each alternate).
545
-
546
- **Embeddings + similarity (v2.43.0+).** Local-compute semantic search; no
547
- vendor tokens, so nothing here touches the caps ledger. Backends are
548
- detected, never installed (capabilities lists them with install guidance):
549
- text = ollama serving `nomic-embed-text` or sentence-transformers; visual =
550
- open_clip (ViT-B-32, needs torch); audio (v2.51.0+) = CLAP via
551
- `transformers` (laion/clap-htsat-unfused, preferred) or the `laion_clap`
552
- package — needs torch + ffmpeg.
553
- - `build_embeddings(kinds=["text","visual","audio"]?, clip_id?)` —
554
- idempotent; embeds clip summaries, shot descriptions (+ deep field
555
- groups), transcript segments, and sampled frames (per-shot visual vector
556
- = mean of its frames'). `kinds=["audio"]` embeds one CLAP window per shot
557
- (center-cropped to ~10s, piped from the source media as raw PCM —
558
- read-only, no temp files) plus a clip-level mean vector; clips whose
559
- media is offline are reported in `skipped_missing_media`. Only re-embeds
560
- entities whose content changed.
561
- - `find_similar(text=… | clip_id=… | clip_id+shot_index,
562
- kind="text"|"visual"|"audio", entity_types?, limit?)` — brute-force
563
- cosine over the project's vectors. Free-text visual queries use the CLIP
564
- text encoder ("cracked windshield" finds the frame); free-text audio
565
- queries use the CLAP text encoder ("engine revving" finds the shot).
566
- Results carry scores plus clip/shot/segment context.
567
- The panel search box gains a `Semantic` toggle when a text backend is
568
- detected. Vectors live in the per-project DB (schema v10).
569
-
570
- **Deep shot-level vision tier (v2.42.0+).** Opt-in, estimate-first. Two
571
- entry points share one per-shot schema (Visual / Content / Production /
572
- Editorial / Cuttability / description / confidence):
573
- - `depth="deep"` on any analyze action extends the deferred host-vision
574
- payload with `deep_shot_schema`; each `shot_descriptions` entry must carry
575
- the field groups. The first deep run returns `confirmation_required` with
576
- a token-cost estimate — re-call with `confirm_deep=true`. Caps still apply.
577
- - `deepen(clip_id|clip_dir, shot_index?|shot_indices?)` runs the pass
578
- post-hoc on an already-analyzed clip. First call returns the estimate +
579
- `confirm_token`; re-call with the token to get the deferred payload, read
580
- its `frame_paths`, and commit via
581
- `commit_shot_vision(clip_id, shots=[{shot_index, ...groups...}],
582
- vision_token)`. Deep fields land as `vision_deep_v1` provenance rows;
583
- human corrections always survive. Shots with no sampled frames on disk get
584
- 1–2 frames re-extracted via ffmpeg (read-only on source media).
585
- `vision_pending_sweep(expire?, max_age_days?, reoffer?)` lists clips stuck
586
- in `pending_host_analysis`; `reoffer=true` returns each clip's stored
587
- deferred payload to finish the run, `expire=true` stamps them
588
- `expired_host_analysis` so pendings never linger silently.
589
-
590
- **DB-canonical analysis store (v2.41.0+).** The per-project SQLite DB
591
- (`_soul/timeline_brain.sqlite`, schema v9+) is the source of truth for clip
592
- analysis; `analysis.json` is a derived export written in lockstep. Analysis
593
- runs write rows first (clips, shots, per-field subjective provenance,
594
- transcript segments, sampled frames, QC observations) and then export the
595
- JSON. Human corrections recorded via `update_clip_field` / `update_shot_field`
596
- live as row-level provenance and always survive re-analysis. Readers
597
- (panel API, exports) load DB-first and fall back to `analysis.json` for
598
- reports that predate v9. `db_status` reports schema version + row counts;
599
- `db_ingest` migrates an existing project's JSON reports (and
600
- `corrections.json` sidecars) into the DB — run it once on older analysis
601
- roots.
602
- The tool never installs
603
- dependencies and validates that outputs stay under
604
- `davinci-resolve-mcp-analysis` project roots rather than beside source media.
605
- Executed Resolve-target analysis defaults to running, persisting inspectable
606
- artifacts, and publishing metadata plus Media Pool clip markers. Use
607
- `dry_run=true`, `publish_metadata=false`, `timed_markers=no`, or
608
- `session_only=true` with `keep_artifacts=false` to disable those defaults for a
609
- run. Persisted analysis refreshes the local SQLite search index automatically unless
610
- `auto_build_index=false` is set; `build_index` remains the manual rebuild action
611
- for existing reports. `quick` uses ffprobe metadata; `standard` adds ffmpeg
612
- read-through checks,
613
- cut-boundary analysis from full-stream scene detection, flash-frame candidates,
614
- motion/variance scoring, analysis keyframes, and sidecar reports.
615
- `depth` controls which layers run; a separate `sampling_mode` controls how many
616
- frames each clip gets for visual analysis (and thus token cost): `fixed`
617
- (Economy, flat content-blind frames), `per_minute` (Balanced, frames scale with
618
- duration), `adaptive_capped` (Thorough, content-aware bounded to
619
- `[frame_floor, frame_ceiling]` — recommended/default), or `adaptive` (Thorough
620
- uncapped). When no default is saved, the first analyze returns
621
- `confirmation_required` with a `sampling_mode_prompt`; choosing a mode saves it
622
- as the default. Pass `sampling_mode` per call for a one-off. The mode owns frame
623
- count — `analysis_caps.frames_per_clip` is a safety ceiling above it, not the
624
- primary dial.
625
- By default, planning checks the active project's analysis root and bounded
626
- related project-version roots for existing reports, then marks matching clips
627
- `skip_execution=true` when those reports already contain the requested
628
- technical, motion, transcription, and vision layers.
629
- Resolve clip records also carry the published third-party
630
- `davinci_resolve_mcp.analysis_report_path` when metadata writeback has run; use
631
- that provenance as a first-class reuse hint even if the report lives under a
632
- previous project-version analysis root.
633
- The planner also maintains an `analysis_registry.json` under the analysis base
634
- root. This registry indexes report paths by source path, clip id, media id, and
635
- signature so project renames and versioned Resolve projects can still find prior
636
- work quickly.
637
- Reports include cache signatures with source stat, depth, frame budget, prompt
638
- hash, and requested modalities. Use `force_refresh=true` for a fresh read,
639
- `max_report_age_days` for freshness limits, and `reuse_policy="fresh"` when
640
- unsigned older reports should not be reused. Pass `reuse_existing=false` only
641
- when the user explicitly wants to ignore memory; pass
642
- `search_related_project_roots=false` only for intentionally isolated runs.
643
- If Resolve metadata shows prior MCP analysis but the planner cannot validate a
644
- matching report, execution returns `status="reuse_blocked"` instead of silently
645
- reanalyzing. Treat that as a project-memory integrity warning; restore the
646
- report or pass `force_refresh=true` only when the user explicitly wants fresh
647
- analysis.
648
- Transcription, visual analysis, metadata writeback, and Media Pool marker
649
- writeback are default-on. Vision uses
650
- `vision.provider="host_chat_paths"`: analyze actions extract representative
651
- frames to disk under the project analysis root and return a deferred payload
652
- containing absolute `frame_paths`, a `shot_table` mapping each detected shot
653
- range to its in-shot `frame_indices`, the JSON schema, and a `commit_action`.
654
- The host chat must read those frames as local images, produce JSON per the
655
- schema (including one `shot_descriptions` entry per `shot_index` in the
656
- `shot_table`, grounded only in the frames listed for that shot), and call
657
- `media_analysis(action="commit_vision", params={clip_id, visual,
658
- vision_token})` per clip to merge the visual report, rebuild Media Pool clip
659
- markers, and publish vision-dependent metadata to Resolve. Each Resolve shot
660
- marker inherits its description from `shot_descriptions[shot_index]`; missing
661
- entries fall back to an in-range `analysis_keyframe` and finally to a
662
- clip-summary-tagged fallback — never to a neighbour shot's description. The manifest exposes
663
- `vision_pending=True` and `pending_action` so callers know what is incomplete.
664
- Pass `include_visuals=false`, `include_transcription=false`,
665
- `publish_metadata=false`, or `timed_markers=no` to opt out. Agents must not add
666
- those opt-out flags preemptively; use them only when requested or when a target
667
- boundary requires it. Standard/deep runs prioritize first/last usable frames
668
- plus before/after cut-boundary frames as the sampled set. Skipping
669
- `commit_vision` leaves the run in `pending_host_vision_analysis` — that is a
670
- failure mode to surface, not a silent downgrade. The local mock providers are
671
- for tests and do not send frames off-machine.
672
-
673
- When creating timelines through `media_pool`, use `if_exists="reuse"` for
674
- idempotent reruns, `if_exists="version"` for deliberate alternate cuts, and
675
- `if_exists="fail"` when duplicate names indicate a workflow error.
676
- Use `detect_sync_events` before multicam setup, deliverable QC, or single-camera
677
- sync review when the user needs likely 2-pop or slate-clap locations. It reads
678
- source audio through FFmpeg/FFprobe only, returns advisory frames/timecodes and
679
- per-file `record_offset` suggestions, and never installs FFmpeg automatically.
680
- It also returns marker suggestions; `add_sync_event_markers` remains an explicit
681
- marker-write action for standalone sync detections.
682
- Use `publish_clip_metadata` when the user wants analysis to become searchable
683
- inside Resolve. It analyzes or reuses reports, proposes field-specific merges
684
- for `Description`, `Comments`, `Keywords`, `People`, and optional slate-derived
685
- fields, stores provenance in third-party metadata, and writes metadata plus
686
- source-time markers by default for executed Resolve-target analysis. Disable a
687
- write run with `dry_run=true`, `publish_metadata=false`, or `timed_markers=no`.
688
- `review_timeline_markers` creates a labeled
689
- Resolve-rendered marker contact sheet plus JSON sidecar; with
690
- `vision.enabled=true` it returns a host_chat_paths review payload (image_path +
691
- prompt) so the host chat can read the sheet and answer inline — no commit step
692
- required for marker review.
693
-
694
- Before calling `analyze_*`, prefer `summarize` and `get_report` to discover
695
- existing reports for the active project. If reports exist, use them as the
696
- working memory for edit decisions and only request fresh analysis when a missing
697
- layer changes the decision. If a user is
698
- making story or audio-spine decisions and transcription is available but disabled,
699
- tell them that transcript analysis may materially improve the edit instead of
700
- silently skipping it. Resolve-native transcription changes project state; use it
701
- only when that mutation is intentional.
702
-
703
- ---
704
-
705
- ### Timelines
706
-
707
- **`edit_engine`** — Evidence-driven edit loops (v2.45.0+): selects assembly,
708
- tighten, swap.
709
-
710
- Every loop is plan → confirm → execute. plan_* actions are dry-run by
711
- construction: they query the DB-canonical analysis store and return a
712
- per-decision rationale plus a stored `plan_id` (plans persist under
713
- `memory/edit_plans/` with a content fingerprint, so a stale plan cannot run
714
- against a changed project). execute_* actions require a `confirm_token`, run
715
- under the version-on-mutate hook, and return before/after duration and
716
- clip-count readback plus `brain_edits` rationale rows.
717
-
718
- - `plan_selects(min_select_potential?, max_duration_seconds?, max_shots?,
719
- timeline_name?, analysis_root?)` — ranks shots by deep-tier
720
- `editorial.select_potential` / best moments (clip-level fallback for
721
- standard-analyzed clips), story-spine order.
722
- `execute_selects(plan_id)` creates a NEW selects timeline from the plan's
723
- per-shot source ranges — additive; nothing existing is touched.
724
- - `plan_tighten(timeline_name?, target_ratio?, min_pause_seconds?,
725
- handle_seconds?, include_audio?)` — dead-air lifts from transcript-gap
726
- evidence for each timeline item (items without transcripts are reported in
727
- `skipped`, never silently trimmed). `execute_tighten(plan_id)` assembles a
728
- tightened VARIANT timeline from the plan's keep ranges — true partial
729
- trims; the original timeline is never mutated. v2.52.0+: kept ranges mirror
730
- onto each item's linked audio track(s) so the variant is audible (a
731
- speech-driven cut was previously silent — #67); pass
732
- `include_audio=false` for a video-only assembly, and the
733
- `execute_tighten` readback carries an `audio_accounting` block.
734
- - `plan_swap(timeline_start_frame | item_name, kind="visual"|"text",
735
- limit?)` — alternates for one timeline item via the similarity index,
736
- filtered to shots long enough to fill the slot exactly.
737
- `execute_swap(plan_id, alternate_index)` replaces the item in place
738
- (lift + positioned append at the same record frame) on the
739
- version-archived timeline. v2.48.0+: the lift is scoped to the target's
740
- video track plus its linked audio tracks (GetLinkedItems with a
741
- media-id fallback), and `readback` carries per-track-type
742
- `track_counts` plus an `audio_accounting` block so swap symmetry is
743
- verifiable. `execute_tighten` readback gains `structural_diff` (source
744
- vs variant, via the same engine as `diff_timelines`); `execute_selects`
745
- readback gains a `usage_summary`.
746
- - `list_plans(limit?)` / `get_plan(plan_id)`.
747
-
748
- The engine needs the analysis substrate: analyzed clips in the DB (run
749
- `db_ingest` on older roots), transcripts for tighten, and visual embeddings
750
- (`build_embeddings(kinds=['visual'])`) for swap.
751
-
752
- Plans are reviewable in the control panel (Media → Edit Plans, v2.47.0+):
753
- decisions/lifts/alternates with thumbnails and rationale, deep links to shot
754
- pages, and a copyable per-kind execute prompt. The panel never executes —
755
- when the user says they reviewed a plan there, execution still comes back
756
- through chat with the confirm-token gate.
757
-
758
- **`timeline_versioning`** — Version-on-mutate, archive, rollback, brain-edit history (C6).
759
-
760
- Every destructive timeline op (compound, captions, ripple delete, gap close,
761
- retime, marker batch, track add/delete, take swaps, color grade, etc.) auto-
762
- archives the working timeline to the `Archive` bin under an `analysis_run_id`
763
- before the mutation runs. This tool surfaces and controls that history.
764
-
765
- Key actions:
766
- - `begin_run(label?, initiator?, analysis_run_id?)` — open a multi-step run.
767
- Subsequent destructive calls auto-thread this run's ID, so a brain
768
- operation that touches 5 clips creates ONE archive + 5 logged edits
769
- instead of 5 separate archives.
770
- - `end_run(analysis_run_id?)` — close the run; aggregates brain_edits into
771
- per-metric rollup in `analysis_runs.summary_json`.
772
- - `list_runs(limit?)` — recent runs newest first with their summaries.
773
- - `archive_current(reason?, analysis_run_id?)` — manual checkpoint of the
774
- current timeline. Idempotent within an `analysis_run_id`. Also captures a
775
- structural snapshot (every clip's placement, written to `timeline_clip_usage`)
776
- and a thumbnail (when the Color page has a current clip).
777
- - `list_versions(timeline_name)` — version chain, oldest first. Each row
778
- includes `archived_timeline_name`, `created_at`, `analysis_run_id`,
779
- `initiator`, `thumbnail_path`, and `drt_export_path` (set when the version
780
- was retention-collapsed to disk).
781
- - `diff_versions(timeline_name, from_version, to_version)` — structural diff
782
- between two snapshots: `{added, removed, moved, trimmed, summary}`. `trimmed`
783
- lists clips kept in place but re-trimmed (carries `out_frame_before`); `summary`
784
- has per-bucket counts plus `before_clip_count`/`after_clip_count`. Clips are
785
- keyed by media_pool_item_id and timeline position.
786
- - `diff_timelines(from_timeline, to_timeline)` (v2.48.0+) — the same
787
- structural diff between two LIVE timelines by NAME, read-only, no archived
788
- snapshots needed. Built for edit-engine variants (tighten/selects produce
789
- new-name timelines with no shared version chain). For unrelated timelines
790
- everything reports as added/removed.
791
- - `get_history(timeline_name?, analysis_run_id?, limit?)` — brain-edit rows
792
- with `edit_type`, `target_metric`, `before_value`, `after_value`, `delta`,
793
- `rationale`, and `initiator`. Filter by timeline or run; defaults to 50.
794
- - `media_pool_changes(analysis_run_id?, media_pool_action?, limit?)` —
795
- destructive media-pool history (deletes, replaces, relinks) from the
796
- `media_pool_changes` table. Separate from brain_edits because the
797
- addressable entity is a media_pool_item, not a timeline.
798
- - `rollback(timeline_name, version, analysis_run_id?)` — archive current first,
799
- then duplicate the archived version back as a new `<name>_rolled_back_<HHMMSS>`.
800
- - `prune(timeline_name, keep_n=10)` — collapse old versions to `.drt` exports
801
- under `<project>/_soul/timeline_versions/<slug>/` and remove them from the
802
- bin. DB row preserved with `drt_export_path` populated for later rollback.
803
- - `registry()` — cross-project brain-edits registry that lives at the analysis
804
- base root (one level above each project_root). Mirrors `analysis_registry.json`.
805
-
806
- **Strict mode** — `timeline.delete_timelines`, `timeline.delete_track`, and
807
- `timeline.delete_clips(ripple=True)` REFUSE to run when the pre-mutation
808
- archive can't be created. Pass `strict=true` on any destructive op to opt in.
809
- This prevents catastrophic ops from proceeding when versioning is broken.
810
-
811
- **Action filtering** — `timeline_item.set_property(key='Notes')` and
812
- `timeline.set_clip_property(key='Notes'|'Comments')` bypass versioning because
813
- free-text metadata isn't worth archiving. See `NO_ARCHIVE_ON_KEYS` in
814
- `src/utils/destructive_hook.py` to add more.
815
-
816
- **Preferences** — `timeline_versioning_auto_save_after_archive` (default false)
817
- triggers `project.SaveProject()` after every archive so Resolve crashes don't
818
- lose history. Configure via the `setup` tool's preferences.
819
-
820
- ### Analysis Caps
821
-
822
- `media_analysis` honors a project-wide caps preset that controls 7 dimensions
823
- of analysis cost: response payload size, frames per clip, vision tokens per
824
- clip / per job / per day, wall-clock seconds per call, and the maximum frame
825
- image dimension before upload. Four named presets, plus per-field overrides.
826
-
827
- | Dimension | minimal | standard | generous | unlimited |
828
- |------------------------------:|--------:|---------:|----------:|----------:|
829
- | response_chars | 5,000 | 25,000 | 100,000 | none |
830
- | vision_tokens_per_clip | 5,000 | 25,000 | 100,000 | none |
831
- | frames_per_clip | 4 | 8 | 24 | none |
832
- | vision_tokens_per_job | 50,000 | 250,000 | 1,000,000 | none |
833
- | vision_tokens_per_day | 100,000 | 500,000 | 2,000,000 | none |
834
- | wall_clock_seconds_per_call | 30 | 90 | 300 | none |
835
- | max_frame_dim_pixels | 512 | 768 | 1280 | none |
836
-
837
- Default preset: `standard`. Set via `media_analysis(action="set_caps_preset",
838
- preset=…, overrides={...})` or the dashboard's **Preferences → Analysis Caps**
839
- panel. Inspect via `media_analysis(action="get_caps")` which returns the
840
- effective values + a usage rollup (clip / job / day) with percent-consumed.
841
- `media_analysis(action="get_usage", scope="day"|"job"|"clip")` returns raw
842
- counts for one scope. Usage is tracked in
843
- `<project>/_soul/timeline_brain.sqlite` (`analysis_token_usage` table).
844
-
845
- Resolve 21's local AI ops (audio classification, IntelliSearch, slate,
846
- motion-deblur, speech generation) run on Resolve's own GPU/AI engine and do NOT
847
- spend the Claude analysis token budget — they are tracked separately in the
848
- `resolve_ai_op_usage` table. Inspect with
849
- `media_analysis(action="get_resolve_ai_usage", session_only?, op?, limit?)` →
850
- `{summary, recent}` (invocation counts, wall-clock, and files/bytes created by
851
- `remove_motion_blur` / `generate_speech`). The control panel shows the same as a
852
- read-only "Resolve 21 AI ops" card.
853
-
854
- The two media-creating ops also have **soft governance tiers**
855
- (`off`|`lenient`|`standard`|`strict`, default `standard`) capping per-session
856
- deblur/speech runs, bytes, and render time. It is advisory — the confirm dialog
857
- warns when near/over the tier but never blocks (the ops are confirm-gated).
858
- Inspect/set with `media_analysis(action="get_ai_governance")` and
859
- `media_analysis(action="set_ai_governance", preset=…, mode=…, overrides={...})`.
860
- Governance `mode` is `advisory` by default (preview warnings only); `enforce`
861
- blocks an over-tier run with `GOVERNANCE_BLOCKED` until the tier is raised, the
862
- mode is relaxed, or the op is re-called with `override_governance=true`. Ledger
863
- rows, brain edits, and timeline versions record the acting instance
864
- (`stdio` / `network-sse` / `network-http` / `control-panel` / `batch-cli` + pid)
865
- in an `actor` field; the AI
866
- Console's Governance section offers a tier picker + consumption gauges.
867
-
868
- The caps layer:
869
- - Slices `frame_paths` to `frames_per_clip` before the host LLM sees them.
870
- - Downscales each sampled frame in place to `max_frame_dim_pixels` (Pillow;
871
- degrades silently to original-resolution upload if not installed).
872
- - Trims the analysis response payload to `response_chars`, dropping the
873
- largest list/string fields first and marking the trim under `_trimmed`.
874
- - Records actual token usage from the host's `commit_vision` payload's
875
- optional `usage: {vision_tokens, ...}` block. Hosts that don't report
876
- tokens still get `frames_uploaded` recorded.
877
-
878
- Wall-clock timeout + cumulative-budget refusal are implemented in
879
- `src/utils/analysis_caps.py` and ready to hook at additional call sites in
880
- the analysis pipeline; the initial integration is at frame sampling +
881
- response construction + commit_vision usage recording.
882
-
883
- **Declared edits** — when the brain (or an agent acting deliberately) wants to
884
- measure an edit, pass `metric`, `direction`, and `rationale` in the params of
885
- the destructive call. The hook captures `before_value` and `after_value` from
886
- the live timeline (using the metric vocabulary in `brain_edits.py`) and writes
887
- them to the `brain_edits` row. Without these, the edit is still logged but with
888
- null metric — gives history without requiring deliberate intent.
889
-
890
- Supported metrics: `duration_seconds`, `avg_performance_score`, `clip_count`,
891
- `gap_count`, `total_gap_seconds`, `redundancy_score`.
892
-
893
- **`timeline`** — Timeline operations: tracks, clips, import/export, generators.
894
-
895
- Key actions:
896
- - `list` — all timelines in the project
897
- - `get_current` — current timeline info
898
- - `set_current(index)` — switch timeline by 1-based index
899
- - `get_track_count(track_type)` — track_type: `"video"`, `"audio"`, `"subtitle"`
900
- - `get_transcript(with_timecodes?)` — read the subtitle track(s) as transcript
901
- text `{text, cue_count, has_subtitles, cues}`
902
- - `propose_cuts(cues?, long_pause_frames?)` — DRY-RUN: mechanically detect
903
- candidate cuts (fillers, long pauses, repeats) from the transcript; proposes only
904
- - `apply_cuts(cuts, dry_run?, confirm_token?)` — apply a CutList as lift/ripple
905
- deletes. DRY-RUN by default; applying is destructive (confirm-token gated, a
906
- timeline version is archived first). Cuts apply latest-first
907
- - `add_track(track_type, sub_type?)` / `delete_track(track_type, index)`
908
- - `get_items(track_type, index)` — items on a track
909
- - `clip_where(track_type?, track_index?, name_contains?, duration_lt?, duration_gt?)` —
910
- (v2.28.0+) return clips on the current timeline matching named filters (AND),
911
- instead of walking tracks by hand. Filters may be passed inline or as a
912
- `filters` dict; a mistyped filter name is rejected rather than silently
913
- matching everything. Returns `{clips, match_count, total_clips}`.
914
- - `delete_clips(clip_ids, ripple?)` — IDs are unique IDs from `get_items`
915
- - `duplicate_clips(clip_ids?, selected?, target_track_index?, track_offset?, placement?, record_frame?, record_frame_offset?, copy_properties?, include_linked?)` —
916
- duplicate existing video timeline items by re-appending the same Media Pool
917
- item with the same source trim; `selected=True` uses Resolve's selected/current
918
- item when available, `placement` supports `"same_time"`, `"offset"`,
919
- `"at_playhead"`, `"track_above"`, `"after_source"`, and `"next_gap"`, and
920
- `include_linked=True` duplicates linked audio and restores link state.
921
- `copy_properties` can copy `transform`, `crop`, `composite`, `audio`,
922
- `retime`, `dynamic_zoom`, `scaling`, `stabilization`, `clip_color`,
923
- `markers`, `flags`, `enabled`, `cache`, `voice_isolation`, `fusion`,
924
- `grades`, `takes`, and `keyframes`; `transitions` is accepted but reported
925
- unsupported because Resolve's public scripting API does not expose transition
926
- cloning. `copy_keyframes=True` adds the `keyframes` group.
927
- - `copy_clips(...)` / `move_clips(...)` — same safe append path; `move_clips`
928
- deletes successfully duplicated source items afterward
929
- - `copy_range` / `duplicate_range` — copy exact video/audio source segments
930
- from `start_frame`/`end_frame` or mark in/out to `record_frame`
931
- - `overwrite_range` — delete whole destination overlaps, then copy the exact
932
- range segment
933
- - `lift_range` — delete whole items in a range; partial overlaps require
934
- `allow_partial_item_delete=True` because Resolve does not expose a safe
935
- partial lift primitive here
936
- - `story_spine_report` — read markers, source ranges, and audio/video structure
937
- into an editor-facing beat report
938
- - `create_variant_from_ranges(name, ranges, markers?, cdl?, dry_run?)` — create
939
- a guarded timeline variant from declarative source ranges, optional markers,
940
- transforms, and CDL
941
- - `bulk_set_item_properties(ops, dry_run?, readback?)` — apply transforms,
942
- crop/composite/audio/property groups to many timeline items in one call
943
- - `apply_look_to_items(target_ids, cdl?|copy_from_item_id?, dry_run?)` — apply a
944
- normalized CDL and/or copy a source grade to multiple video items
945
- - `thumbnail_contact_sheet` / `marker_thumbnail_review` — sample Resolve-rendered
946
- thumbnails under the project analysis root for visual verification
947
- - `edit_kernel_capabilities` — report supported, partially supported, and
948
- unsupported timeline edit kernel behavior
949
- - `probe_edit_kernel_item(clip_ids? selected? timeline_item?)` — read-only
950
- capability/property probe for timeline items, including available item
951
- methods, `GetProperty()` values, known property keys, keyframe counts, and
952
- linked item summaries
953
- - `title_property_scan(clip_id|timeline_item_id|timeline_item)` — inspect
954
- undocumented Edit-page title/generator `TimelineItem.GetProperty()` keys
955
- - `set_title_text(clip_id|..., text, property_key?, as_styled_xml?, try_plain_first?, try_heuristic_keys?, readback?)`
956
- / `bulk_set_title_text(ops, ...)` — update title text via explicit or scanned
957
- keys when the current Resolve build accepts the `SetProperty()` write
958
- - `export(path, type, subtype?)` — type: `"AAF"`, `"EDL"`, `"FCPXML"`, `"DRT"`, etc.
959
- - `insert_generator(name)`, `insert_title(name)`, `insert_fusion_title(name)`
960
- - `get_mark_in_out`, `set_mark_in_out(mark_in, mark_out, type?)`
961
- - `duplicate(name?)` — duplicate the current timeline
962
- - `get_voice_isolation_state(track_index)` / `set_voice_isolation_state`
963
- - `extract_source_frame_ranges(handles?, gap_max?, skip_extensions?)` — return
964
- inclusive source frame ranges for current-timeline video clips, with fixed
965
- handles or gap-only auto handles when `handles=0`
966
-
967
- Timeline Conform / Interchange kernel actions (v2.13.0+) add live-tested
968
- structure, interchange, comparison, missing-media, and relink-planning helpers:
969
-
970
- - `conform_capabilities`
971
- - `probe_timeline_structure(track_types?, include_markers?, include_clip_properties?)`
972
- - `detect_gaps_overlaps(track_types?, min_gap?)`
973
- - `source_range_report(handles?, merge?)`
974
- - `export_timeline_checked(path, format?|type?, subtype?, require_temp_path?, dry_run?)`
975
- - `import_timeline_checked(path, options?, timeline_name?, import_source_clips?, require_temp_path?, dry_run?)`
976
- - `compare_timelines(right_timeline_id?|right_timeline_index?|left_snapshot?, right_snapshot?)`
977
- - `probe_interchange_roundtrip(format?, output_dir?, cleanup_imported?)`
978
- - `detect_missing_media(sanitized?|sanitize_paths?, omit_raw_paths?)`
979
- - `build_relink_plan(search_roots, max_depth?, max_seconds?, max_files_scanned?, skip_search_when_volume_missing?, sanitized?)`
980
- - `conform_boundary_report`
981
-
982
- For offline media, prefer the sanitized readback first:
983
- `timeline(action="detect_missing_media", params={"sanitized": true})`. The
984
- response includes a `diagnosis` block with deduplicated Media Pool items,
985
- missing volume roots, sample basenames, and a recommended next step. If a source
986
- volume such as a camera card is not mounted, `build_relink_plan` skips broad
987
- search by default and reports `skip_reason="missing_source_volume_not_mounted"`;
988
- mount the volume or pass `skip_search_when_volume_missing=false` only when a
989
- bounded scan of approved roots is intentional.
990
-
991
- Audio / Fairlight kernel actions (v2.14.0+) add live-tested audio state,
992
- mapping, voice-isolation, sync, transcription, subtitle, and Fairlight boundary
993
- helpers:
994
-
995
- - `audio_capabilities`
996
- - `probe_audio_track(track_index?)`
997
- - `probe_audio_item(track_type?, track_index?, item_index?)`
998
- - `safe_set_audio_properties(properties, restore?, dry_run?, track_type?, track_index?, item_index?)`
999
- - `audio_mix_capability_report(...)`
1000
- - `voice_isolation_capabilities(track_index?, track_type?, item_index?)`
1001
- - `audio_mapping_report(clip_ids?)`
1002
- - `safe_auto_sync_audio(clip_ids|selected, settings?, dry_run?)` — `settings`
1003
- accepts human-readable keys: `method`/`mode` (`waveform`|`timecode`),
1004
- `channel` (`auto`|`mix`|int), `retain_embedded_audio`, `retain_video_metadata`.
1005
- Unrecognized keys are dropped and echoed back in `ignored_settings` rather than
1006
- silently failing the call.
1007
- - `transcription_capabilities(clip_ids?|selected?)`
1008
- - `subtitle_generation_probe(settings?, allow_generate?)` — `settings` accepts
1009
- human-readable keys resolved to live `SUBTITLE_*`/`AUTO_CAPTION_*` enums:
1010
- `language` (e.g. `english`, `korean`), `preset` (`default`|`teletext`|`netflix`),
1011
- `line_break` (`single`|`double`), `chars_per_line` (1–60), `gap` (0–10).
1012
- Unrecognized keys/values are dropped and echoed in `ignored_settings`; generation
1013
- is read-back verified against the subtitle track count.
1014
- - `fairlight_boundary_report`
1015
-
1016
- **`timeline_markers`** — Markers and playhead on the current timeline.
1017
-
1018
- Key actions: `add(frame|frame_id|timecode?, color?, name?, note?, duration?)`, `get_all`,
1019
- `get_current_timecode`, `set_current_timecode(timecode)`,
1020
- `get_current_video_item`, `get_thumbnail`, `get_thumbnail_image`
1021
-
1022
- Review Annotation kernel actions (v2.10.0+) add a unified review layer across
1023
- timeline, timeline item, and media pool item scopes: `annotation_capabilities`,
1024
- `probe_annotations`, `normalize_marker_payload`, `copy_annotations`,
1025
- `move_annotations`, `sync_marker_custom_data`, `clear_annotations_by_scope`,
1026
- `export_review_report`, and `annotation_boundary_report`. See
1027
- `docs/kernels/review-annotation-kernel.md` for the live-tested scope and boundary map.
1028
-
1029
- For `add`, omit `frame`/`timecode` to create the marker at the current playhead.
1030
- The compound tool accepts `frame`, `frame_id`, and `frameId` aliases.
1031
-
1032
- Note: `get_thumbnail` returns raw pixel data from `GetCurrentClipThumbnailImage()`.
1033
- The dictionary includes `data` (raw bytes as a Python bytes-like object),
1034
- `format`, `width`, `height`, `noOfComponents`, and `depth`. This reflects the
1035
- current frame as rendered by Resolve — including any color grading or effects
1036
- applied — which is different from reading the source file directly.
1037
-
1038
- Use `get_thumbnail_image` when the MCP client can display image content directly.
1039
- It converts the same Resolve thumbnail payload to PNG bytes without writing a
1040
- file to disk.
1041
-
1042
- **`timeline_ai`** — AI/ML analysis on the current timeline.
1043
-
1044
- Key actions: `create_subtitles(settings?)` (human-readable settings resolved to
1045
- `SUBTITLE_*`/`AUTO_CAPTION_*` enums + read-back verified — see
1046
- `subtitle_generation_probe`), `detect_scene_cuts`,
1047
- `grab_still`, `grab_all_stills(source?)`, `analyze_dolby_vision`
1048
-
1049
- ---
1050
-
1051
- ### Timeline Items
1052
-
1053
- Timeline items are identified by `track_type`, `track_index`, and `item_index`
1054
- (all default to `"video"`, `1`, `0` respectively — the first clip on the first
1055
- video track). Always retrieve item IDs via `timeline.get_items` before operating
1056
- on specific items.
1057
-
1058
- **`timeline_item`** — Properties, transform, speed, audio, keyframes.
1059
-
1060
- Key actions:
1061
- - `get_property(key?)` / `set_property(key, value)` — raw property access
1062
- - `get_name` / `set_name(name)`
1063
- - `get_duration`, `get_start`, `get_end`
1064
- - `get_retime` / `set_retime(process?, motion_estimation?)`
1065
- - process: `"nearest"`, `"frame_blend"`, `"optical_flow"` (or 0–3)
1066
- - motion_estimation: integer 0–6
1067
- - `get_transform` / `set_transform(Pan?, Tilt?, ZoomX?, ZoomY?, RotationAngle?, ...)`
1068
- - `get_crop` / `set_crop(CropLeft?, CropRight?, CropTop?, CropBottom?, ...)`
1069
- - `get_composite` / `set_composite(Opacity?, CompositeMode?)`
1070
- - `get_audio` / `set_audio(Volume?, Pan?, AudioSyncOffset?)`
1071
- - `get_voice_isolation_state` / `set_voice_isolation_state(state)` — Resolve
1072
- 20.1+; audio timeline items only
1073
- - `get_keyframes(property)`, `add_keyframe(property, frame, value)`,
1074
- `modify_keyframe`, `delete_keyframe`, `set_keyframe_interpolation`
1075
- - interpolation values: `"Linear"`, `"Bezier"`, `"EaseIn"`, `"EaseOut"`, `"EaseInOut"`
1076
- - `get_unique_id` — use this to get the ID for other tool calls
1077
- - `get_media_pool_item` — get the source clip from the Media Pool
1078
-
1079
- **`timeline_item_markers`** — Markers, flags, clip color on timeline items.
1080
-
1081
- **`timeline_item_fusion`** — Fusion comp management on timeline items.
1082
-
1083
- Key actions: `add_comp`, `get_comp_count`, `get_comp_names`, `export_comp(path, index)`,
1084
- `import_comp(path)`, `delete_comp(name)`, `load_comp(name)`, `rename_comp`,
1085
- `get_cache_enabled`, `set_cache(value)` — value: `"Auto"`, `"On"`, `"Off"`
1086
-
1087
- **`timeline_item_color`** — Color grading on timeline items. Requires Color page
1088
- for most operations.
1089
-
1090
- Key actions:
1091
- - `set_cdl(cdl)` — cdl: `{NodeIndex, Slope, Offset, Power, Saturation}`
1092
- - Slope/Offset/Power can be arrays `[R, G, B]` or strings like `"1.0 1.0 1.0"`
1093
- - `add_version(name, type?)`, `load_version(name, type?)`, `get_version_names(type?)`
1094
- - type: `0` = local, `1` = remote
1095
- - `assign_color_group(group_name)`, `remove_from_color_group`
1096
- - `export_lut(type, path)`
1097
- - `reset_all_node_colors` — Resolve 20.2+; resets node colors for the active
1098
- clip version
1099
- - `stabilize`, `smart_reframe`
1100
- - `create_magic_mask(mode)` — mode: `"F"` forward, `"B"` backward, `"BI"` bidirectional
1101
- (requires DaVinci Neural Engine and Color page)
1102
-
1103
- Color / Grade kernel actions (v2.11.0+) add safer grade inspection and
1104
- boundary helpers: `grade_capabilities`, `probe_grade_item`,
1105
- `probe_node_graph`, `safe_set_cdl`, `safe_copy_grade`, `safe_apply_drx`,
1106
- `safe_export_lut`, `grade_version_snapshot`, `grade_version_restore`,
1107
- `color_group_capabilities`, `gallery_capabilities`, and
1108
- `grade_boundary_report`. See `docs/kernels/color-grade-kernel.md` for the live-tested
1109
- support map, and `docs/guides/color-decision-guide.md` for the practical distinction
1110
- between direct API color controls and opaque full-grade artifacts.
1111
-
1112
- **`timeline_item_takes`** — Take management.
1113
-
1114
- Key actions: `add(clip_id, start_frame?, end_frame?)`, `get_count`,
1115
- `get_selected_index`, `select(index)`, `delete(index)`, `finalize`
1116
-
1117
- ---
1118
-
1119
- ### Gallery
1120
-
1121
- **`gallery`** — Gallery album management.
1122
-
1123
- Key actions: `get_still_albums`, `get_current_album`, `set_current_album(album_index)`,
1124
- `create_still_album`, `create_power_grade_album`
1125
-
1126
- **`gallery_stills`** — Manage stills within an album. Requires Color page.
1127
-
1128
- Key actions:
1129
- - `get_stills(album_index?)` — returns count
1130
- - `get_label(still_index)` / `set_label(still_index, label)`
1131
- - `import_stills(paths)` — paths to `.drx` files
1132
- - `export_stills(folder_path, prefix?, format?, album_index?)`
1133
- - formats: `dpx`, `cin`, `tif`, `jpg`, `png`, `ppm`, `bmp`, `xpm`, `drx`
1134
- - `grab_and_export(folder_path, prefix?, format?, album_index?, cleanup?)` —
1135
- grabs a still from the current frame and exports it in one atomic call.
1136
- Returns `{files, format, folder, cleaned_up}` where each file entry includes
1137
- `data_base64` for image files and `data` (text) for `.drx` grade files.
1138
- `cleanup` defaults to `true` — files are deleted from disk after being inlined.
1139
- Requires Color page with Gallery panel visible.
1140
- - `delete_stills(still_indices)`
1141
-
1142
- ---
1143
-
1144
- ### Node Graphs
1145
-
1146
- **`graph`** — Node graph operations on timeline, timeline item, or color group.
1147
-
1148
- The `source` parameter controls which graph you target:
1149
- - `"timeline"` (default) — the timeline node graph
1150
- - `"item"` — a specific timeline item (needs `track_type`, `track_index`, `item_index`)
1151
- - `"color_group_pre"` / `"color_group_post"` — group pre/post graphs (needs `group_name`)
1152
-
1153
- Key actions: `get_num_nodes(source?)`, `set_lut(node_index, lut_path, source?)`,
1154
- `get_lut(node_index, source?)`, `get_node_label(node_index, source?)`,
1155
- `set_node_enabled(node_index, enabled, source?)`,
1156
- `apply_grade_from_drx(path, grade_mode?, source?)` — grade_mode: `0`=no keyframes,
1157
- `1`=source timecode aligned, `2`=start frames aligned,
1158
- `reset_all_grades(source?)`
1159
-
1160
- **`color_group`** — Manage color groups.
1161
-
1162
- Key actions: `list`, `get_name(group_name)`, `set_name(group_name, new_name)`,
1163
- `get_clips(group_name)`, `get_pre_clip_graph(group_name)`,
1164
- `get_post_clip_graph(group_name)`
1165
-
1166
- ---
1167
-
1168
- ### Fusion
1169
-
1170
- **`fusion_comp`** — Fusion composition node graph operations.
1171
-
1172
- Target a comp either from a timeline item (pass `clip_id`, `timeline_item_id`, or
1173
- `timeline_item={track_type, track_index, item_index}`) or from the active Fusion
1174
- page comp (omit timeline scope).
1175
-
1176
- Key actions:
1177
- - `add_tool(tool_type, x?, y?, name?)` — common types: `Merge`, `Background`,
1178
- `TextPlus`, `Transform`, `Blur`, `ColorCorrector`, `RectangleMask`,
1179
- `EllipseMask`, `Tracker`, `MediaIn`, `MediaOut`, `Glow`, `DeltaKeyer`,
1180
- `UltraKeyer`, `FilmGrain`, `CornerPositioner`
1181
- - `delete_tool(tool_name)`, `get_tool_list(type?)`, `find_tool(name)`
1182
- - `connect(target_tool, input_name, source_tool, output_name?)`
1183
- - `disconnect(tool_name, input_name)`
1184
- - `set_input(tool_name, input_name, value, time?)` /
1185
- `get_input(tool_name, input_name, time?)`
1186
- - `get_inputs(tool_name)` / `get_outputs(tool_name)`
1187
- - `set_attrs(tool_name, attrs)` / `get_attrs(tool_name)`
1188
- - `add_keyframe(tool_name, input_name, time, value)`
1189
- - `get_position(tool_name)` / `set_position(tool_name, x, y)` — read/write a node's
1190
- position on the FlowView canvas; `set_position` returns a position read-back
1191
- - `copy_tool(tool_name, name?, x?, y?)` — duplicate a node (settings copied via a
1192
- temp `.setting` file), optionally renaming and repositioning it
1193
- - `auto_arrange(tool_names?, direction?, spacing?, x?, y?)` — lay tools out in a row
1194
- (`direction="horizontal"`, default) or column (`"vertical"`)
1195
- - `get_comp_info`, `set_frame_range(start, end)`, `get_frame_range`, `render`
1196
- - `start_undo(name?)` / `end_undo(keep?)`
1197
- - `bulk_set_inputs(ops)` — batch set inputs across multiple timeline item comps in
1198
- one call; each op requires timeline scope plus `tool_name`, `input_name`, `value`
1199
- - `bulk_set_expressions(ops)` — batch attach expressions across multiple timeline
1200
- item comps in one call; each op requires timeline scope plus `tool_name`,
1201
- `input_name`, `expression`
1202
- - `group_settings_export(group_name, path, include_advisory?)` — write a
1203
- `GroupOperator` to disk and return a parsed published-input summary
1204
- - `group_settings_splice_inputs(source_path, template_path, dest_path?, source_group_name?, template_group_name?)` —
1205
- replace one `.setting` file's `Inputs = ordered() { ... }` block with the
1206
- matching block from another, preserving inner tools and outer structure;
1207
- balanced-brace parser handles nested `UserControls`
1208
- - `group_settings_load(group_name, settings_path, backup_path?, undo_name?)` —
1209
- apply a `.setting` to a live group with an auto backup and an undo wrap so
1210
- Ctrl+Z reverses the change
1211
-
1212
- Fusion Composition kernel actions (v2.12.0+) add safer graph inspection and
1213
- mutation wrappers around the raw Fusion API:
1214
-
1215
- - `fusion_graph_capabilities`
1216
- - `probe_fusion_comp(include_io?, max_tools?)`
1217
- - `probe_fusion_tool(tool_name, include_io?)`
1218
- - `safe_add_tool(tool_type, name?, dry_run?)`
1219
- - `safe_set_inputs(tool_name, inputs, readback?)`
1220
- - `safe_connect_tools(target_tool, input_name, source_tool, dry_run?)`
1221
- - `fusion_boundary_report(include_io?)`
1222
- - `add_fusion_mask(mask_type?, width?, height?, corner_radius?, center?|center_x?/center_y?,
1223
- angle?, soft_edge?, border_width?, invert?, inputs?, connect_to?, connect_input?, readback?)`
1224
- — one-call Rectangle/Ellipse mask (e.g. rounded corners): adds the mask tool, sets its
1225
- params (0..1), and optionally wires it into `connect_to`'s mask input (`EffectMask` default).
1226
- - `set_text_plus(text, tool_name?, input_name?, readback?)` / `get_text_plus(tool_name?, input_name?)`
1227
- — read/write the text of a Fusion `Text+` tool or Fusion title template (e.g. a "Deep"
1228
- title). Auto-finds the `Text+` tool when `tool_name` is omitted; `input_name` defaults to
1229
- `StyledText`. For non-Fusion generator titles, use `timeline(action="set_title_text")` instead.
1230
-
1231
- ---
1232
-
1233
- ### Render
1234
-
1235
- **`render`** — Render pipeline: jobs, presets, formats, codecs.
1236
-
1237
- Key actions: `add_job`, `list_jobs`, `delete_job(job_id)`, `delete_all_jobs`,
1238
- `start(job_ids?, interactive?)`, `stop`, `is_rendering`, `get_formats`,
1239
- `get_codecs(format)`, `set_format_and_codec(format, codec)`,
1240
- `get_resolutions(format, codec)`, `set_settings(settings)`,
1241
- `list_presets`, `load_preset(name)`, `save_preset(name)`,
1242
- `quick_export_presets`, `quick_export(preset, params?)`
1243
-
1244
- Render / Deliver kernel actions (v2.9.0+) add planning and safety layers:
1245
- `render_capabilities`, `probe_render_matrix`, `probe_render_settings`,
1246
- `validate_render_settings`, `safe_set_render_settings`,
1247
- `prepare_render_job`, `render_job_lifecycle_probe`,
1248
- `quick_export_capabilities`, `safe_quick_export`, and
1249
- `export_render_boundary_report`. See `docs/kernels/render-deliver-kernel.md` for the
1250
- live-tested format/codec, settings, job, and Quick Export boundary map.
1251
-
1252
- ---
1253
-
1254
- ## Common Workflows
1255
-
1256
- ### 1. Connect and verify
1257
-
1258
- ```
1259
- resolve_control(action="launch")
1260
- resolve_control(action="get_version")
1261
- resolve_control(action="mcp_update_status")
1262
- setup(action="get_defaults")
1263
- resolve_control(action="get_page")
1264
- ```
1265
-
1266
- Always call `launch` first in a new session. It is safe to call when Resolve is
1267
- already running.
1268
-
1269
- Use `setup(action="schema")`, `setup(action="get_defaults")`, and
1270
- `setup(action="set_defaults")` when the user wants durable conversation
1271
- defaults for media analysis, metadata publishing, timed markers, report style,
1272
- or MCP update behavior. Setup defaults may shape future tool parameters, but
1273
- confirmed Resolve project writes still require the relevant action's explicit
1274
- confirmation flag.
1275
-
1276
- ### 2. Open a project and navigate timelines
1277
-
1278
- ```
1279
- project_manager(action="list")
1280
- project_manager(action="load", params={"name": "My Film"})
1281
- timeline(action="list")
1282
- timeline(action="set_current", params={"index": 2})
1283
- timeline(action="get_current")
1284
- ```
1285
-
1286
- ### 3. Add clips to Media Pool and build a timeline
1287
-
1288
- ```
1289
- media_storage(action="get_volumes")
1290
- media_storage(action="import_to_pool", params={"items": ["/path/to/clip.mp4"]})
1291
- media_pool(action="get_current_folder")
1292
- media_pool(action="create_timeline", params={"name": "Assembly"})
1293
- media_pool(action="get_selected")
1294
- media_pool(action="append_to_timeline", params={"clip_ids": ["<uuid>", ...]})
1295
- media_pool(action="safe_import_sequence", params={
1296
- "pattern": "/path/to/frames/shot_%04d.dpx",
1297
- "start_index": 1001,
1298
- "end_index": 1048,
1299
- "target_folder": "Master/Plates"
1300
- })
1301
- media_pool(action="media_pool_boundary_report", params={"selected": True, "depth": 2})
1302
- # Positioned append (MediaPool.AppendToTimeline([{clipInfo}, ...])) — e.g. rebuild a subtitle row after delete_clips
1303
- media_pool(action="append_to_timeline", params={"clip_infos": [
1304
- {"clip_id": "<uuid>", "start_frame": 0, "end_frame": 100, "record_frame": 1200, "track_index": 4}
1305
- ]})
1306
- ```
1307
-
1308
- ### 4. Inspect and annotate timeline items
1309
-
1310
- ```
1311
- timeline(action="get_items", params={"track_type": "video", "index": 1})
1312
- timeline(action="duplicate_clips", params={
1313
- "clip_ids": ["<timeline-item-uuid>"], "target_track_index": 2, "record_frame_offset": 120
1314
- })
1315
- timeline(action="duplicate_clips", params={
1316
- "selected": True,
1317
- "placement": "track_above",
1318
- "include_linked": True,
1319
- "copy_properties": ["transform", "crop", "composite", "audio", "dynamic_zoom", "scaling", "stabilization", "clip_color", "markers", "enabled"],
1320
- "copy_keyframes": True
1321
- })
1322
- timeline(action="probe_edit_kernel_item", params={"selected": True})
1323
- timeline(action="copy_range", params={
1324
- "start_frame": 110, "end_frame": 130, "record_frame": 900,
1325
- "track_types": ["video", "audio"], "target_track_index": 2
1326
- })
1327
- timeline_item(action="get_name", params={"track_type": "video", "track_index": 1, "item_index": 0})
1328
- timeline_item(action="get_property", params={"track_type": "video", "track_index": 1, "item_index": 0})
1329
- timeline_markers(action="add", params={"color": "Blue", "note": "Review this"})
1330
- timeline_item_markers(action="add", params={"frame": 100, "color": "Blue", "name": "Review", "note": "Check this", "duration": 1, "track_type": "video", "track_index": 1, "item_index": 0})
1331
- ```
1332
-
1333
- For an exhaustive live boundary map of the timeline edit kernel, run:
1334
-
1335
- ```
1336
- python3.11 tests/live_duplicate_clips_validation.py --output-dir /tmp/timeline-kernel-probe
1337
- ```
1338
-
1339
- The live harness first validates duplicate/range edit behavior, then runs the
1340
- exhaustive probe. It creates disposable projects with synthetic media, emits
1341
- JSON and Markdown reports, and classifies each API surface as `supported`,
1342
- `partially_supported`, `read_only`, `write_only_unverifiable`,
1343
- `version_or_page_dependent`, `unsupported`, `not_applicable`, or `error`.
1344
- See `docs/kernels/timeline-edit-kernel.md` for the maintained support map and current
1345
- Resolve API limitations.
1346
-
1347
- For the Media Pool / Ingest boundary map, run:
1348
-
1349
- ```
1350
- python3.11 tests/live_media_pool_ingest_validation.py --output-dir /tmp/media-pool-ingest-probe
1351
- ```
1352
-
1353
- The harness creates a disposable project, generates synthetic video/audio/still
1354
- and image-sequence fixtures, probes safe import/metadata/annotation/link
1355
- helpers, writes JSON and Markdown reports, deletes the project, and removes the
1356
- generated media directory. See `docs/kernels/media-pool-ingest-kernel.md`.
1357
-
1358
- For the Review Annotation boundary map, run:
1359
-
1360
- ```
1361
- python3.11 tests/live_review_annotation_validation.py --output-dir /tmp/review-annotation-probe
1362
- ```
1363
-
1364
- The harness creates a disposable project, generates synthetic video/audio media,
1365
- probes timeline, timeline item, and media pool item marker/flag/color/report
1366
- behavior, writes JSON and Markdown reports, deletes the project, and removes the
1367
- generated media directory. See `docs/kernels/review-annotation-kernel.md`.
1368
-
1369
- ### 5. Color grading
1370
-
1371
- ```
1372
- resolve_control(action="open_page", params={"page": "color"})
1373
- timeline_item_color(action="set_cdl", params={"cdl": {"NodeIndex": 1, "Slope": [1.1, 1.0, 0.9], "Offset": [0.0, 0.0, 0.0], "Power": [1.0, 1.0, 1.0], "Saturation": 1.0}, "track_type": "video", "track_index": 1, "item_index": 0})
1374
- timeline_item_color(action="add_version", params={"name": "Grade v2", "track_type": "video", "track_index": 1, "item_index": 0})
1375
- timeline_item_color(action="grade_boundary_report", params={"track_type": "video", "track_index": 1, "item_index": 0})
1376
- timeline_item_color(action="safe_export_lut", params={"type": "33ptcube", "path": "/tmp/look.cube", "track_type": "video", "track_index": 1, "item_index": 0})
1377
- ```
1378
-
1379
- For the Color / Grade boundary map, run:
1380
-
1381
- ```
1382
- python3.11 tests/live_color_grade_validation.py --output-dir /tmp/color-grade-probe
1383
- ```
1384
-
1385
- The harness creates a disposable project, generates synthetic color-bar media,
1386
- probes grade, node graph, version, copy, LUT, Gallery, and color-group
1387
- behavior, writes JSON and Markdown reports, deletes the project, and removes
1388
- generated media and exported probe files. See `docs/kernels/color-grade-kernel.md`.
1389
-
1390
- ### 6. Grab a still and read the grade data
1391
-
1392
- ```
1393
- resolve_control(action="open_page", params={"page": "color"})
1394
- gallery_stills(action="grab_and_export", params={"folder_path": "/tmp/stills", "format": "jpg"})
1395
- ```
1396
-
1397
- The response includes `files[].data_base64` (the image as base64) and
1398
- `files[].data` for the companion `.drx` grade file (plain text XML). The
1399
- image reflects the color-graded frame as Resolve sees it, not the raw source.
1400
-
1401
- ### 7. Export the timeline
1402
-
1403
- ```
1404
- timeline(action="export", params={"path": "/tmp/export.edl", "type": "EDL", "subtype": "CMX3600"})
1405
- timeline(action="export", params={"path": "/tmp/export.fcpxml", "type": "FCPXML"})
1406
- timeline(action="export_timeline_checked", params={"path": "/tmp/export.drt", "format": "drt"})
1407
- timeline(action="detect_gaps_overlaps")
1408
- timeline(action="conform_boundary_report", params={"handles": 8})
1409
- ```
1410
-
1411
- For the Timeline Conform / Interchange boundary map, run:
1412
-
1413
- ```
1414
- python3.11 tests/live_timeline_conform_validation.py --output-dir /tmp/timeline-conform-probe
1415
- ```
1416
-
1417
- The harness creates a disposable project, generates synthetic media, builds a
1418
- gapped timeline, probes structure, source ranges, gap/overlap detection,
1419
- interchange export/import/round-trip behavior, synthetic missing-media relink
1420
- planning, writes reports, deletes the project, and removes generated media.
1421
- See `docs/kernels/timeline-conform-interchange-kernel.md`.
1422
-
1423
- For the Audio / Fairlight boundary map, run:
1424
-
1425
- ```
1426
- python3.11 tests/live_audio_fairlight_validation.py --output-dir /tmp/audio-fairlight-probe
1427
- ```
1428
-
1429
- The harness creates a disposable project, generates synthetic video and audio
1430
- media, probes track/item audio state, mappings, voice isolation, property
1431
- writes, auto-sync, transcription, subtitle generation, Fairlight preset listing,
1432
- audio insertion, writes reports, deletes the project, and removes generated
1433
- media. See `docs/kernels/audio-fairlight-kernel.md`.
1434
-
1435
- ### 8. Add and start a render job
1436
-
1437
- ```
1438
- render(action="get_formats")
1439
- render(action="probe_render_matrix")
1440
- render(action="set_format_and_codec", params={"format": "QuickTime", "codec": "H.265 Master"})
1441
- render(action="validate_render_settings", params={"settings": {"TargetDir": "/tmp/renders", "CustomName": "review", "SelectAllFrames": true}, "require_temp_target": true})
1442
- render(action="prepare_render_job", params={"target_dir": "/tmp/renders", "settings": {"CustomName": "review", "SelectAllFrames": true}})
1443
- render(action="add_job")
1444
- render(action="list_jobs")
1445
- render(action="start")
1446
- render(action="is_rendering")
1447
- ```
1448
-
1449
- For the Render / Deliver boundary map, run:
1450
-
1451
- ```
1452
- python3.11 tests/live_render_deliver_validation.py --output-dir /tmp/render-deliver-probe
1453
- ```
1454
-
1455
- The harness creates a disposable project, generates a synthetic timeline, probes
1456
- format/codec/resolution compatibility, validates settings, runs a tiny temp
1457
- render job, writes reports, deletes the project, and removes generated media and
1458
- render outputs.
1459
-
1460
- ### 9. Apply a Fusion effect to a timeline item
1461
-
1462
- ```
1463
- timeline_item_fusion(action="add_comp", params={"track_type": "video", "track_index": 1, "item_index": 0})
1464
- fusion_comp(action="add_tool", params={"tool_type": "Glow", "timeline_item": {"track_type": "video", "track_index": 1, "item_index": 0}})
1465
- fusion_comp(action="set_input", params={"tool_name": "Glow1", "input_name": "Gain", "value": 0.8, "timeline_item": {"track_type": "video", "track_index": 1, "item_index": 0}})
1466
- fusion_comp(action="fusion_boundary_report", params={"timeline_item": {"track_type": "video", "track_index": 1, "item_index": 0}})
1467
- ```
1468
-
1469
- For the Fusion Composition boundary map, run:
1470
-
1471
- ```
1472
- python3.11 tests/live_fusion_composition_validation.py --output-dir /tmp/fusion-composition-probe
1473
- ```
1474
-
1475
- The harness creates a disposable project, generates synthetic video media,
1476
- probes timeline item comp creation, safe tool creation, input writes, graph
1477
- inspection, connections, bulk writes, frame range, and comp export, writes
1478
- reports, deletes the project, and removes generated media. See
1479
- `docs/kernels/fusion-composition-kernel.md`.
1480
-
1481
- ---
1482
-
1483
- ## Error Handling and Recovery
1484
-
1485
- | Error message | Cause | Fix |
1486
- |---|---|---|
1487
- | `"Not connected to DaVinci Resolve"` | Resolve is not running or scripting is disabled | Call `resolve_control(action="launch")`, wait, retry |
1488
- | `"No project open"` | No project is currently loaded | Call `project_manager(action="load", params={"name": "..."})` |
1489
- | `"No current timeline"` | Project has no timeline set as current | Call `timeline(action="set_current", params={"index": 1})` |
1490
- | `"No item at index N"` | `item_index` out of range for the track | Call `timeline(action="get_items", ...)` first to find valid indices |
1491
- | `"Clip not found"` | Stale or wrong `clip_id` | Re-fetch IDs via `media_pool(action="get_selected")` or `folder(action="get_clips")` |
1492
- | `"Gallery not available"` | Not on Color page | `resolve_control(action="open_page", params={"page": "color"})` |
1493
- | `"GrabStill failed"` | Not on Color page or no clip under playhead | Switch to Color page, move playhead over a clip |
1494
- | `"ExportStills failed"` | Gallery panel not open in UI | Instruct user to open Workspace > Gallery |
1495
- | `"Tool '...' not found"` | Wrong tool name in Fusion comp | Use `fusion_comp(action="get_tool_list")` to list available tools |
1496
- | `"Color group '...' not found"` | Group name mismatch | Use `color_group(action="list")` first |
1497
-
1498
- When a tool returns `{"success": False}` without an error key, the underlying
1499
- Resolve API returned `False`. This usually means a precondition was not met
1500
- (wrong page, wrong state, context missing). Check the API reference in
1501
- `docs/reference/resolve_scripting_api.txt` for the specific method.
1502
-
1503
- ---
1504
-
1505
- ## Known Gotchas
1506
-
1507
- **Resolve API object lifetimes** — Objects like timelines, clips, and color groups
1508
- returned by the API are live references that can become stale if the project state
1509
- changes (e.g., the user deletes a timeline). Always re-fetch IDs after any
1510
- destructive action.
1511
-
1512
- **`SetName` on the active timeline** — `timeline(action="set_name")` returns
1513
- `False` if you try to rename the currently active timeline. Switch to a different
1514
- timeline first, rename, then switch back.
1515
-
1516
- **`DeleteProject`** — Returns `False` if the project is currently open. Close it
1517
- first.
1518
-
1519
- **CDL value format** — `set_cdl` accepts Slope/Offset/Power as arrays `[R, G, B]`,
1520
- tuples, or space-separated strings like `"1.0 1.0 1.0"`. All forms are normalized
1521
- internally.
1522
-
1523
- **`GetNodeGraph(0)`** — Passing `0` as `layer_index` to `GetNodeGraph` on a
1524
- timeline item returns `False` in Resolve. Use `get_node_graph` without a
1525
- `layer_index` to get the default graph.
1526
-
1527
- **Gallery export requires the Gallery panel visible** — `ExportStills` only works
1528
- if the Gallery panel is open in the Resolve UI on the Color page. Instruct the
1529
- user to open it via Workspace menu if export fails.
1530
-
1531
- **Python version** — the only hard requirement is Python **3.10+** (the MCP SDK
1532
- floor). There is no upper cap: 3.13/3.14 are accepted, and Python 3.14 is verified
1533
- working against Resolve Studio 20.3.2. On *older* Resolve builds the scripting
1534
- bridge may still fail to load on 3.13+ (`scriptapp("Resolve")` returns `None`);
1535
- `setup`/`doctor` warn on 3.13+ and their connection check surfaces a real failure.
1536
- If that happens, recreate the venv with Python 3.10–3.12 (the lowest-risk range).
1537
- The running server only warns on 3.13+ rather than exiting.
1538
-
1539
- **Resolve version guards** — Resolve 20-specific actions return a clear
1540
- `requires DaVinci Resolve 20.x+` error when called against older builds. Resolve
1541
- 19.1.3 remains the compatibility baseline; Resolve 20 additions were live-tested
1542
- on Resolve Studio 20.3.2.
1543
-
1544
- **Source media integrity** — Do not transcode, convert, create proxies, or write
1545
- derivatives of source media unless the user explicitly asks. Analysis and tests
1546
- should write sidecars or synthetic fixtures, never modify camera originals.
1547
-
1548
- **Windows multi-Python setups** — On Windows with multiple Python installations,
1549
- Resolve 20.3 may crash on import unless `PYTHONHOME` is set to the interpreter
1550
- used to build the venv. The installer handles this automatically; manual configs
1551
- may need it added.
1552
-
1553
- **`item_index` is 0-based** — When specifying `item_index` in params, `0` is the
1554
- first item on the track, not `1`.
1555
-
1556
- **`track_index` is 1-based** — Track indices start at `1`, not `0`.
1557
-
1558
- **Fusion comp scope** — `fusion_comp` actions without a timeline scope target the
1559
- active composition on the Fusion page. If you intend to operate on a specific
1560
- clip's comp, always pass `clip_id`, `timeline_item_id`, or `timeline_item`.
1561
-
1562
- ---
1563
-
1564
- ## Seeing What Resolve Sees (Visual Context)
1565
-
1566
- The server provides two mechanisms to inspect a frame as Resolve has processed it,
1567
- including color grading, effects, and compositing — not just the raw source file.
1568
-
1569
- **`timeline_markers(action="get_thumbnail")`** — Returns raw thumbnail data at
1570
- the current playhead position. The response is a dictionary with keys `data`,
1571
- `format`, `width`, `height`, `noOfComponents`, and `depth`.
1572
-
1573
- **`timeline_markers(action="get_thumbnail_image")`** — Converts the same current
1574
- frame thumbnail to PNG bytes and returns MCP image content without writing a file.
1575
-
1576
- **`gallery_stills(action="grab_and_export", params={...})`** — Grabs a still from
1577
- the current frame on the Color page and returns the image encoded as base64 in the
1578
- response (`files[].data_base64`). This is the most reliable way to get a
1579
- color-graded frame preview as a standard image format (jpg, tif, dpx, etc.)
1580
- that can be passed directly to a vision-capable AI model. Requires the Color page
1581
- with Gallery panel visible.
1582
-
1583
- To use `grab_and_export` for visual inspection:
1584
-
1585
- ```
1586
- resolve_control(action="open_page", params={"page": "color"})
1587
- gallery_stills(action="grab_and_export", params={
1588
- "folder_path": "/tmp/resolve-preview",
1589
- "format": "jpg",
1590
- "cleanup": true
1591
- })
1592
- ```
1593
-
1594
- The response `files[0].data_base64` is a standard JPEG, base64-encoded. Feed it
1595
- to a vision model to describe what Resolve is displaying — including all grading
1596
- and effects applied to the source.
1597
-
1598
- ---
1599
-
1600
- ## Clip ID Reference Pattern
1601
-
1602
- Many tools require a `clip_id` (the UUID of a Media Pool clip) or a timeline item
1603
- identified by `track_type + track_index + item_index`. Use this pattern to resolve
1604
- both:
1605
-
1606
- ```
1607
- # List clips in the Media Pool
1608
- folder(action="get_clips")
1609
- # -> returns [{name, id}, ...] — use id as clip_id
1610
-
1611
- # List items on a timeline track
1612
- timeline(action="get_items", params={"track_type": "video", "index": 1})
1613
- # -> returns [{name, id, start, end, duration}, ...]
1614
- # Use track_type="video", track_index=1, item_index=<position in this list>
1615
- # Or use id to look up later via timeline_item(action="get_unique_id", ...)
1616
- ```
1617
-
1618
- ---
1619
-
1620
- ## API Coverage
1621
-
1622
- All 336 non-deprecated methods of the DaVinci Resolve Scripting API are covered.
1623
- 331 methods have been live-tested across Resolve 19.1.3 Studio and Resolve
1624
- 20.3.2 Studio. Five methods require infrastructure not available in typical
1625
- setups:
1626
-
1627
- | Method | Requires |
1628
- |---|---|
1629
- | `ProjectManager.CreateCloudProject` | Resolve cloud infrastructure |
1630
- | `ProjectManager.LoadCloudProject` | Resolve cloud infrastructure |
1631
- | `ProjectManager.ImportCloudProject` | Resolve cloud infrastructure |
1632
- | `ProjectManager.RestoreCloudProject` | Resolve cloud infrastructure |
1633
- | `Timeline.AnalyzeDolbyVision` | HDR / Dolby Vision content |
1634
-
1635
- The full API reference is in `docs/reference/resolve_scripting_api.txt`.