Weftly

MCP server & REST API — for developers and Claude users

Weftly for Developers & Claude Users

The MCP server for video — transcribe, summarize, and clip from Claude

Weftly is an MCP server for video processing. Every tool — transcribe, summarize, find clips, cut horizontal and vertical clips — is one MCP call. Works in Claude Desktop, claude.ai, Claude Code, Cursor, and any MCP-compatible host. Pay per job with a card or USDC. No subscription.

Claude Desktop or claude.ai

No code. No crypto wallet. Add Weftly as a connector and pay by card whenever you run a job. Works in Claude Desktop, claude.ai, and VS Code Copilot.

1

Add the Weftly MCP connector

In Claude Desktop: open Settings → Integrations and add a custom MCP server.

On claude.ai: open Settings → Integrations and paste the endpoint URL.

https://api.weftly.ai/mcp
2

Ask Claude to run a job

Drop a file into Claude or reference a URL and ask naturally:

"Transcribe this podcast recording" "Find the best clips from this interview" "Summarize this meeting — give me the key points"
3

Pay by card when prompted

When a paid job runs, Claude surfaces a Stripe Checkout link — click it, pay by card, and Claude automatically resumes the job. No wallet setup required.

Visa / Mastercard Apple Pay Google Pay
4

Download your results

Claude delivers your transcript, summary, or clip candidates directly in the chat — with download links that are valid for 24 hours.

Card payment on every job. Weftly uses a dual-rail payment system — browser-based MCP hosts (Claude Desktop, claude.ai, VS Code Copilot) always get a Stripe Checkout link. You never need a crypto wallet. Prices: $0.50–$2.00 per job. Files auto-delete after 24h. See privacy policy and terms of use.

Claude Code

Install the Weftly plugin to wire up the MCP server and payment signing automatically. Agents pay in USDC on the Tempo network via mppx — no checkout required. Prefer to skip the wallet? Skip step 1; every paid call also returns a Stripe Checkout link you can open in a browser.

1

Create and fund an mppx wallet

mppx is the payment CLI that handles USDC payments autonomously.

# Install mppx and create a wallet npx mppx account create npx mppx account view # copy the wallet address

Fund with USDC on the Tempo network. A few dollars covers many jobs — most cost $0.50–$2.00. See github.com/wevm/mppx for the CLI.

2

Install the Weftly plugin

In Claude Code, run:

/plugin marketplace add woven-record-media/weftly-plugins /plugin install weftly-setup@weftly /weftly-setup:weftly-setup --wallet <your-wallet-address>

This registers the MCP server at api.weftly.ai/mcp and configures automatic MPP payment signing — so Claude can pay and retry without interrupting you.

3

Ask Claude to run a job

"Transcribe interview.mp4" "Find clips from this call recording" "Summarize the meeting and give me show notes"

Claude handles the upload, payment, and polling automatically. You get the result when it's done.

Cursor, OpenClaw, Goose, or your own client? See the Custom MCP client tab — same endpoint, with copy-pasteable curl, the real payment_required response shape, and the protocol details you need to wire up your own host. Plugin source: github.com/woven-record-media/weftly-plugins. mppx CLI: github.com/wevm/mppx.

HTTP / REST API

Full OpenAPI spec. Same job pipeline as the MCP server — create, upload, pay, poll, download. Supports MPP (USDC via mppx) and Stripe Checkout for payment.

1

Read the OpenAPI spec

https://api.weftly.ai/.well-known/openapi.json
2

Create a session and a job

# Create a session POST /api/v1/sessions # Create a job (returns upload URL + payment info) POST /api/v1/jobs { type: "transcribe", filename: "episode.mp3" } # Upload the file PUT <presigned-upload-url> <file bytes> # Pay via Stripe or MPP, then complete upload POST /api/v1/jobs/:id/complete-upload # Poll until done GET /api/v1/jobs/:id
3

Payment

The API returns HTTP 402 with an MPP challenge when payment is required. Sign the challenge with mppx and retry with Authorization: Payment <credential>. Stripe Checkout is also supported for user-facing flows — see payment_url in the 402 response.

Discovery. Machine-readable payment discovery lives at /.well-known/mpp.json. OpenAPI at /.well-known/openapi.json. Agent Card (A2A) at /.well-known/agent.json.

Build your own MCP client (or use Cursor, OpenClaw, Goose…)

Weftly speaks plain MCP Streamable HTTP — no SDK required, no session, no API key. Payment-per-call is the auth. Below is everything to call the server from any MCP-aware client or your own code. All snippets are real captures from api.dev.weftly.ai/mcp.

1

Connect

Single endpoint. Stateless — no Mcp-Session-Id is issued or required. No registration.

# MCP Streamable HTTP · JSON-RPC 2.0 · protocol version 2025-03-26 https://api.weftly.ai/mcp

An initialize call returns serverInfo.name = "weftly" and the server's instructions (the same tool-selection guidance the MCP host receives).

2

List the tools

curl -X POST https://api.weftly.ai/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -H "MCP-Protocol-Version: 2025-03-26" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Returns 8 tools — the 5 product tools plus three lifecycle helpers: transcribe, summarize, find_clips, extract_clip, extract_vertical_clip, complete_upload, get_job_status, mpp_smoke_test. Each carries its own JSON Schema in inputSchema — discover at runtime, no docs scraping.

3

Call a tool — receive the payment challenge

curl -X POST https://api.weftly.ai/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json, text/event-stream" \ -H "MCP-Protocol-Version: 2025-03-26" \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/call", "params":{"name":"transcribe", "arguments":{"filename":"podcast.mp3"}}}'

The response wraps a payment_required envelope inside the standard MCP text content block. Parse the inner JSON to get the dual-rail challenge:

{ "error": { "type": "payment_required", "job_id": "8cd079ef-1afb-4a03-bc50-fb5410d080b4", "job_type": "transcribe", "amount_cents": 50, "currency": "USD", "rails": ["tempo", "stripe_spt"], "payment_challenge": { "scheme": "Payment", "www_authenticate": "Payment id=\"...\", method=\"tempo\", request=\"<b64url>\", expires=\"...\", Payment id=\"...\", method=\"stripe\", request=\"<b64url>\", expires=\"...\"" }, "payment_url": "https://checkout.stripe.com/c/pay/cs_test_...", "expires_at": "2026-05-04T16:33:48.587Z", "retry_hint": "..." } }
4

Pay, then complete the job

Crypto path (autonomous). Sign payment_challenge.www_authenticate with mppx and re-call the same tool with job_id and payment_credential = "Payment <jwt>". Returns a presigned upload URL.

Card path (human-in-the-loop). Open payment_url in a browser. Once the Stripe webhook lands, re-call the same tool with just job_id — the upload URL comes back the same way.

Then PUT the file to the presigned URL, call complete_upload(job_id), and poll get_job_status(job_id) until status: "completed". Outputs come back as presigned download URLs valid for 24h.

Reference. OpenAPI: /.well-known/openapi.json · Payment discovery: /.well-known/mpp.json · Agent card (A2A): /.well-known/agent.json · mppx CLI: github.com/wevm/mppx.
Stripe payments are auto-refunded if the pipeline fails after payment lands. Rate limits aren't usually hit in normal use — email us if you need higher limits.

Available tools

What you can call

Five product tools plus two lifecycle helpers. All tools run through the same payment gate — pay once per job.

Tool What it does Price Status
transcribe Word-level SRT + JSON transcript from any audio or video file. Editor-ready timestamps, full text. $0.50 audio
$1.00 video
Live
summarize AI summary (key points, topics, action items) plus the full SRT transcript in one call. $0.75 audio
$1.25 video
Live
find_clips Analyzes a video and returns ranked clip candidates — titles, hooks, timestamps, full text, score. Transcript is a free byproduct. $2.00 Live
extract_clip Cut one or more segments from a prior job into a composed horizontal MP4. No re-upload. Same flat price for single cut or multi-segment reel. $0.50 / cut Live
extract_vertical_clip Cut a 9:16 vertical short from a prior job — center-cropped, ≤90 seconds, ready for TikTok, Reels, and Shorts. $0.50 / cut Live
complete_upload Lifecycle — call after PUT-ing a file to start processing. Mirrors POST /jobs/:id/complete-upload.
get_job_status Lifecycle — poll status, retrieve download URLs, or recover a lost payment challenge or upload URL.
Source reuse — no re-upload for derivative cuts. After find_clips / transcribe / summarize completes, the source video stays in storage — 72h for find_clips, 24h for transcribe and summarize. Pass the parent job_id to extract_clip or extract_vertical_clip as source_job_id and the cut runs from the stored source — $0.50 per cut, no re-upload, no re-transcribe. Re-using the same source_job_id across multiple extract calls is the supported pattern for clip pipelines. Check expires_at on get_job_status for the parent's TTL.

Payment

Two rails, one job

Weftly detects your host and returns the right payment method. You never need to configure this — it just works.

Card (Stripe Checkout)

When you're in a browser-based MCP host, the payment_required response includes a Stripe Checkout link. Click it, pay by card or Apple/Google Pay, and Claude resumes the job automatically. No wallet required.

claude.ai Claude Desktop VS Code Copilot

USDC on Tempo (mppx)

Agent hosts sign the MPP challenge with mppx — sub-second, no human in the loop. Fund a wallet once; the agent pays autonomously per job. On-chain receipt for every transaction.

Claude Code Cursor Any MCP + mppx

FAQ

MCP server questions

What Weftly's MCP server does, how to connect it, and how payment works.

What is the Weftly MCP server?

Weftly is an MCP (Model Context Protocol) server that gives Claude and other AI agents video processing tools — transcribe, summarize, find clips, and cut horizontal or 9:16 vertical clips. The endpoint is https://api.weftly.ai/mcp. It's pay-per-job with no subscription and no account.

How do I add the Weftly MCP server to Claude Desktop?

In Claude Desktop, open Settings → Connectors → Add custom connector and paste the MCP server URL https://api.weftly.ai/mcp. No code or crypto wallet required — the first time you run a paid tool, Weftly returns a Stripe Checkout link and you pay by card.

Which MCP clients does Weftly work with?

Claude Desktop, claude.ai, Claude Code, VS Code Copilot, Cursor, Goose, and any MCP-compatible host. Terminal and agent hosts can pay with USDC via mppx; browser-based hosts pay by card through Stripe Checkout.

Is there an MCP server for video transcription and editing?

Yes — Weftly is an MCP server built for video. It transcribes audio and video to SRT, summarizes long recordings, finds the best clip candidates in a long video, and cuts horizontal or vertical clips for TikTok, Reels, and Shorts. Each tool is a single MCP call.

How does payment work with the Weftly MCP server?

Pay-per-job: $0.50–$2.00 per call, no subscription. Calling a paid tool returns a payment challenge. Terminal and agent hosts sign it with USDC via mppx; browser MCP hosts open a Stripe Checkout link and pay by card. Once paid, the tool runs.

Do I need a crypto wallet to use the Weftly MCP server?

No. A crypto wallet is optional. Browser-based MCP hosts like Claude Desktop and claude.ai pay by card through Stripe Checkout. A wallet (via mppx) is only needed for fully automated agent payments with USDC.


Ready to connect?

Add the MCP endpoint and start building — or try the browser chat first to see what the tools return.

MCP endpoint OpenAPI spec Try in browser