lidarr_get_tags
Retrieve all organizational tags from Lidarr to categorize and filter music content effectively.
Instructions
Get all tags defined in Lidarr (Music). Tags can be used to organize and filter content.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:154-161 (registration)Registration of the 'lidarr_get_tags' tool (dynamically named via `${serviceName}_get_tags` where serviceName='lidarr') including input schema (no parameters). Called via addConfigTools('lidarr') at line 177.
name: `${serviceName}_get_tags`, description: `Get all tags defined in ${displayName}. Tags can be used to organize and filter content.`, inputSchema: { type: "object" as const, properties: {}, required: [], }, }, - src/index.ts:156-160 (schema)Input schema for lidarr_get_tags: empty object (no input parameters required). Output is JSON of tags list.
inputSchema: { type: "object" as const, properties: {}, required: [], }, - src/index.ts:930-947 (handler)MCP tool handler for lidarr_get_tags: parses service name, retrieves LidarrClient instance, calls getTags(), returns formatted JSON response with tag count and list.
case "sonarr_get_tags": case "radarr_get_tags": case "lidarr_get_tags": case "readarr_get_tags": { const serviceName = name.split('_')[0] as keyof typeof clients; const client = clients[serviceName]; if (!client) throw new Error(`${serviceName} not configured`); const tags = await client.getTags(); return { content: [{ type: "text", text: JSON.stringify({ count: tags.length, tags: tags.map(t => ({ id: t.id, label: t.label })), }, null, 2), }], }; } - src/arr-client.ts:568-573 (helper)Core implementation of getTags() in ArrClient base class (used by LidarrClient): makes API request to '/tag' endpoint to fetch all tags.
/** * Get all tags */ async getTags(): Promise<Tag[]> { return this.request<Tag[]>('/tag'); } - src/arr-client.ts:729-732 (helper)LidarrClient class definition, extends ArrClient (inherits getTags()), uses API v1, instantiated in index.ts for lidarr_get_tags handler.
export class LidarrClient extends ArrClient { constructor(config: ArrConfig) { super('lidarr', config); this.apiVersion = 'v1';