Skip to main content
Glama
LtMarx
by LtMarx

Arr-MCP

An MCP server for your *ARR stack — Radarr, Sonarr, Lidarr, Readarr, and Prowlarr.

Supports stdio (local, Claude Desktop) and HTTP/Streamable HTTP (remote, ChatGPT, any MCP-compatible client).

Tools

Cross-service

Tool

Description

arr_get_services

Show which services are configured

arr_search_all

Search all configured services at once

Radarr (Movies)

Tool

Description

radarr_get_movies

List movies (paginated)

radarr_search_movies

Search by title

radarr_add_movie

Add by TMDB ID

radarr_update_movie

Update monitored/quality profile

radarr_delete_movie

Delete (optionally with files)

radarr_search_movie

Trigger download search for a movie

radarr_refresh_movie

Refresh metadata

radarr_get_queue

Download queue (paginated)

radarr_delete_queue_item

Remove item from queue

radarr_get_calendar

Upcoming releases

radarr_get_health

Health warnings

radarr_get_quality_profiles

Quality profiles

radarr_get_root_folders

Root folders

radarr_get_download_clients

Download clients

radarr_get_tags

Tags

radarr_get_naming

File naming config

radarr_get_status

System status

Sonarr (TV Shows)

Tool

Description

sonarr_get_series

List series (paginated)

sonarr_search_series

Search by title

sonarr_add_series

Add by TVDB ID

sonarr_delete_series

Delete (optionally with files)

sonarr_refresh_series

Refresh metadata

sonarr_get_episodes

List episodes (optionally by season)

sonarr_search_missing

Trigger search for missing episodes

sonarr_search_episode

Trigger search for a specific episode

sonarr_get_queue

Download queue (paginated)

sonarr_delete_queue_item

Remove item from queue

sonarr_get_calendar

Upcoming air dates

sonarr_get_health

Health warnings

sonarr_get_quality_profiles

Quality profiles

sonarr_get_root_folders

Root folders

sonarr_get_download_clients

Download clients

sonarr_get_tags

Tags

sonarr_get_naming

File naming config

sonarr_get_status

System status

Lidarr (Music)

Tool

Description

lidarr_get_artists

List artists (paginated)

lidarr_search_artists

Search by name

lidarr_add_artist

Add by MusicBrainz ID

lidarr_get_albums

List albums (optionally by artist, paginated)

lidarr_search_missing

Trigger search for missing albums

lidarr_get_calendar

Upcoming album releases

lidarr_get_health

Health warnings

lidarr_get_quality_profiles

Quality profiles

lidarr_get_metadata_profiles

Metadata profiles

lidarr_get_root_folders

Root folders

lidarr_get_download_clients

Download clients

lidarr_get_tags

Tags

lidarr_get_status

System status

Readarr (Books)

Tool

Description

readarr_get_authors

List authors (paginated)

readarr_search_authors

Search by name

readarr_add_author

Add by Goodreads ID

readarr_get_books

List books (optionally by author, paginated)

readarr_search_books

Search by title or ISBN

readarr_get_health

Health warnings

readarr_get_quality_profiles

Quality profiles

readarr_get_root_folders

Root folders

readarr_get_status

System status

Prowlarr (Indexers)

Tool

Description

prowlarr_get_indexers

List indexers

prowlarr_test_indexer

Test a specific indexer

prowlarr_test_all_indexers

Test all indexers

prowlarr_search

Search across indexers

prowlarr_get_indexer_stats

Indexer statistics

prowlarr_get_health

Health warnings

prowlarr_get_status

System status

Related MCP server: nas-mcp-server

Setup

1. Install & Build

npm install
npm run build

2. Configure

Copy .env.example to .env and fill in your service URLs and API keys. Only configure the services you use — unconfigured services are skipped at startup and their tools don't appear.

API keys: Settings → General → Security → API Key in each app.


Transport modes

stdio — local (Claude Desktop)

Default mode. The MCP client launches the process directly.

{
  "mcpServers": {
    "arr": {
      "command": "node",
      "args": ["/path/to/arr-mcp/dist/index.js"],
      "env": {
        "RADARR_URL": "http://localhost:7878",
        "RADARR_API_KEY": "...",
        "SONARR_URL": "http://localhost:8989",
        "SONARR_API_KEY": "..."
      }
    }
  }
}

HTTP — remote (ChatGPT, hosted clients)

Set MCP_TRANSPORT=http. The server listens on http://HOST:PORT/mcp and accepts POST requests per the MCP Streamable HTTP spec.

MCP_TRANSPORT=http MCP_PORT=3000 \
  RADARR_URL=http://... RADARR_API_KEY=... \
  node dist/index.js

A GET /health endpoint is also available for uptime checks.


Docker

Het gepubliceerde image staat op GitHub Container Registry:

ghcr.io/ltmarx/arr-mcp:latest

De docker-compose.yml heeft twee profielen — stdio en http — die nooit tegelijk actief zijn.

HTTP mode — remote/persistent server

cp .env.example .env   # vul je keys in
docker compose --profile http up

De server luistert op http://<host>:3000/mcp. Poort aanpassen: MCP_PORT=8080 docker compose --profile http up.

Controleer of de server draait:

curl http://localhost:3000/health
# → {"status":"ok","transport":"http"}

Stdio mode — lokaal (Claude Desktop)

docker compose --profile stdio up

Of direct via docker run (wordt gestart door de MCP client):

docker run --rm -i \
  -e RADARR_URL=http://192.168.1.x:7878 \
  -e RADARR_API_KEY=abc123 \
  ghcr.io/ltmarx/arr-mcp:latest

MCP client config voor Claude Desktop:

{
  "mcpServers": {
    "arr": {
      "command": "docker",
      "args": ["run", "--rm", "-i",
        "-e", "RADARR_URL", "-e", "RADARR_API_KEY",
        "-e", "SONARR_URL", "-e", "SONARR_API_KEY",
        "ghcr.io/ltmarx/arr-mcp:latest"
      ],
      "env": {
        "RADARR_URL": "http://localhost:7878",
        "RADARR_API_KEY": "...",
        "SONARR_URL": "http://localhost:8989",
        "SONARR_API_KEY": "..."
      }
    }
  }
}

Tip: Als je *ARR draait op de host machine gebruik dan host.docker.internal (Mac/Windows) of het host IP-adres in plaats van localhost.

Releases

Releases worden automatisch gepubliceerd via GitHub Actions. Maak een tag aan op GitHub (v1.0.0) en publiceer een Release — het multi-arch image (amd64 + arm64) verschijnt vanzelf op GHCR.

Development

npm run dev   # run met tsx (geen build stap)
npm run build # compileer naar dist/
npm start     # run gecompileerde output
F
license - not found
-
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
3dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/LtMarx/Arr-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server