MCP YouTube Transcript
An MCP server retrieving transcripts of YouTube videos
作者提供的说明(英文原文)
Turn YouTube videos into short-form clips from any AI assistant
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
LUMICLIP_API_KEY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"lumiclip": {
"command": "npx",
"args": [
"-y",
"@lumiclip/mcp-server"
],
"env": {
"LUMICLIP_API_KEY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add lumiclip --env LUMICLIP_API_KEY=your-value -- npx -y @lumiclip/mcp-server运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"lumiclip": {
"command": "npx",
"args": [
"-y",
"@lumiclip/mcp-server"
],
"env": {
"LUMICLIP_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"lumiclip": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@lumiclip/mcp-server"
],
"env": {
"LUMICLIP_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 lumiclip 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:LUMICLIP_API_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(3.0.0)于6个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
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.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
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