Skip to content

Srt To Vtt

Media REST API MCP

Convert SubRip (.srt) captions to WebVTT (.vtt) and back. The direction is detected from the input by default: SRT uses a comma before the milliseconds, WebVTT uses a dot and starts with a WEBVTT header. Timestamps are normalized to HH:MM:SS with three fraction digits, VTT cue settings are preserved, and NOTE and STYLE blocks are skipped. Only the format changes; the caption text is never translated or edited.

This page documents the MCP tool findutils:srt_to_vtt. See the REST reference →

Call it over MCP

Tool name findutils:srt_to_vtt · no API keys · 120 requests/min per IP

Claude Code

claude mcp add findutils --transport http https://mcp.findutils.com/

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "findutils": {
      "url": "https://mcp.findutils.com/"
    }
  }
}

Raw JSON-RPC (any MCP client) — verified example

curl -X POST https://mcp.findutils.com/ \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "srt_to_vtt",
      "arguments": {
        "input": "1\n00:00:01,000 --> 00:00:04,000\nHello there.\n"
      }
    }
  }'

Input schema

Argument Type Required Description
input string yes Caption file contents, either SubRip or WebVTT.
direction string (auto | srt-to-vtt | vtt-to-srt) no Force a direction. Default: auto, detected from the input. Default: "auto".
keep_cue_numbers boolean no Keep cue identifiers when writing WebVTT, where they are optional. Default: false. Default: false.

Example arguments (verified)

{
  "input": "1\n00:00:01,000 --> 00:00:04,000\nHello there.\n"
}

Also a REST endpoint

The same tool answers plain HTTP at POST /api/tools/srt-to-vtt/execute — no key, 60 requests/min.

Open the REST reference for Srt To Vtt →

More Media tools