Rust MCP server and CLI for yt-dlp media search/downloads, metadata tagging, transfer queues, Plex playlists, SSH/rclone targets, and MCP app search UI.
接入配置
选择客户端,复制配置,再按项目文档补齐环境变量。
claude mcp add ytdl-rmcp --env YTDLP_PLEX_TOKEN='<YTDLP_PLEX_TOKEN>' --env YTDLP_ACOUSTID_CLIENT_KEY='<YTDLP_ACOUSTID_CLIENT_KEY>' -- npx -y @dinglebear/rytdl~/.codex/config.toml
[mcp_servers.ytdl-rmcp]
command = "npx"
args = ["-y", "@dinglebear/rytdl"]
env = { YTDLP_PLEX_TOKEN = "<YTDLP_PLEX_TOKEN>", YTDLP_ACOUSTID_CLIENT_KEY = "<YTDLP_ACOUSTID_CLIENT_KEY>" }
# codex mcp add ytdl-rmcp --env YTDLP_PLEX_TOKEN='<YTDLP_PLEX_TOKEN>' --env YTDLP_ACOUSTID_CLIENT_KEY='<YTDLP_ACOUSTID_CLIENT_KEY>' -- npx -y @dinglebear/rytdl~/.cursor/mcp.json
{
"mcpServers": {
"ytdl-rmcp": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rytdl"
],
"env": {
"YTDLP_PLEX_TOKEN": "<YTDLP_PLEX_TOKEN>",
"YTDLP_ACOUSTID_CLIENT_KEY": "<YTDLP_ACOUSTID_CLIENT_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"ytdl-rmcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@dinglebear/rytdl"
],
"env": {
"YTDLP_PLEX_TOKEN": "<YTDLP_PLEX_TOKEN>",
"YTDLP_ACOUSTID_CLIENT_KEY": "<YTDLP_ACOUSTID_CLIENT_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"ytdl-rmcp": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rytdl"
],
"env": {
"YTDLP_PLEX_TOKEN": "<YTDLP_PLEX_TOKEN>",
"YTDLP_ACOUSTID_CLIENT_KEY": "<YTDLP_ACOUSTID_CLIENT_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"ytdl-rmcp": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rytdl"
],
"env": {
"YTDLP_PLEX_TOKEN": "<YTDLP_PLEX_TOKEN>",
"YTDLP_ACOUSTID_CLIENT_KEY": "<YTDLP_ACOUSTID_CLIENT_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"ytdl-rmcp": {
"command": "npx",
"args": [
"-y",
"@dinglebear/rytdl"
],
"env": {
"YTDLP_PLEX_TOKEN": "<YTDLP_PLEX_TOKEN>",
"YTDLP_ACOUSTID_CLIENT_KEY": "<YTDLP_ACOUSTID_CLIENT_KEY>"
}
}
}
}需要的环境变量
YTDLP_PLEX_TOKENYTDLP_ACOUSTID_CLIENT_KEY
把占位值换成你自己的密钥;不要把密钥提交到代码仓库。