A real screenwriting app your AI agent can drive

Cold Open is a free, open-source screenwriting app with an MCP server built in. Connect Claude, Cursor or any MCP client, and watch your agent's edits land in the script as tracked changes, for you to accept or reject.

Version 0.1.0-alpha.3, an early alpha. Windows, macOS and Linux. Nothing connects to any agent unless you set it up.

Cold Open's changes panel listing a writer's edits and an agent's edit, each with Accept and Reject, beside the page where the agent's sentence is marked in its own color.

Connect your agent

The MCP server is coldopen mcp, a local server over standard input and output. Install Cold Open, make sure coldopen is on your PATH (the Windows installer and the Linux .deb put it there; on macOS, choose Install the command-line tool in the app's palette), then add it to your client.

Claude Code

claude mcp add coldopen -- coldopen mcp

From Claude Code's documentation on MCP: code.claude.com/docs/en/mcp.

Claude Desktop

In Claude Desktop, open Settings ▸ Developer ▸ Edit Config, add this to claude_desktop_config.json, then restart Claude Desktop:

{
  "mcpServers": {
    "coldopen": { "command": "coldopen", "args": ["mcp"] }
  }
}

From the MCP project's guide to local servers in Claude Desktop: modelcontextprotocol.io.

Cursor

Add the same mcpServers entry to .cursor/mcp.json in your project, or to ~/.cursor/mcp.json for every project.

From Cursor's documentation: docs.cursor.com/context/mcp.

VS Code

Add this to .vscode/mcp.json in your workspace:

{
  "servers": {
    "coldopen": { "type": "stdio", "command": "coldopen", "args": ["mcp"] }
  }
}

From VS Code's documentation: code.visualstudio.com.

Any other client

Every client that runs a local ("stdio") server needs the same two things: the command coldopen and the argument mcp. A desktop app may not see your terminal's PATH; then give the full path, which the agents guide lists for each OS.

How it works with the app

What agents can't do

The command line and the commands

The same commands work without an agent:

coldopen export script.fountain script.pdf
coldopen convert draft.fdx draft.fountain
coldopen diff draft2.fdx draft3.fdx
coldopen repair broken.fdx repaired.fdx
coldopen serve --stdio      # newline-delimited JSON, for any language

See the command-line reference and every command and its parameters.

Privacy

Cold Open makes no network connections. Nothing connects to an agent by default: the app and coldopen mcp talk through a socket or pipe only your user account can open. An agent you connect is a separate program, and what it reads from your script, and where it sends it, is up to that agent and its own privacy policy. See Privacy.

Download Cold Open The agents guide