MCP Connector

Dub videos and audio directly from Claude and any MCP-compatible client.

Pinch is available as a remote MCP connector, so you can dub videos and audio directly from a conversation in Claude.ai, Claude Cowork, and Claude Code — no code required. Connect once with your Pinch account, then just ask.

The connector uses the same dubbing engine as the REST API: automatic voice cloning, 10 languages, $0.50 per minute of input media.

Connect Pinch to Claude

You can add the connector in three ways:

  1. From the Claude connector directory — search for Pinch in Settings → Connectors and click Add.
  2. One-click link — open this URL and confirm:
    https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Pinch&connectorUrl=https://portal.startpinch.com/api/mcp
  3. Manual (custom connector) — Settings → Connectors → Add custom connector, then enter:
    • Name: Pinch
    • URL: https://portal.startpinch.com/api/mcp

When you connect, Claude opens Sign in with Pinch. Log in with your Pinch account and approve the access you want to grant:

ScopeWhat it allows
Dub videos and audioCreate dubbing jobs, check status, and download results. Jobs are billed to your Pinch wallet.
Manage API keysCreate, list, and revoke Pinch API keys on your behalf (see Build dubbing into your app).

Both scopes are selected by default. You can revoke access at any time from the Developer Portal.

Use it

Once connected, just describe what you want. For example:

  • “Dub this video into Spanish” — Claude gives you a link; drop your file in and dubbing starts automatically.
  • “Dub this into Japanese: https://cdn.example.com/talk.mp4” — a direct file URL works too.
  • “What languages can Pinch dub into?”
  • “Check on my last dubbing job and give me the download link when it’s ready.”

To dub a local file, Claude hands you a one-click upload link (no public URL, no login). To dub from a direct file URL (a link straight to the media file — not a YouTube or other webpage/streaming link), Claude can submit it directly. In Claude Code, Claude can upload a local file itself and skip the link entirely. Claude then polls until the dub is done and returns the download URL — dubbing is asynchronous, so processing takes a few minutes per minute of input. For longer files, Claude may suggest Dubbing Studio, where you can confirm speaker identification before generating the dub.

Available tools

ToolDescription
upload_and_dubDub a local file — returns a link the user opens to drop in their file; dubbing starts automatically. No public URL needed.
dub_videoDub from a direct file URL (a link straight to the media file — not YouTube/streaming pages).
get_upload_urlFor Claude Code: get a presigned URL to upload a local file programmatically, then dub_video.
get_dub_statusCheck a job’s status and progress.
get_dub_resultGet a fresh download URL (and subtitles) for a completed job.
list_dubsList your recent dubbing jobs.
list_supported_languagesList supported languages, pricing, and limits.
get_balanceCheck your Pinch wallet balance.
create_dubbing_api_keyCreate a REST API key (requires the Manage API keys scope).
list_dubbing_api_keysList your API keys (previews only).
revoke_api_keyDeactivate an API key.

Lip sync

upload_and_dub and dub_video take a lipsync option that regenerates the speaker’s mouth to match the new audio, so the video matches what is being said.

Video input only, off by default, and billed at $1.00 per minute instead of $0.50. It adds processing time, roughly 3x the length of the clip. If the lipsync pass fails you still get the dub, billed at the $0.50 rate. If lip sync is ever switched off, list_supported_languages reports that, and asking for it returns an error rather than a dub whose mouth was never touched.

Regenerating in the same language

Setting target_lang to the language already being spoken re-speaks the file in the speaker’s own cloned voice instead of translating it, tidying up disfluencies along the way — “clean up this recording” rather than “dub this into Spanish”.

It re-speaks the whole file, so the original performance is replaced everywhere. That makes it the right tool for tidying a whole take, and the wrong one for correcting a few seconds of one that is otherwise good.

Supplying your own script

upload_and_dub and dub_video take a transcript_srt option: the contents of an SRT saying exactly what should be spoken and when. Translation is skipped and those cues are spoken verbatim in the cloned voice.

This is what makes a review loop possible. Dub once, read subtitles_translated_url off the finished job, fix whatever is wrong, and resubmit the corrected file against the same media — “the product name is spelled wrong in three places, fix it and re-dub”.

It also works when the target language is the one already being spoken, which turns it into a rewrite: supply the transcript with the changes you want and the speaker says the new version in their own voice.

Each cue is spoken inside its own window. A line too long for its window is sped up slightly, and rewritten shorter only if that is not enough — so the wording may not survive verbatim, and subtitles_translated_url on the finished job shows what was actually said. A line shorter than its window is left alone and the remaining time becomes a pause; nothing is invented to fill it. Keeping each cue close to the length of the speech it replaces avoids rewrites entirely.

Supported languages

English (en), Spanish (es), French (fr), German (de), Italian (it), Portuguese (pt), Russian (ru), Japanese (ja), Korean (ko), Chinese (zh). Source language is detected automatically.

Requirements & limits

  • A Pinch wallet balance of at least $1.00 (top up in the Developer Portal). Ask Claude “what’s my Pinch balance?” to check.
  • Max input 60 minutes / 2 GB. Pricing is $0.50 per minute of input media.
  • Provide a file by uploading it (Claude gives you a link) or via a direct file URL. YouTube/Vimeo/Drive and other webpage links are not supported.

Build dubbing into your app

If you’re building with Claude (e.g. in Claude Code) and want dubbing in your own application, the connector can mint a REST API key for you — no dashboard trip required. With the Manage API keys scope granted, ask:

“Create a Pinch API key for my app and show me how to call the dubbing API.”

Claude calls create_dubbing_api_key and returns a key (shown once — store it as a secret), then you can call the Dubbing REST API directly:

curl -X POST https://api.startpinch.com/api/dubbing/jobs \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "source_url": "https://example.com/video.mp4", "target_lang": "es" }'

See the Dubbing Quickstart for the full submit → poll → download flow.