radarr_get_root_folders
Retrieve root folder paths, storage availability, and unmapped folder information from Radarr for managing movie library organization.
Instructions
Get root folders and storage info from Radarr (Movies). Shows paths, free space, and unmapped folders.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:856-880 (handler)Handler for radarr_get_root_folders (and other _get_root_folders tools). Extracts service from tool name, retrieves the client instance, calls getRootFoldersDetailed(), formats response with byte formatting and unmapped folder counts, returns structured JSON.case "sonarr_get_root_folders": case "radarr_get_root_folders": case "lidarr_get_root_folders": case "readarr_get_root_folders": { const serviceName = name.split('_')[0] as keyof typeof clients; const client = clients[serviceName]; if (!client) throw new Error(`${serviceName} not configured`); const folders = await client.getRootFoldersDetailed(); return { content: [{ type: "text", text: JSON.stringify({ count: folders.length, folders: folders.map(f => ({ id: f.id, path: f.path, accessible: f.accessible, freeSpace: formatBytes(f.freeSpace), freeSpaceBytes: f.freeSpace, unmappedFolders: f.unmappedFolders?.length || 0, })), }, null, 2), }], }; }
- src/index.ts:174-179 (registration)Conditional registration of config review tools for configured services, including radarr_get_root_folders via addConfigTools('radarr', ...).// Add config tools for each configured service (except Prowlarr which has different config) if (clients.sonarr) addConfigTools('sonarr', 'Sonarr (TV)'); if (clients.radarr) addConfigTools('radarr', 'Radarr (Movies)'); if (clients.lidarr) addConfigTools('lidarr', 'Lidarr (Music)'); if (clients.readarr) addConfigTools('readarr', 'Readarr (Books)');
- src/index.ts:127-134 (schema)Tool schema definition for radarr_get_root_folders (no input params required). Defined dynamically inside addConfigTools function.name: `${serviceName}_get_root_folders`, description: `Get root folders and storage info from ${displayName}. Shows paths, free space, and unmapped folders.`, inputSchema: { type: "object" as const, properties: {}, required: [], }, },
- src/arr-client.ts:575-580 (helper)Helper method getRootFoldersDetailed() in ArrClient (base for RadarrClient) that makes API request to /rootfolder endpoint returning detailed root folder info including freeSpace and unmappedFolders./** * Get detailed root folders */ async getRootFoldersDetailed(): Promise<RootFolder[]> { return this.request<RootFolder[]>('/rootfolder'); }
- src/arr-client.ts:406-412 (helper)Type definition for RootFolder interface used by getRootFoldersDetailed() response.export interface RootFolder { id: number; path: string; accessible: boolean; freeSpace: number; unmappedFolders?: Array<{ name: string; path: string }>; }