← Back to search

io.github.cyanheads/seerr-mcp-server

cyanheads Scanned 23d ago

Search Jellyseerr/Overseerr, check availability, and create guarded media requests.

B
85.2 / 100

Versions

0.1.0latest
first seen Jun 30, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 6

seerr_request_status
annotations: verified low

Fetch one media request by ID and return its decoded request status, decoded media availability (including 4K), requester, a routing summary, and a next-step hint tuned to the current state. Get the requestId from seerr_request_media (created.requestId) or seerr_list_requests.

id number is4k boolean input object output object tmdbId number seasons array serverId number createdAt string mediaType enum requestId number updatedAt string displayName string
readOnlyHint true openWorldHint true
seerr_list_requests
annotations: verified low

List recent media requests with their lifecycle status. Filter by status, media type, and requester; echoes the applied filters and decodes every numeric status. Pass a requestId from the results to seerr_request_status for full detail. Titles are not on request objects — set includeTitles to resolve them, or fetch one with seerr_get_media.

input object output object mediaType enum requestId number
readOnlyHint true openWorldHint true
seerr_get_media
annotations: verified low

Fetch exact movie or show details by TMDB ID and media type to confirm the right title before any write. Returns availability and any existing open request. For TV, omit seasonNumber for a per-season summary, or pass a seasonNumber to fetch that season's episode list. Get the tmdbId from seerr_search_media first.

is4k boolean year number input object output object tmdbId number tracked boolean overview string mediaType enum requestId number runtimeMinutes number
readOnlyHint true openWorldHint true
seerr_service_options
annotations: verified low

Summarize the configured Radarr (movie) and Sonarr (TV) services, their default quality profiles, and the Seerr instance capability flags (4K, partial requests, specials, media server) so an agent can reason about what kinds of requests will be accepted and how routing works. Filesystem paths are redacted unless includePaths is set.

is4k boolean input object output object version string mediaServer string movie4kEnabled boolean series4kEnabled boolean partialRequestsEnabled boolean
readOnlyHint true openWorldHint true
seerr_search_media
annotations: verified low

Search movies and TV shows by title and return ranked matches with TMDB ID, year, overview, and decoded availability status when Seerr already tracks the title. People are always excluded. This is the required first step before requesting media — use the returned tmdbId with seerr_get_media or seerr_request_media.

input object output object overview string mediaType enum
readOnlyHint true openWorldHint true
seerr_request_media
annotations: verified low

Create a Seerr media request — the guarded write. Defaults to mode:preview, which resolves the exact title and returns the request payload that WOULD be submitted WITHOUT creating anything; pass mode:request to actually submit, which asks for an explicit confirmation and submits only once that confirmation comes back accepted. Treat "download X" as "create a Seerr request for X". Always preview first unless the title is already confirmed.

input object mediaType enum
readOnlyHint false openWorldHint true idempotentHint false destructiveHint true

Permissions 3

network medium
Server uses network capabilities via: fetch()
shell high
Server uses shell capabilities via: child_process, spawn(), spawnSync()
env_vars low
Server uses env_vars capabilities via: process.env

Scan Findings 23

info
Tool 'seerr_request_status' annotations are consistent annotation_checker · 80%
info
Tool 'seerr_list_requests' annotations are consistent annotation_checker · 80%
info
Tool 'seerr_get_media' annotations are consistent annotation_checker · 80%
info
Tool 'seerr_service_options' annotations are consistent annotation_checker · 80%
info
Tool 'seerr_search_media' annotations are consistent annotation_checker · 80%
info
Tool 'seerr_request_media' annotations are consistent annotation_checker · 80%
medium
OAuth implementation without PKCE auth_checker · 75%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
info
package.json metadata manifest_parser · 100%
info
Tool: seerr_request_status manifest_parser · 75%
info
Tool: seerr_list_requests manifest_parser · 75%
info
Tool: seerr_get_media manifest_parser · 75%
info
Tool: seerr_service_options manifest_parser · 75%
info
Tool: seerr_search_media manifest_parser · 75%
info
Tool: seerr_request_media manifest_parser · 75%
info
Required env vars (4) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 70%
high
Permission: shell access detected permission_analyzer · 95%
low
Permission: env_vars access detected permission_analyzer · 90%
info
SBOM generated: 11 components sbom_generator · 100%
high
Hardcoded Password found in cyanheads-seerr-mcp-server-d0aea98/framework-skills/api-utils/references/security.md secret_scanner · 65%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%