
serpapi-youtube-mcp-server
3 years
Works with Finder
1
Github Watches
0
Github Forks
0
Github Stars
YouTube Data MCP Server
A Model Context Protocol (MCP) server for extracting YouTube video transcripts and comments. This server provides tools to get transcripts and comments from YouTube videos for analysis and summarization.
Features
-
getTranscript
: Extract subtitles/transcripts from YouTube videos -
getVideoInfo
: Get basic information about a YouTube video -
getReplies
: Fetch comments for YouTube videos (using SerpAPI) -
getCommentReplies
: Get replies to specific YouTube comments
Requirements
- Node.js 16+
- TypeScript
- SerpAPI API key (for comments functionality)
Installation(for Developer)
# Clone the repository
git clone https://github.com/diasm3/serpapi-youtube-mcp-server.git
cd youtube-data-mcp
# Install dependencies
npm install
Configuration
Create a .env
file in the root directory with your SerpAPI key:
SERPAPI_KEY=your_serpapi_key_here
You can get a SerpAPI key by signing up at SerpAPI.
Build and Run
# Build the project
npm run build
# Run the server
npm start
The server will start running and listening for commands via stdin/stdout.
Using with Claude
To use this MCP server with Claude:
- Add the server to your Claude configuration file:
{
"mcpServers": {
"youtube-data": {
"command": "npx",
"args": ["-y","youtube-data-mcp"],
"env": {
"SERPAPI_KEY": "your_serpapi_key_here"
}
}
}
}
-
Restart Claude to apply the configuration.
-
Now you can ask Claude to:
- "Get the transcript for this YouTube video: [URL]"
- "Show me the comments for this YouTube video: [URL]"
- "Get replies to specific comments"
API Tools
searchYoutube
Search for videos, channels, and playlists on YouTube.
Parameters:
-
query
: Search query for YouTube (required) -
limit
: Maximum number of results to return (optional, default: 10) -
gl
: Country code for search results (optional, e.g., 'us', 'kr', 'jp') -
hl
: Language code for search results (optional, e.g., 'en', 'ko', 'ja') -
sp
: Special parameter for filtering or pagination (optional) -
pageToken
: Token for pagination from previous response (optional)
Example (via Claude):
Search for "JavaScript tutorial" on YouTube and show me the top 5 results
getVideoInfo
Retrieve basic information about a YouTube video.
Parameters:
-
url
: YouTube video URL or video ID (required)
Returns:
-
videoId
: The video's ID -
title
: The video's title -
viewCount
: Number of views -
publishDate
: Date when the video was published -
channelName
: Name of the channel that published the video -
commentCount
: Number of comments on the video -
commentsNextPageToken
: Token for fetching comments -
commentsSortingTokens
: Tokens for different comment sorting options
Example (via Claude):
Get information about this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ
getTranscript
Extracts transcripts/subtitles from YouTube videos.
Parameters:
-
url
: YouTube video URL or video ID (required) -
lang
: Language code for transcript (optional, default: 'en')
Example (via Claude):
Please get the transcript for this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ
getReplies
Retrieves comments from a YouTube video using SerpAPI.
Parameters:
-
url
: YouTube video URL or video ID (required for initial page, optional for pagination) -
limit
: Maximum number of comments to retrieve (optional, default: 100) -
sort
: Sort order for comments ('relevance' or 'time', optional, default: 'relevance') -
pageToken
: Token for pagination from previous response (optional)
Example (via Claude):
Show me comments for this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ
getCommentReplies
Gets replies for a specific YouTube comment.
Parameters:
-
pageToken
: Reply token from a comment to get its replies (required)
This function is typically used programmatically after getting the repliesToken
from a comment.
Understanding SerpAPI Integration
This MCP server uses SerpAPI's YouTube Search API and YouTube Video API to fetch search results, comments, and other data. SerpAPI provides a way to scrape YouTube data without directly using YouTube's official API.
Key points about SerpAPI usage:
- The server uses the
youtube_video
engine with thev
parameter (YouTube video ID) - Comments are paginated using tokens returned in the API response
- Comment replies are fetched separately using their specific tokens
- API calls are limited by your SerpAPI subscription plan
Troubleshooting
- If you encounter a 400 Bad Request error, verify your SerpAPI key is valid and properly set in the .env file
- Check the server logs for detailed error messages and debugging information
- For comment-related issues, ensure SerpAPI still supports the YouTube Video API format used
License
MIT
相关推荐
I find academic articles and books for research and literature reviews.
Confidential guide on numerology and astrology, based of GG33 Public information
Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.
Converts Figma frames into front-end code for various mobile frameworks.
Advanced software engineer GPT that excels through nailing the basics.
💬 MaxKB is a ready-to-use AI chatbot that integrates Retrieval-Augmented Generation (RAG) pipelines, supports robust workflows, and provides advanced MCP tool-use capabilities.
Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx
MCP server to provide Figma layout information to AI coding agents like Cursor
Python code to use the MCP3008 analog to digital converter with a Raspberry Pi or BeagleBone black.
Reviews

user_xuNfgrcz
I've been using the serpapi-youtube-mcp-server by diasm3 and it's been fantastic for my needs. The integration is seamless, and the server performs reliably. It's evident that a lot of thought and effort went into developing this product. Highly recommended for anyone looking to aggregate YouTube search results efficiently! Check it out on GitHub.