CutConvert

Convert subtitles, transcripts, broadcast captions (SCC/MCC/STL), EDLs, and Premiere files.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
84%
Naming quality
92%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainin edit_export

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,964Tokens (tool definitions)
~2.2 KBTypical response size
Moderate attention impact (1.53% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "converter": {
      "url": "https://cutconvert.com/api/mcp"
    }
  }
}

Remote endpoints

https://cutconvert.com/api/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_converters

List every conversion CutConvert supports (source format, output format, and the target id to pass to convert_file).

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢convert_file(filename, content, content_base64, caption_language, frame_rate, ...)

Convert a subtitle, transcript, caption, EDL, FCPXML, or Premiere .prtranscript file. Pass text file contents in `content`; pass binary files (.prtranscript) as base64 in `content_base64`. The filename extension drives format detection. Use `target` from list_converters to pick the output, or leave it as "auto" to get the default output for the detected format. Returns the converted file content (text formats inline; DOCX/ZIP as base64).

Input Schema

{
  "type": "object",
  "properties": {
    "filename": {
      "type": "string",
      "description": "Original file name including extension, e.g. \"episode1.srt\" — drives format detection."
    },
    "content": {
      "type": "string",
      "description": "The file content for text formats (SRT, VTT, TXT, EDL, JSON, FCPXML, …)."
    },
    "content_base64": {
      "type": "string",
      "description": "Base64-encoded bytes for binary formats (.prtranscript)."
    },
    "caption_language": {
      "type": "string",
      "description": "BCP 47 caption language for ITT/TTML, e.g. en-US or ja. Defaults to the source language or undetermined."
    },
    "frame_rate": {
      "type": "string",
      "enum": [
        "auto",
        "23.976",
        "24",
        "25",
        "29.97",
        "30",
        "50",
        "59.94",
        "60"
      ],
      "description": "Frame rate for frame-based outputs such as ITT. Defaults to auto."
    },
    "target": {
      "type": "string",
      "enum": [
        "auto",
        "rppXml",
        "rppDrp",
        "rppFcpxml",
        "rppCapcut",
        "rppAaf",
        "prprojAaf",
        "fcpxmlAaf",
        "prprojRpp",
        "sesxRpp",
        "avbCsv",
        "avbXml",
        "avbFcpxml",
        "avbDrp",
        "avbAaf",
        "avbRpp",
        "avbShotlist",
        "avbEdl",
        "srtJson",
        "srtAvidTxt",
        "txtSrt",
        "edlCsv",
        "txtJson",
        "wordJson",
        "srtSbv",
        "srtAss",
        "srtVtt",
        "prtranscriptSrt",
        "prtranscriptVtt",
        "vttSrt",
        "srtText",
        "vttText",
        "prprojXml",
        "prprojDrp",
        "aafXml",
        "aafDrp",
        "fcpxmlXml",
        "fcpxmlDrp",
        "fcpxmlEdl",
        "fcpxmlShotlist",
        "drpXml",
        "prprojCsv",
        "prprojEdl",
        "prprojFcpxml",
        "drpFcpxml",
        "aafFcpxml",
        "drpCsv",
        "drpEdl",
        "aafCsv",
        "aafEdl",
        "prtranscriptDocx",
        "prtranscriptCsv",
        "capcutSrt",
        "capcutXml",
        "capcutDrp",
        "capcutFcpxml",
        "capcutAaf",
        "imovieCapcut",
        "imovieXml",
        "imovieDrp",
        "imovieFcpxml",
        "prprojCapcut",
        "drpCapcut",
        "fcpxmlCapcut",
        "aafCapcut",
        "jsonVtt",
        "jsonDocx",
        "jsonText",
        "sccCsv",
        "mccCsv",
        "stlCsv",
        "fcpxmlDocx",
        "fcpxmlCsv",
        "prtranscriptText",
        "srtItt",
        "srtTtml",
        "sbvSrt",
        "srtDocx",
        "vttDocx",
        "assSrt",
        "jsonJson",
        "jsonSrt",
        "srtCsv",
        "csvSrt",
        "srtFcpxml",
        "fcpxmlSrt",
        "srtScc",
        "sccSrt",
        "srtMcc",
        "mccSrt",
        "srtStl",
        "stlSrt",
        "aafRpp",
        "fcpxmlRpp",
        "drpRpp",
        "drpAaf",
        "avbCapcut",
        "capcutRpp",
        "sesxXml",
        "sesxDrp",
        "sesxFcpxml",
        "sesxCapcut",
        "sesxAaf"
      ],
      "description": "Conversion target id from list_converters, or \"auto\" for the default output."
    }
  },
  "required": [
    "filename"
  ],
  "additionalProperties": false
}
🟢inspect_file(filename, content, content_base64)

Detect the format of a subtitle/transcript/EDL/FCPXML file and report what CutConvert would produce from it, without performing the conversion or using quota.

Input Schema

{
  "type": "object",
  "properties": {
    "filename": {
      "type": "string",
      "description": "Original file name including extension."
    },
    "content": {
      "type": "string",
      "description": "File content (text formats)."
    },
    "content_base64": {
      "type": "string",
      "description": "Base64 bytes (binary formats like .prtranscript)."
    }
  },
  "required": [
    "filename"
  ],
  "additionalProperties": false
}
🟢timecode_calculate(timecode, rate, to_rate, mode)

Parse an SMPTE timecode at a frame rate (including 29.97/59.94 drop-frame) and report its frame count and real elapsed seconds; optionally re-express it at another rate.

Input Schema

{
  "type": "object",
  "properties": {
    "timecode": {
      "type": "string",
      "description": "Timecode like \"01:00:02:12\" (use \";\" before frames for drop-frame)."
    },
    "rate": {
      "type": "string",
      "enum": [
        "23.976",
        "24",
        "25",
        "29.97df",
        "29.97",
        "30",
        "50",
        "59.94df",
        "59.94",
        "60"
      ],
      "description": "Frame rate the timecode is expressed in."
    },
    "to_rate": {
      "type": "string",
      "enum": [
        "23.976",
        "24",
        "25",
        "29.97df",
        "29.97",
        "30",
        "50",
        "59.94df",
        "59.94",
        "60"
      ],
      "description": "Optional target frame rate to convert to."
    },
    "mode": {
      "type": "string",
      "enum": [
        "time",
        "frames"
      ],
      "description": "When converting rates: \"time\" keeps the same real-world moment (conform, default); \"frames\" keeps the frame count (reinterpret)."
    }
  },
  "required": [
    "timecode",
    "rate"
  ],
  "additionalProperties": false
}
🟡edit_export(edit, targets)

Turn an edit into projects that open in CapCut, Premiere Pro, DaVinci Resolve and Final Cut Pro, with captions and titles as each editor's own editable text. Pass a CutConvert Edit JSON document in `edit` and 1 to 4 editors in `targets`. Returns a zip as an embedded resource (application/zip): a folder for each editor and report.json, plus a short text with the warnings and the exports left. The tool sends no media. Each project points to the files at their `path` in the document; a file without a path opens offline, ready to relink. Each call is one export of the Edit API's allowance: 3 a month per network without a key, or an API key's 10 free a month and its packs when the MCP client sends "Authorization: Bearer cck_…". Edit JSON: times are seconds, positions are fractions of the frame, and unknown fields are errors. Every field: https://cutconvert.com/developers/edit-json (JSON Schema: https://cutconvert.com/developers/edit-json/schema.json). A small document: {"cutconvert":"edit/1","name":"My edit","timeline":{"fps":25,"width":1920,"height":1080},"media":[{"id":"a","name":"a.mp4","path":"/Users/sam/Movies/a.mp4","duration":30,"fps":25,"width":1920,"height":1080,"audio":{"streams":[2],"sampleRate":48000}}],"video":[{"clips":[{"media":"a","start":0,"in":2,"out":12}]}],"captions":{"items":[{"start":0.5,"end":3,"text":"Hello"}]}}

Input Schema

{
  "type": "object",
  "properties": {
    "edit": {
      "anyOf": [
        {
          "type": "object"
        },
        {
          "type": "string"
        }
      ],
      "description": "The CutConvert Edit JSON document (version 1), as an object or as a string holding it. At most 8 MB."
    },
    "targets": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "capcut",
          "premiere",
          "resolve",
          "finalcut"
        ]
      },
      "minItems": 1,
      "maxItems": 4,
      "uniqueItems": true,
      "description": "The editors to export for, each once: capcut (a CapCut desktop project folder), premiere (Premiere Pro XML), resolve (a DaVinci Resolve .drp project), finalcut (Final Cut Pro FCPXML)."
    }
  },
  "required": [
    "edit",
    "targets"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools