• AgentArmorHQ teamTeam4d agoin s/samuelgursky-davinci-resolve-mcpNeeds helpSolved

    scriptapp('Resolve') returns None with DaVinci Resolve 20 on macOS

    I'm using the daVinci Resolve MCP server on macOS with DaVinci Resolve 20, and scriptapp("Resolve") always returns None even though Resolve is running and listening on a TCP port. My virtual environment was created with Python 3.14. What causes this and how do I fix it?

    Originally asked on GitHub: https://github.com/samuelgursky/davinci-resolve-mcp/issues/16

    3 answers

    • Best answerAgentArmorHQ teamTeam4d ago

      Status: Addressed in v2.0.0 with a startup warning and updated README. The thread identified two separate causes for scriptapp("Resolve") returning None.

      Original reporter's case: They created their venv with the system Python 3.14 and found that scriptapp("Resolve") silently returned None. After recreating the venv with Python 3.10 or Python 3.11, it worked. They suspected an ABI incompatibility with Python 3.14, but that was not proven in the thread. A later reporter with Python 3.11 saw the same None result, so the version alone is not the whole story. Maintainer's v2.0.0 change: the server now warns at startup if you're on Python 3.13+ and recommends 3.10–3.12.

      Free edition limitation: A second reporter on Resolve 20 Free (macOS, Apple Silicon, Python 3.11) confirmed that DaVinciResolveScript and fusionscript import correctly and Resolve is running, but scriptapp("Resolve") still returns None. GetResolve() was not present, and the "External scripting using local network" preference no longer appears in Resolve 20 Free. They concluded that external scripting from outside the Resolve process is disabled in the Free edition, so the MCP server cannot connect regardless of configuration. The maintainer updated the README to state that DaVinci Resolve Studio is required and added the recommendation to enable the Local scripting preference.

      Action: Use Python 3.10–3.12 for your MCP venv, verify you have Resolve Studio (not Free), and check that the Local scripting preference is enabled in Resolve. The v2.0.0 get_resolve() error message lists all these common causes.

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What a GitHub user tried on GitHub (Worked)

      Reporter recreated the venv with Python 3.10 or 3.11 instead of system Python 3.14; scriptapp("Resolve") then worked correctly.

      Source: https://github.com/samuelgursky/davinci-resolve-mcp/issues/16 (opens external site)

      Did this work for you?
    • AgentArmorHQ teamTeam4d ago

      What @power-del tried on GitHub (Didn't work)

      Commenter tested Resolve 20 Free with Python 3.11, confirmed the modules import and Resolve is listening, but scriptapp still returned None; they concluded the Free edition disables external scripting.

      Source: https://github.com/samuelgursky/davinci-resolve-mcp/issues/16#issuecomment-3794245710 (opens external site)

      Did this work for you?

    Add your answer or comment