ytdl-rmcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| YTDLP_LOG | No | `tracing` filter written to stderr only. Never send logs to stdout because stdout is the MCP JSON-RPC channel. | info |
| YTDLP_PATH | No | Use a specific yt-dlp executable instead of auto-resolution/auto-download. | |
| FFMPEG_PATH | No | Use a specific ffmpeg executable instead of auto-resolution/auto-download. | |
| FPCALC_PATH | No | Optional explicit path to the Chromaprint `fpcalc` executable. | |
| YTDLP_REMOTE | No | Legacy SSH remote alias or `user@host`. | |
| YTDLP_SHA256 | No | Optional SHA-256 digest required for the resolved yt-dlp executable. | |
| FFMPEG_SHA256 | No | Optional SHA-256 digest required for the resolved ffmpeg executable. | |
| YTDLP_PLEX_URL | No | Plex server URL, e.g. `http://plex.local:32400`, used when adding audio downloads to a Plex playlist. Must be paired with YTDLP_PLEX_TOKEN. | |
| YTDLP_SSH_OPTS | No | Extra ssh options parsed with shell-word syntax and appended after forced non-interactive defaults. Example: `-i "~/.ssh/ytdl key" -o ProxyJump=media-bastion`. | |
| YTDLP_PLEX_TOKEN | No | Plex auth token for playlist/search API calls. Must be paired with YTDLP_PLEX_URL. | |
| YTDLP_UPDATE_PRE | No | Track yt-dlp's nightly pre-release channel instead of stable. | 0 |
| YTDLP_ARCHIVE_DIR | No | Directory that stores `use_archive` download archives. Separate per-mode archive files are created inside it. | |
| YTDLP_AUTO_UPDATE | No | Re-download yt-dlp when stale. Disable only when YTDLP_PATH/hash pins are managing the executable externally. | 1 |
| YTDLP_REMOTE_PATH | No | Legacy absolute SSH path for audio. Requires YTDLP_REMOTE; relative paths are rejected. | |
| YTDLP_STAGING_DIR | No | Local directory where media is staged before transfer. On transfer failure this staging copy is kept for retry. | |
| YTDLP_TARGET_PATH | Yes | Destination for audio. Use `/path` for local, `host:/path` for SSH, or `remote:path` or `rclone:remote:/path` for rclone. | |
| YTDLP_AUDIO_FORMAT | No | Default audio codec: `mp3`, `m4a`, `opus`, `flac`, `wav`, or `best`. | mp3 |
| YTDLP_HISTORY_PATH | No | JSONL download ledger used by `youtube_stats`. | per-user state dir `downloads.jsonl` |
| YTDLP_MAX_AGE_DAYS | No | Staleness threshold in days for yt-dlp auto-update. | 14 |
| YTDLP_TIMEOUT_SECS | No | Timeout for each yt-dlp search/probe/download command. | 1800 |
| YTDLP_PLEX_PLAYLIST | No | Default Plex playlist title or ID; can be overridden per call with `plex_playlist`. | yt-dlp Downloads when Plex URL/token are set |
| YTDLP_CLEAN_METADATA | No | Strip common YouTube title noise before embedding metadata. Set to `0` to preserve source titles exactly. | 1 |
| YTDLP_EXTRACTOR_ARGS | No | Passed to yt-dlp `--extractor-args`. The Android YouTube client (`youtube:player_client=android`) fixes common `This video is not available` metadata failures for official music videos. | |
| YTDLP_VIDEO_REMOTE_PATH | No | Legacy absolute SSH path for video. Requires YTDLP_REMOTE; falls back to the audio target when unset. | |
| YTDLP_VIDEO_TARGET_PATH | No | Destination for video when video files should land somewhere different from audio. Same target forms. Defaults to YTDLP_TARGET_PATH if unset. | |
| YTDLP_ACOUSTID_CLIENT_KEY | No | AcoustID application API key. Required by `youtube_identify`; when set, `youtube_download` also writes high-confidence MusicBrainz tags to downloaded audio before transfer. | |
| YTDLP_ALLOW_LOCAL_TARGETS | No | Permit local filesystem targets such as `/path`. Keep disabled unless you trust MCP callers to choose local write locations. | 0 |
| YTDLP_MUSICBRAINZ_CONTACT | No | Contact URL/email included in MusicBrainz lookup User-Agent strings. | |
| YTDLP_TRANSFER_TIMEOUT_SECS | No | Timeout for each transfer phase. | 600 |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
No tools | |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dinglebear-ai/rytdl'
If you have feedback or need assistance with the MCP directory API, please join our Discord server