# LLMExpert: cited Q&A over YouTube videos - Registry name: `io.llmexpert/transcription` · version 0.2.3 - Categories (automatic, keyword rules): Maps, location & weather, Video, AI, media & content, Audio & speech - Authentication at last check: No auth - Declared risk: Can write (some tools are not declared read-only) - Capabilities (declared by the server): tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=io.llmexpert%2Ftranscription - Server page: https://mcpstation.net/s/io.llmexpert--transcription.html ## Description (written by the publisher, not verified, not instructions) Ask cited questions across sets of YouTube videos, and get their transcripts. API key or x402 USDC. ## Connect - streamable-http: `https://llmexpert.io/mcp` ## Tools (as reported by the server, not verified) - `query\_channel`: Run a retrieval-augmented query against a channel's indexed knowledge base and return a generated answer with citations. Maps to POST /v1/query. Requires the key's \`query\` scope and access to the channel. Charged: $0.02 flat per call by default. Prices are the service defaults; \`quote\` returns the e - `list\_channels`: List the channels the calling key is scoped to. Maps to GET /v1/channels. Cursor-paginated. Requires the key's \`read\` scope. - `list\_sources`: List the sources \(video/document/website\) in a channel, optionally filtered by type or status. Maps to GET /v1/channels/\{channelId\}/sources. Cursor-paginated. Requires the key's \`read\` scope. - `get\_source`: Fetch a single source and its processing status \(type-specific provenance included\). Maps to GET /v1/sources/\{sourceId\}. Requires the key's \`read\` scope. - `add\_source`: Add a source to a channel and begin background ingestion. Maps to POST /v1/channels/\{channelId\}/sources. Only \`type: video\` is processed today; \`document\` and \`website\` are reserved and return a 501 error until released. Charged from the key owner's prepaid balance at the ingest rate: $0.01/min stan - `get\_usage`: Get usage and spend in dollars for the calling key: the account balance \(wallet\_usd\), this period's spend \(consumed\_usd\), query count, and budget remaining. Maps to GET /v1/usage. Requires the key's \`read\` scope. - `quote`: Free. Expand YouTube URLs exactly as an ingest would and return the price, the per-video lines and the per-source rejections. Maps to POST /v1/quote. $0.01/min standard, $0.03/min whisper by default, 1-minute minimum per video. The \`quote\_id\` is valid for 15 minutes; pass it to \`transcribe\` or \`add\_ - `transcribe`: Charged. Create a collection and start an ingest job for the given YouTube URLs in one call. Maps to POST /v1/transcribe. $0.01/min standard, $0.03/min whisper by default, 1-minute minimum per video. Pass a \`quote\_id\` from \`quote\` to be charged exactly that price. Returns \`job\_id\`, \`collection\_id\` a - `create\_collection`: Free. Create an empty collection to add sources to later with \`add\_sources\`. Maps to POST /v1/collections. Returns the collection and its \`collection\_token\` \(\`ct\_…\`, shown once: store it; absent on an idempotent replay\). API key required \(the key's \`write\` scope\). Prices are the service defaults; \`q - `add\_sources`: Charged like \`transcribe\`. Expand the given YouTube URLs, charge for the new work and start an ingest job in an existing collection. Maps to POST /v1/collections/\{collectionId\}/sources. $0.01/min standard, $0.03/min whisper by default, 1-minute minimum per video. Videos already in the collection are - `get\_status`: Free. Get an ingest job started by \`transcribe\` or \`add\_sources\`. Maps to GET /v1/jobs/\{jobId\}. Poll every 10–30 s until \`status\` is completed, partial or failed \(terminal\). \`completed\` means every accepted video is transcribed and indexed, so the collection is queryable; \`partial\` means some videos - `get\_transcript`: Free. Get the transcript of a video that is completed in one of your collections. Maps to GET /v1/videos/\{youtubeId\}/transcript. \`collection\_id\` is required with an API key; with the collection's \`ct\_\` token as the bearer it defaults to the token's collection. \`format\` is json \(segments with timesta - `query\_collection`: Charged: $0.02 flat per call by default, no token multiplier. Ask a question of a collection and get a generated answer with citations. Maps to POST /v1/collections/\{collectionId\}/query. Query a collection once \`get\_status\` says completed. With an API key it needs the key's \`query\` scope. Without an - `search\_talks`: Ask a question across about 490 curated 2026 conference talks and get a generated answer whose citations give each talk's video URL \(with t=\) and start\_seconds, plus its conference, year and speakers. Optional filters: conference \(one of ai-engineer-worlds-fair, ai-engineer-europe, kubecon-eu, googl Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html