Skip to main content
Glama
arr-mcps

profilarr-mcp

Official

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PROFILARR_URLYesThe base URL of your Profilarr instance.
PROFILARR_API_KEYYesAPI key for Profilarr. Required for every tool except profilarr_health, which is public.
PROFILARR_TEMP_DIRNoDirectory for temporary files used in backup download/upload. Defaults to the system temp dir.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
profilarr_healthA

Check system health. Public -- requires no API key. Returns status (healthy|degraded|unhealthy) and timestamp.

profilarr_statusA

Get overall system status: version, uptime, databases, arrs (with sync state), job queue, backups, and unread announcements.

profilarr_get_openapi_specA

Fetch Profilarr's resolved OpenAPI 3.1 spec as a JSON document.

profilarr_list_arr_instancesA

List connected Radarr/Sonarr instances. Secrets (api_key) are stripped.

profilarr_list_databasesA

List linked PCD databases. Secrets (personal_access_token -> hasPat) stripped.

profilarr_create_databaseB

Link a PCD database: clones the repo, validates its manifest, processes dependencies. Synchronous; may take seconds. personal_access_token requires git_user_name and git_user_email. Returns the new DatabaseInstance.

profilarr_get_databaseA

Get a single linked database by id. Secrets stripped.

profilarr_update_databaseA

Partial update of a linked database. Only provided fields change; unknown fields are ignored. See profilarr_create_database for field-dependency rules (PAT requires git_user_name/email, local_ops_enabled requires PAT).

profilarr_delete_databaseA

Unlink a database: removes the row, deletes the cloned repo from disk, cancels scheduled sync jobs.

profilarr_sync_databaseA

Trigger a database pull (PCD sync). Async: returns {jobId} (HTTP 202); poll with profilarr_get_job(jobId). Note: this pulls the linked DB repo, NOT an Arr instance sync.

profilarr_get_jobA

Get current status of a job-queue entry (e.g. from profilarr_create_backup or profilarr_sync_database). Returns status with run result when finished.

profilarr_list_backupsA

List backup archives on the server, newest first.

profilarr_create_backupA

Create a backup. Async: returns {jobId} (HTTP 202); poll with profilarr_get_job(jobId). The archive is sanitized (secrets stripped).

profilarr_download_backupA

Download a backup archive (sanitized on the fly) and write it to the local temp dir (PROFILARR_TEMP_DIR or system temp). Returns {path, filename, size} so the caller can read the file from disk.

profilarr_delete_backupB

Delete a backup archive from the server.

profilarr_upload_backupA

Upload a local .tar.gz backup to the server as multipart form data. Returns the stored filename/size.

profilarr_get_backup_settingsA

Get backup settings (schedule, retentionDays, enabled, ...).

profilarr_update_backup_settingsA

Update backup settings. Only schedule (hourly|daily|weekly|monthly), retention_days (1-365), and enabled are updatable. Returns updated settings.

profilarr_list_announcementsA

List visible announcements (withdrawn/expired/version-incompatible filtered), newest first.

profilarr_get_announcementA

Get a single announcement by id, including its markdown body.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 20 tools

Disambiguation5/5

Each tool targets a distinct resource and action: announcements (list/get), databases (CRUD+sync), backups (full lifecycle), jobs (status), health/status, arr instances (list), and settings. No two tools overlap in purpose; even status vs health are clearly separated as system overview vs health check.

Naming Consistency4/5

The dominant pattern is profilarr_verb_noun (get_, list_, create_, update_, delete_, sync_, download_, upload_). However, profilarr_health and profilarr_status are noun-only, and get_openapi_spec is slightly inconsistent with list vs get. Minor deviations, but overall predictable and readable.

Tool Count4/5

20 tools is on the heavier side but justified by the breadth of the domain: databases, backups, announcements, arr instances, jobs, health, and settings. Each tool serves a distinct function, so the count feels appropriate rather than bloated.

Completeness4/5

Core workflows are well covered: full CRUD for database links and backups, plus settings and status. Minor gaps exist (e.g., no arr instance add/remove/sync, no announcement management), but these are likely outside the server's primary scope. The surface is coherent for most user journeys.

Maintenance

ActivityMaintained
ResponsivenessNo issues