Youtube DataSAFE
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://mseep.ai/app/icraft2170-youtube-data-mcp-server)
[](https://smithery.ai/server/@icraft2170/youtube-data-mcp-server)
A Model Context Protocol (MCP) server implementation utilizing the YouTube Data API. It allows AI language models to interact with YouTube content through a standardized interface.
Key Features
Video Information
- Retrieve detailed video information (title, description, duration, statistics)
- Search for videos by keywords
- Get related videos based on a specific video
- Calculate and analyze video engagement ratios
Transcript/Caption Management
- Retrieve video captions with multi-language support
- Specify language preferences for transcripts
- Access time-stamped captions for precise content reference
Channel Analysis
- View detailed channel statistics (subscribers, views, video count)
- Get top-performing videos from a channel
- Analyze channel growth and engagement metrics
Trend Analysis
- View trending videos by region and category
- Compare performance metrics across multiple videos
- Discover popular content in specific categories
Available Tools
The server provides the following MCP tools:
2b7afa4f07cfOBSERVED · 2026-10-07Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add youtube-data-mcp-server --env YOUTUBE_API_KEY=${YOUTUBE_API_KEY} -- npx -y [email protected]{
"mcpServers": {
"youtube-data-mcp-server": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"YOUTUBE_API_KEY": "${YOUTUBE_API_KEY}"
}
}
}
}Exposed tools (9)
9 read · 0 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
compareVideos | read | Compares multiple videos based on their statistics. Returns a comparison of view counts, like counts, comment counts, and other metrics for the specified videos. Use this when you want to analyze the performance of multiple videos side by side. |
getChannelStatistics | read | Retrieves statistics for multiple channels. Returns detailed metrics including subscriber count, view count, and video count for each channel. Use this when you need to analyze the performance and reach of multiple YouTube channels. |
getChannelTopVideos | read | Retrieves the top videos from a specific channel. Returns a list of the most viewed or popular videos from the channel, based on view count. Use this when you want to identify the most successful content from a channel. |
getRelatedVideos | read | Retrieves related videos for a specific video. Returns a list of videos that are similar or related to the specified video, based on YouTube |
getTranscripts | read | Retrieves transcripts for multiple videos. Returns the text content of videos |
getTrendingVideos | read | Retrieves trending videos based on region and category. Returns a list of videos that are currently popular in the specified region and category. Use this when you want to discover what |
getVideoDetails | read | Get detailed information about multiple YouTube videos. Returns comprehensive data including video metadata, statistics, and content details. Use this when you need complete information about specific videos. |
getVideoEngagementRatio | read | Calculates the engagement ratio for multiple videos. Returns metrics such as view count, like count, comment count, and the calculated engagement ratio for each video. Use this when you want to measure the audience interaction with videos. |
searchVideos | read | Searches for videos based on a query string. Returns a list of videos matching the search criteria, including titles, descriptions, and metadata. Use this when you need to find videos related to specific topics or keywords. |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (2)
@modelcontextprotocol/sdk, dotenv, googleapis, pnpm, youtube-captions-scraper, zod, @types/jest, @types/node
Gates applied: no_behavioural_pass, no_license.
2b7afa4f07cffull audit observations/trust-audit/mcp-server/icraft2170__youtube-data.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-07 | 2b7afa4f07cf | SAFE | B | 89 | first audit |
Questions
What tools does Youtube Data expose?
9 in total: 9 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Youtube Data safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does Youtube Data need?
It reads YOUTUBE_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does Youtube Data run?
It speaks stdio, so it runs as a local process your client starts. It is published on npm as youtube-data-mcp-server at 1.0.15.
How current is this page?
The grade is for one exact copy of the source (2b7afa4f07cf), read on 2026-10-07. The repository is watched and re-audited when it changes.