
jfms7s/servarr-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
An MCP server exposing Sonarr, Radarr, Prowlarr, and Overseerr to an LLM client. Connect Claude or another MCP-compatible LLM to your media stack and ask it to search for content, manage your...
Обзор
An MCP server exposing Sonarr, Radarr, Prowlarr, and Overseerr to an LLM client. Connect Claude or another MCP-compatible LLM to your media stack and ask it to search for content, manage your library, check download status, and more — all via natural language. This server reaches Sonarr and Radarr at their /api/v3 endpoints, and Prowlarr at /api/v1. (Note: Sonarr's published documentation often references "v5" in the URL, but that is the application version, not the API version — use v3.) This server grants any connected MCP client full read/write access to your media stack, including the ability to permanently delete series, movies, and files on disk. Any LLM you connect can invoke destructive tools. Understand this before enabling it, and configure your MCP client with appropriate safeguards. Clone the repository, install dependencies, and build: The server will start on a stdio interface, expecting MCP protocol messages.
README
Показан фрагмент оригинального README. Открыть оригинал.
servarr-mcp
An MCP server exposing Sonarr, Radarr, Prowlarr, and Overseerr to an LLM client. Connect Claude or another MCP-compatible LLM to your media stack and ask it to search for content, manage your library, check download status, and more — all via natural language.
This server reaches Sonarr and Radarr at their /api/v3 endpoints, and Prowlarr at /api/v1. (Note: Sonarr’s published documentation often references “v5” in the URL, but that is the application version, not the API version — use v3.)
Important: This server grants any connected MCP client full read/write access to your media stack, including the ability to permanently delete series, movies, and files on disk. Any LLM you connect can invoke destructive tools. Understand this before enabling it, and configure your MCP client with appropriate safeguards.
Install
Prerequisites: Node.js 20 or later.
From Source
Clone the repository, install dependencies, and build:
git clone https://github.com/jfms7s/servarr-mcp.git
cd servarr-mcp
npm ci
npm run build
Then run the server:
node dist/index.js
The server will start on a stdio interface, expecting MCP protocol messages. Use this command in your MCP client’s configuration (see the Claude Desktop / Claude Code Setup section below).
With Docker
Use the published container image (linux/amd64 and linux/arm64), pinned to a release tag such as v0.1.2, or latest:
docker run --rm -p 3000:3000 \
-e SERVARR_MCP_TOKEN=a-long-random-secret \
-e SONARR_URL=http://sonarr:8989 \
-e SONARR_API_KEY=your-sonarr-api-key \
-e RADARR_URL=http://radarr:7878 \
-e RADARR_API_KEY=your-radarr-api-key \
-e PROWLARR_URL=http://prowlarr:9696 \
-e PROWLARR_API_KEY=your-prowlarr-api-key \
-e OVERSEERR_URL=http://overseerr:5055 \
-e OVERSEERR_API_KEY=your-overseerr-api-key \
ghcr.io/jfms7s/servarr-mcp:v0.1.2
Note: The image defaults to the HTTP transport (SERVARR_MCP_TRANSPORT=http), which requires SERVARR_MCP_TOKEN — without it the container exits at startup. The URLs must be reachable from inside the container: localhost there is the container itself, not your host. Use the arr containers’ names on a shared Docker network (as above), or their LAN addresses. For many variables, use --env-file:
docker run --rm -p 3000:3000 --env-file .env ghcr.io/jfms7s/servarr-mcp:latest
Where .env contains your configuration lines (one per line: VAR_NAME=value).
Building the Docker Image Locally
If you want to build the image locally:
docker build -t servarr-mcp .
docker run --rm -p 3000:3000 --env-file .env servarr-mcp
Configuration
The server reads configuration from environment variables. Each product is independently optional — you can configure only the ones you use. The server will fail to start only if no products are configured.
| Variable | Example | Required | Purpose |
Установка
docker run --rm -i --add-host=host.docker.internal:host-gateway --env SERVARR_MCP_TRANSPORT=stdio --env SONARR_URL=http://host.docker.internal:8989 --env SONARR_API_KEY=your-sonarr-api-key --env RADARR_URL=http://host.docker.internal:7878 --env RADARR_API_KEY=your-radarr-api-key --env PROWLARR_URL=http://host.docker.internal:9696 --env PROWLARR_API_KEY=your-prowlarr-api-key --env OVERSEERR_URL=http://host.docker.internal:5055 --env OVERSEERR_API_KEY=your-overseerr-api-key ghcr.io/jfms7s/servarr-mcp:latestКонфигурация
{
"mcpServers": {
"servarr": {
"command": "node",
"args": ["/path/to/servarr-mcp/dist/index.js"],
"env": {
"SONARR_URL": "http://localhost:8989",
"SONARR_API_KEY": "your-sonarr-api-key",
"RADARR_URL": "http://localhost:7878",
"RADARR_API_KEY": "your-radarr-api-key",
"PROWLARR_URL": "http://localhost:9696",
"PROWLARR_API_KEY": "your-prowlarr-api-key",
"OVERSEERR_URL": "http://localhost:5055",
"OVERSEERR_API_KEY": "your-overseerr-api-key"
}
}
}
}