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:
- From the Claude connector directory — search for Pinch in Settings → Connectors and click Add.
- 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 - Manual (custom connector) — Settings → Connectors → Add custom connector, then enter:
- Name:
Pinch - URL:
https://portal.startpinch.com/api/mcp
- Name:
When you connect, Claude opens Sign in with Pinch. Log in with your Pinch account and approve the access you want to grant:
| Scope | What it allows |
|---|---|
| Dub videos and audio | Create dubbing jobs, check status, and download results. Jobs are billed to your Pinch wallet. |
| Manage API keys | Create, 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
| Tool | Description |
|---|---|
upload_and_dub | Dub a local file — returns a link the user opens to drop in their file; dubbing starts automatically. No public URL needed. |
dub_video | Dub from a direct file URL (a link straight to the media file — not YouTube/streaming pages). |
get_upload_url | For Claude Code: get a presigned URL to upload a local file programmatically, then dub_video. |
get_dub_status | Check a job’s status and progress. |
get_dub_result | Get a fresh download URL (and subtitles) for a completed job. |
list_dubs | List your recent dubbing jobs. |
list_supported_languages | List supported languages, pricing, and limits. |
get_balance | Check your Pinch wallet balance. |
create_dubbing_api_key | Create a REST API key (requires the Manage API keys scope). |
list_dubbing_api_keys | List your API keys (previews only). |
revoke_api_key | Deactivate 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.