lidarr_get_download_clients
Retrieve configured download clients and their settings from Lidarr music management. View client configurations for monitoring and managing music downloads.
Instructions
Get download client configurations from Lidarr (Music). Shows configured clients and their settings.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:136-143 (registration)Dynamic registration of the 'lidarr_get_download_clients' tool (via addConfigTools('lidarr')) with empty input schema and descriptionname: `${serviceName}_get_download_clients`, description: `Get download client configurations from ${displayName}. Shows configured clients and their settings.`, inputSchema: { type: "object" as const, properties: {}, required: [], }, },
- src/index.ts:883-910 (handler)MCP tool dispatch handler for lidarr_get_download_clients: parses name to 'lidarr', calls LidarrClient.getDownloadClients(), formats and returns JSON responsecase "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/arr-client.ts:543-545 (handler)Core handler implementation in ArrClient (inherited by LidarrClient): performs API GET request to /downloadclient endpointasync getDownloadClients(): Promise<DownloadClient[]> { return this.request<DownloadClient[]>('/downloadclient'); }
- src/arr-client.ts:729-733 (registration)LidarrClient class registration: extends ArrClient, sets apiVersion='v1' for Lidarr-specific API pathsexport class LidarrClient extends ArrClient { constructor(config: ArrConfig) { super('lidarr', config); this.apiVersion = 'v1'; }
- src/arr-client.ts:326-342 (schema)TypeScript interface defining the structure of download client data returned by the APIexport 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[]; }