MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
Description from the maker (original English)
Turn YouTube videos into short-form clips from any AI assistant
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
LUMICLIP_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"lumiclip": {
"command": "npx",
"args": [
"-y",
"@lumiclip/mcp-server"
],
"env": {
"LUMICLIP_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add lumiclip --env LUMICLIP_API_KEY=your-value -- npx -y @lumiclip/mcp-serverFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"lumiclip": {
"command": "npx",
"args": [
"-y",
"@lumiclip/mcp-server"
],
"env": {
"LUMICLIP_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"lumiclip": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@lumiclip/mcp-server"
],
"env": {
"LUMICLIP_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account lumiclip, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: LUMICLIP_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (3.0.0) reached the registry 6 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
An MCP server retrieving transcripts of YouTube videos
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Turn long videos into short clips — from Claude, Cursor, or any AI assistant that supports MCP.
Give it a YouTube link. It finds the best moments, reframes for vertical video (9:16), adds subtitles, and returns download-ready clips.
LUMICLIP_API_KEY=sk_live_... npx @lumiclip/mcp-server
Add to your config file — claude_desktop_config.json for Claude, .cursor/mcp.json for Cursor:
{
"mcpServers": { "lumiclip": { "command": "npx", "args": ["@lumiclip/mcp-server"], "env": { "LUMICLIP_API_KEY": "sk_live_..." } } } }
npx @smithery/cli mcp add lumiclip/lumiclip
For n8n, custom integrations, or any client that supports remote MCP:
https://mcp.lumiclip.ai/mcpAuthorization: Bearer sk_live_...| Tool | What it does |
|---|---|
generate_clips | Start clip generation from a YouTube URL. Returns a project_id right away. |
get_project_status | Check progress and get clips when ready. Clips are sorted by score (best first). |
list_projects | List your projects with status and clip counts. |
get_clip | Get full details for a single clip. |
check_usage | See your plan, remaining credits, and usage. |
generate_clips with a YouTube URLproject_id immediatelyget_project_status every 10–15 seconds (or pass a callback_url for webhook)download_urlProject: pending → processing → completed (or completed_no_clips / failed)
Processing steps: queued → DOWNLOADING_VIDEO → EXTRACTING_AUDIO → TRANSCRIBING → DETECTING_HIGHLIGHTS → CUTTING_CLIPS → EXPORTING_CLIPS → done
Clips: pending → exporting → completed (or failed). The download_url is available when clip_status is completed.
generate_clipsStart clip generation from a YouTube video.
| Field | Type | Required | Description |
|---|---|---|---|
url | string | Yes | Full YouTube video URL |
start_time | number | No | Start time in seconds (to process only a segment) |
end_time | number | No | End time in seconds (to process only a segment) |
callback_url | string | No | Webhook URL to receive results when done |
{
"project_id": "43dbe622-8ac6-4579-9625-0ad7f0f9db0b", "status": "processing", "poll_url": "/api/v1/projects/43dbe622-8ac6-4579-9625-0ad7f0f9db0b", "estimated_minutes": 5, "message": "Processing started. Poll with get_project_status every 10-15 seconds until status is 'completed'." }
get_project_statusCheck progress and get clips.
| Field | Type | Required | Description |
|---|---|---|---|
project_id | string | Yes | The project ID from generate_clips |
{
"id": "43dbe622-...", "name": "Video Title", "status": "completed", "step": "done", "error": null, "expected_clips": 9, "duration": 639, "created_at": "2026-03-15T02:21:46.226Z", "clips": [ { "id": "32538b9c-...", "title": "One Dating Theory Leads to Chaos", "duration": 41.83, "score": 90, "reason": "Sharp universal joke that hooks instantly with strong reactions.", "clip_status": "completed", "download_url": "https://cdn.lumiclip.ai/exports/premium/.../clip-32538b9c-....mp4", "quality": "1080p", "thumbnail_url": "https://cdn.lumiclip.ai/exports/premium/.../clip-32538b9c-...-thumb.jpg", "created_at": "2026-03-15T02:29:10.954Z", "updated_at": "2026-03-15T02:30:43.907Z" } ] }
Clips are sorted by score (highest first).
list_projects| Field | Type | Required | Description |
|---|---|---|---|
limit | number | No | Max projects to return. Default 20, max 100. |
status | string | No | Filter: pending, processing, completed, completed_no_clips, failed |
{
"projects": [ { "id": "43dbe622-...", "name": "Video Title", "status": "completed", "step": "done", "expected_clips": 9, "clips_count": 8, "duration": 639, "created_at": "2026-03-15T02:21:46.226Z" } ], "total": 1, "limit": 20, "offset": 0 }
get_clip| Field | Type | Required | Description |
|---|---|---|---|
clip_id | string | Yes | The clip ID from a project's clips array |
{
"id": "32538b9c-...", "project_id": "43dbe622-...", "title": "One Dating Theory Leads to Chaos", "duration": 41.83, "score": 90, "reason": "Sharp universal joke that hooks instantly.", "export_status": "completed", "export_quality": "1080p", "is_exported": true, "video_url": "https://cdn.lumiclip.ai/...", "video_url_720p": "https://cdn.lumiclip.ai/...", "video_url_1080p": "https://cdn.lumiclip.ai/...", "thumbnail_url": "https://cdn.lumiclip.ai/...", "created_at": "2026-03-15T02:29:10.954Z", "updated_at": "2026-03-15T02:30:43.907Z" }
check_usageNo input required.
{
"plan": "pro", "credits_remaining": 450, "credits_total": 500, "period_start": "2026-03-01T00:00:00.000Z", "period_end": "2026-04-01T00:00:00.000Z" }
| HTTP Status | Error | What to do |
|---|---|---|
| 400 | Invalid YouTube URL | Check the URL format |
| 401 | Unauthorized | Check your API key |
| 402 | Insufficient credits | Buy more credits or use a shorter video |
| 429 | Rate limit exceeded | Wait and try again |
| 500 | Internal server error | Try again later |
Pass a callback_url when calling generate_clips to receive a POST when all clips are ready.
Completed:
{
"event": "project.completed", "project_id": "43dbe622-...", "status": "completed", "source_url": "https://www.youtube.com/watch?v=H51iLa1leOU", "clips": [ { "id": "32538b9c-...", "title": "One Dating Theory Leads to Chaos", "duration": 41.83, "score": 90, "download_url": "https://cdn.lumiclip.ai/exports/premium/.../clip-32538b9c-....mp4", "thumbnail_url": "https://cdn.lumiclip.ai/exports/premium/.../clip-32538b9c-...-thumb.jpg", "quality": "1080p" } ] }
Failed:
{
"event": "project.failed", "project_id": "43dbe622-...", "status": "failed", "error": "YouTube video is unavailable", "clips": [] }
Clips are sorted by score (highest first). We retry up to 3 times if your server doesn't respond.
Signature verification (optional): Each callback includes an X-Lumiclip-Signature header. Compute HMAC-SHA256 of the request body using SHA-256(your_api_key) as the signing key. Compare with the header value (sha256= ).
Option A — Webhook (recommended):
POST https://api.lumiclip.ai/api/v1/clips/generate with Header Auth (Authorization: Bearer sk_live_...) and body: {
"url": "https://www.youtube.com/watch?v=...", "callback_url": "https://your-n8n.com/webhook/abc123" }
3. When clips are ready, the Webhook node receives the payload.
{{ $json.clips[0].download_url }}Option B — Polling loop:
POST to generate clips (same as above, without callback_url).https://api.lumiclip.ai/api/v1/projects/{{ $json.project_id }} → IF status is not completed, loop back to Wait.For direct HTTP calls without MCP:
| Method | Endpoint | Description |
|---|---|---|
POST | /api/v1/clips/generate | Start clip generation |
GET | /api/v1/projects/:id | Get project status and clips |
GET | /api/v1/projects | List projects |
GET | /api/v1/clips/:id | Get single clip details |
GET | /api/v1/account/usage | Check credits and plan |
Base URL: https://api.lumiclip.ai — All endpoints require Authorization: Bearer sk_live_...
| Variable | Required | Default |
|---|---|---|
LUMICLIP_API_KEY | Yes | — |
LUMICLIP_API_URL | No | https://api.lumiclip.ai |
MIT