npm scribefy-mcpstdioMITupdated 3mo ago
MCP server for Scribefy — extract YouTube transcripts from Claude Desktop, Cursor, Windsurf, ChatGPT custom GPTs, or any other MCP-compatible client.
Scribefy 能做什么?
scribefy-mcp
MCP server for Scribefy — extract YouTube transcripts from Claude Desktop, Cursor, Windsurf, ChatGPT custom GPTs, or any other MCP-compatible client.
Live now — set it up in a minute below, or try the web app at scribefy.app.
Why
Most YouTube transcript tools live in browser extensions or one-off web UIs. This wraps Scribefy's API into the MCP standard so your AI assistant can pull a transcript whenever a user pastes a YouTube link — no manual copy-paste, no separate tabs.
Requirements
- Node 20+
- A Scribefy account on the API + MCP plan ($25/mo) for an API key. You can install without a key first — the MCP host registers the server cleanly and you'll get a friendly nudge when you try to use a tool — then add your key from scribefy.app/dashboard to start extracting.
Setup
Claude Desktop
Open the config file (Settings → Developer → Edit Config):
{
"mcpServers": {
"scribefy": {
"command": "npx",
"args": ["-y", "scribefy-mcp"],
"env": {
"SCRIBEFY_API_KEY": "sk_live_…"
}
}
}
}
Restart Claude Desktop. The extract_transcript tool appears in the available-tools panel.
Cursor
Settings → Cursor Settings → MCP → Add new MCP server:
{
"scribefy": {
"command": "npx",
"args": ["-y", "scribefy-mcp"],
"env": {
"SCRIBEFY_API_KEY": "sk_live_…"
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"scribefy": {
"command": "npx",
"args": ["-y", "scribefy-mcp"],
"env": {
"SCRIBEFY_API_KEY": "sk_live_…"
}
}
}
}
Anywhere else
Any MCP host that supports stdio transport: spawn npx -y scribefy-mcp with SCRIBEFY_API_KEY in the env. The server speaks the standard MCP JSON-RPC over stdin/stdout.
Tools exposed
Four tools. Three are free (research toolkit); only extract_transcript charges credits.
extract_transcript
Pulls the transcript of a YouTube video.
| Parameter | Type | Required | Description |
|---|---|---|---|
url |
string | yes | Full YouTube URL — youtube.com/watch?v=…, youtu.be/…, or youtube.com/shorts/… |
lang |
string | no | BCP-47 language code (e.g. en, es, fr, zh-Hans). Defaults to en |
Returns: Markdown with title, channel, duration, language, and the transcript split into segments with timestamps.
Cost: 1 credit (≤15 min) → 8 credits (2 h+). Cached transcripts are free.
search_videos
Free-text YouTube search.
| Parameter | Type | Required | Description |
|---|---|---|---|
query |
string | yes | Search query — same syntax YouTube's own search bar accepts |
limit |
number | no | Max results, 1–25 (default 10) |
Returns: Markdown list of title / channel / duration / views / URL for each result.
Cost: Free.
get_video_metadata
Title, channel, duration, view count, upload date, and available caption tracks. Does not pull the transcript.
| Parameter | Type | Required | Description |
|---|---|---|---|
url |
string | yes | Full YouTube URL |
Returns: Markdown summary plus a list of every caption track (authored ✏ or auto-generated ⚙) with its language code.
Cost: Free. Use this to inspect a video before deciding whether to extract, or to discover which caption languages are available.
get_related_videos
YouTube's "Up next" feed for a video.
| Parameter | Type | Required | Description |
|---|---|---|---|
url |
string | yes | Full YouTube URL of the seed video |
limit |
number | no | Max related videos, 1–25 (default 10) |
Returns: Same shape as search_videos.
Cost: Free.
Tools coming in a future release
list_channel_videos and get_video_comments were planned for 0.3.0 but are deferred to 0.4.0 while we wait for upstream youtubei.js to publish fixes for YouTube's 2026 response-shape changes. Channel listing fails with HTTP 400 at the InnerTube layer, and info.getComments() is no longer attached to parsed VideoInfo. Both will return as soon as the library catches up.
Skills
The repo ships an Agent Skill (a SKILL.md your assistant loads on demand) that teaches it how to use these tools well — vet candidates with the free tools before spending credits, prefer authored captions, lean on the free transcript cache, and cite answers with timestamps.
skills/youtube-research— the YouTube research workflow: search → vet metadata → extract selectively → synthesize with[mm:ss]citations.
To use it in Claude Code, copy the folder into your project's .claude/skills/ (or ~/.claude/skills/ to have it everywhere). Open Plugins-compatible hosts detect it straight from the repo.
Configuration
| Env var | Required | Default | Notes |
|---|---|---|---|
SCRIBEFY_API_KEY |
yes | — | sk_live_… (production) or sk_test_… (Scribefy test mode) |
SCRIBEFY_API_BASE |
no | https://api.scribefy.app |
Override for staging (https://api-staging.scribefy.app) or self-hosted instances |
Troubleshooting
SCRIBEFY_API_KEY is required
Make sure the env block is set in your MCP host's config and the host actually loads it. Some hosts strip env vars by default — check their docs.
Scribefy rejected the API key
Either the key is wrong, the key was revoked, or your subscription is no longer on the API + MCP plan. Check scribefy.app/dashboard.
Not enough credits
The tool returns the remaining balance and the cost in the error message. Top up at scribefy.app/pricing.
The tool doesn't show up in my MCP client
After editing the config, fully restart the client (not just the chat window). Tail the client's logs if available — most show MCP stderr there. The server prints scribefy-mcp: ready once it boots.
License
MIT
安装
把 Scribefy 添加到你的客户端。选择你正在使用的那个。
claude mcp add scribefy-mcp -- npx -y scribefy-mcpcodex mcp add scribefy-mcp -- npx -y scribefy-mcpamp mcp add scribefy-mcp -- npx -y scribefy-mcp{
"mcpServers": {
"scribefy-mcp": {
"command": "npx",
"args": [
"-y",
"scribefy-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"scribefy-mcp": {
"command": "npx",
"args": [
"-y",
"scribefy-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"scribefy-mcp","command":"npx","args":["-y","scribefy-mcp"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"scribefy-mcp": {
"command": "npx",
"args": [
"-y",
"scribefy-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"scribefy-mcp": {
"command": "npx",
"args": [
"-y",
"scribefy-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"scribefy-mcp": {
"command": "npx",
"args": [
"-y",
"scribefy-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"scribefy-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"scribefy-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"scribefy-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"scribefy-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y scribefy-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
评分
39 / 100
不完整
- 文档25/25
- 维护22/25
- 可信度13/20
- 能力0/15
- 安装体验12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 82 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
版本历史
| 版本 | 发布于 |
|---|---|
| 0.3.5最新 | 2026年6月2日 |
| 0.3.4 | 2026年6月1日 |
| 0.3.3 | 2026年6月1日 |