Skip to main content
Glama

readarr_get_download_clients

Retrieve configured download client settings from Readarr for managing book downloads. View client configurations and their parameters.

Instructions

Get download client configurations from Readarr (Books). Shows configured clients and their settings.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Primary MCP tool handler for readarr_get_download_clients (shared with other services). Extracts service name, retrieves ReadarrClient instance, calls getDownloadClients(), formats and returns the list of download clients.
    case "sonarr_get_download_clients": case "radarr_get_download_clients": case "lidarr_get_download_clients": case "readarr_get_download_clients": { const serviceName = name.split('_')[0] as keyof typeof clients; const client = clients[serviceName]; if (!client) throw new Error(`${serviceName} not configured`); const downloadClients = await client.getDownloadClients(); return { content: [{ type: "text", text: JSON.stringify({ count: downloadClients.length, clients: downloadClients.map(c => ({ id: c.id, name: c.name, implementation: c.implementationName, protocol: c.protocol, enabled: c.enable, priority: c.priority, removeCompletedDownloads: c.removeCompletedDownloads, removeFailedDownloads: c.removeFailedDownloads, tags: c.tags, })), }, null, 2), }], }; }
  • src/index.ts:136-143 (registration)
    Registers the 'readarr_get_download_clients' tool (when serviceName='readarr') in the TOOLS array with description and empty input schema.
    name: `${serviceName}_get_download_clients`, description: `Get download client configurations from ${displayName}. Shows configured clients and their settings.`, inputSchema: { type: "object" as const, properties: {}, required: [], }, },
  • Core implementation of getDownloadClients() method in ArrClient base class (inherited by ReadarrClient). Makes authenticated API request to the /downloadclient endpoint.
    /** * Get download clients */ async getDownloadClients(): Promise<DownloadClient[]> { return this.request<DownloadClient[]>('/downloadclient'); }
  • TypeScript interface defining the structure of DownloadClient objects returned by the API.
    export interface DownloadClient { id: number; name: string; implementation: string; implementationName: string; configContract: string; enable: boolean; protocol: string; priority: number; removeCompletedDownloads: boolean; removeFailedDownloads: boolean; fields: Array<{ name: string; value: unknown; }>; tags: number[]; }
  • src/index.ts:79-81 (registration)
    Initializes the ReadarrClient instance if READARR_URL and READARR_API_KEY are set, making it available for tool handlers.
    case 'readarr': clients.readarr = new ReadarrClient(config); break;

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/aplaceforallmystuff/mcp-arr'

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