Package Exports
- @emit-ia/youtube-transcript-mcp
- @emit-ia/youtube-transcript-mcp/build/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@emit-ia/youtube-transcript-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
YouTube Transcript MCP Server
An MCP (Model Context Protocol) server for extracting and processing YouTube video transcripts.
Features
- Extract transcripts from YouTube videos
- Search within transcripts for specific content
- Batch processing of multiple videos
- Multiple output formats (JSON, text, SRT, VTT)
- Context-aware search with configurable windows
Installation
Via NPX (Recommended)
npx @emit-ia/youtube-transcript-mcpLocal Development
git clone https://github.com/emit-ia/youtube-transcript-mcp.git
cd youtube-transcript-mcp
npm install
npm run buildUsage
As MCP Server
Option 1: Via NPX
Add to your Claude Desktop configuration:
{
"mcpServers": {
"youtube-transcript": {
"command": "npx",
"args": ["@emit-ia/youtube-transcript-mcp"]
}
}
}Option 2: Local Installation
Add to your Claude Desktop configuration:
{
"mcpServers": {
"youtube-transcript": {
"command": "node",
"args": ["/path/to/youtube-transcript-mcp/build/index.js"]
}
}
}Available Tools
youtube_get_transcript
Extract transcript from a YouTube video.
Parameters:
url(required): YouTube video URLlanguage(optional): Language code (default: "en")format(optional): Output format - "json", "text", "srt", "vtt" (default: "json")
youtube_search_transcript
Search for specific text within a transcript.
Parameters:
url(required): YouTube video URLquery(required): Text to search forcontextWindow(optional): Seconds of context (default: 30)caseSensitive(optional): Case sensitive search (default: false)language(optional): Language code (default: "en")
youtube_batch_transcripts
Process multiple videos simultaneously.
Parameters:
urls(required): Array of YouTube video URLslanguage(optional): Language code (default: "en")maxConcurrent(optional): Max concurrent requests (default: 3)
youtube_transcript_summary
Get formatted summary of transcript content.
Parameters:
url(required): YouTube video URLsummaryType(optional): "brief", "detailed", "topics", "timestamps" (default: "brief")language(optional): Language code (default: "en")
Example Usage
// Get basic transcript
const transcript = await youtube_get_transcript({
url: "https://youtube.com/watch?v=dQw4w9WgXcQ",
format: "json"
});
// Search within transcript
const searchResults = await youtube_search_transcript({
url: "https://youtube.com/watch?v=dQw4w9WgXcQ",
query: "important topic",
contextWindow: 30
});Requirements
- Node.js 18+
- No API keys required (uses public transcript data)
Limitations
- Only works with videos that have public transcripts
- Rate limiting may apply for high-volume usage
- Transcript availability depends on YouTube's availability
License
MIT