# summarize-vid > Pay-per-call API and MCP tools that summarize or transcribe any YouTube video for a few cents of USDC — no signup, no API key, no subscription. Built for autonomous AI agents using the x402 payment protocol (HTTP 402 + USDC on Base). An agent calls an endpoint, gets a price, signs a USDC payment, and receives the summary or transcript in the same request. summarize-vid is a Python (FastAPI) service. The value proposition for an agent is token arbitrage: instead of pulling a 50,000-token YouTube transcript into its own context and paying its own model to read it, an agent pays a couple of cents for a compact, structured summary — or the cheaper raw transcript. Payment *is* the authentication, so there is no onboarding: an agent that discovers an endpoint can pay and use it immediately. Payments settle in USDC on Base; a failed request (bad URL, no captions, model error) is never charged. Source code and full docs: https://github.com/JonTelep/summarize-vid ## Agent endpoints (x402 pay-per-call) - [POST https://api.sumvid.app/v1/summarize](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): AI summary of a YouTube video generated by Claude (Anthropic Haiku), returned inline. Price ~$0.02 in USDC on Base. Request body `{"url": "https://youtu.be/", "language": "en"}`. Pay via x402: call with no auth, receive `402` with the price and receiving address, sign an EIP-3009 USDC authorization, retry with the payment header, get the summary. No account or API key. - [POST https://api.sumvid.app/v1/transcript](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): Raw transcript text of a YouTube video, no model call — the cheaper SKU. Price ~$0.005 in USDC on Base. Same request body and same x402 payment flow as /v1/summarize. - [POST https://api.sumvid.app/v1/channel/new](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): New videos uploaded to a YouTube channel since your last poll — stateless channel monitoring, no model call. Price ~$0.002 in USDC on Base. Request body `{"channel": "@handle-or-url-or-id", "since_video_id": "", "since": ""}`; returns new video ids, titles and publish times newest-first, plus whether the supplied cursor was found. Holds no per-caller state — the agent supplies its own cursor each call. Same x402 payment flow as the other SKUs. Good for a poll-then-pull loop: poll a watchlist of channels cheaply, then pull a transcript or summary of just what's new. - [GET https://api.sumvid.app/.well-known/x402.json](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): x402 discovery manifest advertising all paid SKUs with price, network, USDC asset, and receiving address, each marked discoverable — so agents browsing the x402 Bazaar or an x402 directory can find and pay for the endpoints automatically. ## MCP tools (paid, via x402) - [summarize_youtube_video](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): The summary SKU as a native Model Context Protocol tool, so MCP-capable agents (Claude and others) discover and call it from their tool list. Arguments `url`, `language`. Price ~$0.02 in USDC on Base. Served over streamable-http at https://mcp.sumvid.app. - [get_youtube_transcript](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): The transcript SKU as an MCP tool. Arguments `url`, `language`. Price ~$0.005 in USDC on Base. Served at https://mcp.sumvid.app. - [list_new_channel_videos](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): The channel-poll SKU as an MCP tool. Arguments `channel`, `since_video_id`, `since`. Price ~$0.002 in USDC on Base. Served at https://mcp.sumvid.app. ## Documentation - [x402 pay-per-call guide](https://github.com/JonTelep/summarize-vid/blob/main/docs/x402.md): Complete protocol flow, endpoint reference, pricing, discovery manifest, and the verify-before / settle-on-success guarantee that a failed call is free. - [README](https://github.com/JonTelep/summarize-vid/blob/main/README.md): Project overview — a FastAPI server that extracts YouTube transcripts and generates AI summaries with Claude, plus a background worker, Postgres cache, and the agent-facing x402 path. - [Deploying to a VPS](https://github.com/JonTelep/summarize-vid/blob/main/docs/deploy.md): End-to-end guide for running the full stack (caddy + api + worker + mcp + postgres) on an internet-facing VPS. - [Statistics](https://github.com/JonTelep/summarize-vid/blob/main/docs/stats.md): Public aggregate usage stats — which videos are most requested and when. ## Optional - [Billing (Stripe)](https://github.com/JonTelep/summarize-vid/blob/main/docs/billing.md): The separate human/browser subscription path (Better Auth JWT + Stripe tiers). Not relevant to agents — the x402 endpoints need no account. - [Job retries & stuck-job reaper](https://github.com/JonTelep/summarize-vid/blob/main/docs/retries.md): How the background worker retries transient failures and recovers orphaned jobs (the async human path, not the synchronous agent path). - [Enhancements & roadmap](https://github.com/JonTelep/summarize-vid/blob/main/docs/enhancements.md): Backlog of planned improvements.