
Recapfy
io.github.pedrot95devPublished by GitHub account pedrot95devv0.1.8Updated Oct 24, 2026
Ask about a YouTube video or fetch its transcript. Paid per call in USDC on Solana via x402.
Overview
Local MCP server that lets an assistant ask questions about a YouTube video or fetch its timestamped transcript, paying each call in USDC on Solana.
- What you can do
- Ask a question about a YouTube video and get a text answer back, with an optional cap on answer length that drives the price per call (ask). Fetch a video's full transcript as timestamped segments along with its title, channel name and duration (get_transcript). Each call is settled automatically in USDC on Solana through the x402 payment protocol before the result is returned.
- When to use it
- Useful when you want an assistant to summarize, question or quote a specific YouTube video without watching it, and you are willing to pay a small per-call fee from a Solana wallet. It suits desktop MCP clients such as Claude Desktop, Cursor or Cline.
- Requirements
- Runs locally via npx, so Node.js 20 or newer is needed; there is no hosted endpoint. Requires a Solana mainnet wallet funded with USDC and its base58-encoded 64-byte secret key in the SVM_PRIVATE_KEY environment variable. Optional RECAPFY_API_BASE_URL and RECAPFY_ALLOW_INSECURE_TLS are for local development only. Network access to the Recapfy API is required.
Installation
In SourceWeft
- Open Recapfy in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Recapfy MCP
An MCP server that exposes Recapfy's paid endpoints as tools — ask anything about a YouTube video and fetch a video's full transcript — straight from an MCP-capable agent like Claude Desktop, Cursor, or Cline. It runs locally — there's no hosted Recapfy MCP endpoint; you launch your own copy.
Each call is paid in USDC on Solana (dynamic price, scales with
maxOutputTokens), settled automatically via the x402
protocol. You bring your own wallet; you pay only for what you call.
📦 npm: recapfy-mcp
Prerequisites
- Node.js ≥ 20.
- A Solana wallet funded with USDC on mainnet. You do not need SOL for fees — the API's facilitator sponsors the network fee.
- That wallet's secret key, base58-encoded (the 64-byte form that Phantom's
"Export Private Key" gives you, or
solana-keygen).
⚠️ The key signs real payments. Use a dedicated low-balance wallet, never share it, and never commit it.
Install
No clone or build needed. Add this to your MCP client config (Claude Desktop:
claude_desktop_config.json) and restart the client:
Always use
recapfy-mcp@latest. A barenpx -y recapfy-mcpreuses whatever is in npx's cache and never re-checks the registry, so you can stay pinned to an old build (and miss new tools) indefinitely. The@latesttag forces npx to resolve the newest published version on every launch.
Updating
New versions (including new tools/endpoints) are picked up automatically when two things happen, because of two independent caches:
- npx package cache — using
recapfy-mcp@latest(as above) makes npx fetch the newest published version each launch. Without@latest, npx serves the cached copy and you stay on an old build. - MCP client tool list — clients read the server's tool list once per session. New tools only appear after you fully restart the MCP client (Claude Desktop, Cursor, Cline, …) so it relaunches the server and re-reads the tools.
So after a release: keep @latest and restart your client. If a brand-new
tool still doesn't show up, force a clean fetch:
then restart the client again.
Configuration
Tool: ask
Returns the agent's answer as text. Payment is settled before the answer returns.
The per-call price is dynamic: the API quotes the USDC amount in the 402
challenge based on maxOutputTokens, and your wallet pays whatever is quoted — so
keep maxOutputTokens sensible.
Tool: get_transcript
Returns the video's full transcript as timestamped segments, plus its title,
channelName, and durationSeconds. The text content is a readable, timestamped
transcript; the structured content carries the raw transcript array (each
segment is { timestampInSeconds, text }). The per-call price is flat USDC,
quoted in the 402 challenge and paid automatically.
How payment works
Built on the official Coinbase x402 v2 client packages (@x402/fetch,
@x402/svm, @x402/core) plus @solana/kit for signing:
- The tool POSTs to the matching endpoint under
${RECAPFY_API_BASE_URL}(/api/v1/agents/askor/api/v1/agents/get-transcript). - The API replies
402with requirements in thePAYMENT-REQUIREDheader (exactSVM scheme, USDC, dynamic amount, and a facilitatorfeePayerthat sponsors the network fee). - The wrapped fetch signs a gasless SPL-token transfer with your wallet and
retries with the
PAYMENT-SIGNATUREheader. - The API verifies, settles, and returns the answer plus a
PAYMENT-RESPONSEsettlement header.
Verify it works
Inspect the tools without spending anything using the MCP Inspector (it only signs a payment when you actually invoke a tool, so any key is fine just to browse):
Open the printed URL → Tools → ask / get_transcript. Invoking a tool with a funded wallet performs a real paid call; verify the spend on a Solana explorer.
Troubleshooting
License
MIT
Source: README.md at commit c16ba42
Tools
0Version history
1- v0.1.8LatestSep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.