一个强大的模型上下文协议(MCP)服务器,提供全面的YouTube功能和基于AI的文本处理工具,部署为Cloudflare Worker。
服务器部署地址:https://youtube-mcp-server.anis-ayari-perso.workers.dev
search_youtube_videos)搜索带有详细元数据的YouTube视频。
参数:
query (字符串,必需):搜索查询maxResults (数字,可选):最大结果数(默认:20)返回值: 视频ID、标题、描述、URL、缩略图、观看次数、时长、频道信息
analyze_video_comments)分析视频评论的情感和主题。
参数:
videoId (字符串,必需):YouTube视频IDmaxComments (数字,可选):要分析的最大评论数(默认:100)返回值: 情感分析、重复主题、观众反馈见解
generate_video_script)生成包含钩子、内容和行动号召的完整YouTube视频脚本。
参数:
topic (字符串,必需):视频主题duration (字符串,可选):"short"、"medium"、"long"(默认:"medium")style (字符串,可选):"educational"、"entertainment"、"tutorial"、"vlog"(默认:"educational")targetAudience (字符串,可选):目标受众描述返回值: 包含时间戳、视觉建议和互动提示的完整脚本
extract_youtube_seo)从成功视频中提取SEO关键词和标签。
参数:
query (字符串,必需):要分析的主题competitors (数字,可选):要分析的视频数量(默认:10)返回值: 关键词、标题公式、标签、优化技巧
compare_videos)比较多个视频的性能指标。
参数:
videoIds (数组,必需):要比较的视频ID数组返回值: 性能排名、成功因素、改进建议
analyze_video_landscape)分析现有视频并提出独特的内容角度。
参数:
query (字符串,必需):要分析的主题maxVideos (数字,可选):要分析的视频数量(默认:10)返回值: 内容缺口、独特的视频创意、目标受众
openai_completion)使用OpenAI模型生成文本。
参数:
prompt (字符串,必需):文本提示model (字符串,可选):OpenAI模型(默认:"gpt-4o-mini")maxTokens (数字,可选):最大令牌数(默认:1000)rewrite_text)以不同风格重写文本。
参数:
text (字符串,必需):要重写的文本style (字符串,可选):"professional"、"casual"、"formal"、"creative"(默认:"professional")summarize_text)创建简洁的摘要。
参数:
text (字符串,必需):要摘要的文本length (字符串,可选):"short"、"medium"、"long"(默认:"medium")expand_text)通过添加更多细节来扩展文本。
参数:
text (字符串,必需):要扩展的文本targetLength (字符串,可选):目标扩展(默认:"double")fix_grammar)修正语法、拼写和标点符号。
参数:
text (字符串,必需):要修正的文本translate_text)将文本翻译成其他语言。
参数:
text (字符串,必需):要翻译的文本targetLanguage (字符串,可选):目标语言(默认:"Spanish")simplify_text)简化文本以便于阅读。
参数:
text (字符串,必需):要简化的文本readingLevel (字符串,可选):"elementary"、"high-school"、"general"(默认:"general")GET /youtube/search?query=<search_term>&maxResults=<number>
POST /openai/completion
Content-Type: application/json
{
"prompt": "Your prompt here",
"model": "gpt-4o-mini",
"maxTokens": 1000
}
POST /text/rewrite
POST /text/summarize
POST /text/expand
POST /text/fix-grammar
POST /text/translate
POST /text/simplify
Content-Type: application/json
{
"text": "Your text here",
// 根据端点的不同附加参数
}
POST /mcp
Content-Type: application/json
{
"method": "tools/list"
}
POST /mcp
Content-Type: application/json
{
"method": "tools/call",
"params": {
"name": "tool_name",
"arguments": {
// 工具特定参数
}
}
}
// 搜索视频
const searchResponse = await fetch('https://youtube-mcp-server.anis-ayari-perso.workers.dev/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
method: 'tools/call',
params: {
name: 'search_youtube_videos',
arguments: { query: 'javascript tutorial', maxResults: 5 }
}
})
});
// 分析顶级视频的评论
const videoId = 'VIDEO_ID_HERE';
const commentsResponse = await fetch('https://youtube-mcp-server.anis-ayari-perso.workers.dev/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
method: 'tools/call',
params: {
name: 'analyze_video_comments',
arguments: { videoId, maxComments: 100 }
}
})
});
// 提取SEO洞察
const seoResponse = await fetch('https://youtube-mcp-server.anis-ayari-perso.workers.dev/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
method: 'tools/call',
params: {
name: 'extract_youtube_seo',
arguments: { query: 'web development', competitors: 10 }
}
})
});
// 基于洞察生成脚本
const scriptResponse = await fetch('https://youtube-mcp-server.anis-ayari-perso.workers.dev/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
method: 'tools/call',
params: {
name: 'generate_video_script',
arguments: {
topic: 'Web Development for Beginners',
duration: 'medium',
style: 'tutorial',
targetAudience: 'Complete beginners'
}
}
})
});
const compareResponse = await fetch('https://youtube-mcp-server.anis-ayari-perso.workers.dev/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
method: 'tools/call',
params: {
name: 'compare_videos',
arguments: {
videoIds: ['VIDEO_ID_1', 'VIDEO_ID_2', 'VIDEO_ID_3']
}
}
})
});
{
"videoId": "dQw4w9WgXcQ",
"title": "视频标题",
"description": "视频描述...",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"thumbnail": {
"default": "https://i.ytimg.com/vi/dQw4w9WgXcQ/default.jpg",
"medium": "https://i.ytimg.com/vi/dQw4w9WgXcQ/mqdefault.jpg",
"high": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg"
},
"publishedAt": "2024-01-01T00:00:00Z",
"channelTitle": "频道名称",
"viewCount": "1000000",
"duration": "10:30",
"captions": []
}
{
"content": [
{
"type": "text",
"text": "工具执行结果..."
}
],
"metadata": {
// 每个工具特有的可选元数据
}
}
npm install
npm run dev
npm run deploy
YOUTUBE_API_KEY:YouTube Data API v3密钥OPENAI_API_KEY:OpenAI API密钥CACHE:KV命名空间绑定(在wrangler.toml中配置)欢迎贡献!请打开一个问题或提交一个拉取请求。
MIT许可证
对于问题和疑问,请在GitHub上打开一个问题。