arrstack-mcp
An MCP server that gives AI assistants control over your Sonarr, Radarr, Prowlarr, qBittorrent, and Jellyfin homelab media stack.
README
🎬 arrstack-mcp
An MCP server that gives AI assistants control over your Sonarr, Radarr, Prowlarr, qBittorrent, and Jellyfin homelab media stack.
Works with Claude Desktop, Cursor, VS Code Copilot, OpenClaw, and any other MCP-compatible client.
Demo

Features
| Service | Tools |
|---|---|
| Sonarr | List series, search & add shows, upcoming episodes, download queue |
| Radarr | List movies, search & add movies, download queue |
| Prowlarr | List/test indexers, search releases, health check |
| qBittorrent | List/pause/resume/delete torrents, add magnets, transfer stats |
| Jellyfin | List libraries, recent additions, system info |
Only configure the services you use — unconfigured services are gracefully skipped.
Quick Start
Option 1: Claude Desktop / Cursor / VS Code (stdio)
-
Install dependencies:
pip install "mcp[cli]>=1.9.0" httpx -
Add to your MCP client config (e.g.
claude_desktop_config.json):{ "mcpServers": { "arrstack": { "command": "python", "args": ["/path/to/arrstack-mcp/server.py"], "env": { "SONARR_URL": "http://localhost:8989", "SONARR_API_KEY": "your-api-key", "RADARR_URL": "http://localhost:7878", "RADARR_API_KEY": "your-api-key", "QBT_URL": "http://localhost:8080", "QBT_USER": "admin", "QBT_PASS": "your-password", "JELLYFIN_URL": "http://localhost:8096" } } } } -
Restart your MCP client. Done!
Option 2: Docker (HTTP transport)
For remote setups or when running alongside your *arr stack:
git clone https://github.com/ct4nk3r/arrstack-mcp.git
cd arrstack-mcp
cp .env.example .env
# Edit .env with your service URLs and API keys
docker compose up -d
The server runs on port 8000 with Streamable HTTP transport.
Connect to OpenClaw
openclaw mcp set arrstack '{"url":"http://arrstack-mcp:8000/mcp","transport":"streamable-http"}'
Connect to other HTTP MCP clients
Point your client to http://<host>:8000/mcp using Streamable HTTP transport.
Option 3: Docker on the same network as your *arr stack
If your media services run in Docker, add arrstack-mcp to the same network:
services:
arrstack-mcp:
build: .
container_name: arrstack-mcp
ports:
- "8000:8000"
environment:
- SONARR_URL=http://sonarr:8989
- SONARR_API_KEY=your-key
- RADARR_URL=http://radarr:7878
- RADARR_API_KEY=your-key
- QBT_URL=http://qbittorrent:8080
- QBT_USER=admin
- QBT_PASS=your-password
- JELLYFIN_URL=http://jellyfin:8096
networks:
- your-media-network
Configuration
All configuration is done via environment variables:
| Variable | Required | Description |
|---|---|---|
SONARR_URL |
No | Sonarr base URL (e.g. http://localhost:8989) |
SONARR_API_KEY |
If Sonarr | Sonarr API key (Settings → General) |
RADARR_URL |
No | Radarr base URL (e.g. http://localhost:7878) |
RADARR_API_KEY |
If Radarr | Radarr API key (Settings → General) |
QBT_URL |
No | qBittorrent Web UI URL (e.g. http://localhost:8080) |
QBT_USER |
If qBt | qBittorrent username (default: admin) |
QBT_PASS |
If qBt | qBittorrent password |
JELLYFIN_URL |
No | Jellyfin base URL (e.g. http://localhost:8096) |
JELLYFIN_API_KEY |
No | Jellyfin API key (optional, for authenticated endpoints) |
PROWLARR_URL |
No | Prowlarr base URL (e.g. http://localhost:9696) |
PROWLARR_API_KEY |
If Prowlarr | Prowlarr API key (Settings → General) |
Available Tools
Sonarr (TV Shows)
| Tool | Description |
|---|---|
sonarr_list_series |
List all series with episode counts and disk usage |
sonarr_get_series |
Get detailed info about a specific series |
sonarr_search |
Search for new shows to add |
sonarr_add_series |
Add a show by TVDB ID |
sonarr_upcoming |
Show upcoming episodes |
sonarr_queue |
Show current download queue |
Radarr (Movies)
| Tool | Description |
|---|---|
radarr_list_movies |
List all movies with download status |
radarr_get_movie |
Get detailed info about a specific movie |
radarr_search |
Search for new movies to add |
radarr_add_movie |
Add a movie by TMDB ID |
radarr_queue |
Show current download queue |
Prowlarr (Indexers)
| Tool | Description |
|---|---|
prowlarr_list_indexers |
List all indexers with status |
prowlarr_test_indexer |
Test a specific indexer connection |
prowlarr_test_all_indexers |
Test all enabled indexers |
prowlarr_search |
Search across indexers for releases |
prowlarr_health |
Check system health warnings |
qBittorrent (Downloads)
| Tool | Description |
|---|---|
qbt_list_torrents |
List torrents with progress and speed |
qbt_torrent_details |
Get detailed torrent info |
qbt_add_magnet |
Add a magnet link |
qbt_pause |
Pause a torrent |
qbt_resume |
Resume a torrent |
qbt_delete |
Delete a torrent (optionally with files) |
qbt_transfer_info |
Global transfer statistics |
Jellyfin (Media Server)
| Tool | Description |
|---|---|
jellyfin_libraries |
List media libraries |
jellyfin_recent |
Recently added items |
jellyfin_system_info |
Server version and system info |
Transport Options
# stdio (default) — for Claude Desktop, Cursor, VS Code
python server.py
# Streamable HTTP — for Docker / remote
python server.py --transport streamable-http --port 8000
# SSE — legacy HTTP transport
python server.py --transport sse --port 8000
Finding Your API Keys
- Sonarr: Settings → General → API Key
- Radarr: Settings → General → API Key
- Prowlarr: Settings → General → API Key
- qBittorrent: Settings → Web UI → Authentication
- Jellyfin: Dashboard → API Keys → Add
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。