Skip to main content
Glama

trash_list_profiles

Lists recommended TRaSH Guides quality profiles for Radarr or Sonarr, showing optimal settings for different media types like 1080p, 4K, and Remux.

Instructions

List available TRaSH Guides quality profiles for Radarr or Sonarr. Shows recommended profiles for different use cases (1080p, 4K, Remux, etc.)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
serviceYesWhich service to get profiles for

Implementation Reference

  • Core handler function in TrashClient class that lists available TRaSH quality profiles for a service by fetching from GitHub API or cache, including descriptions.
    async listProfiles(service: TrashService): Promise<{ name: string; description?: string }[]> { // Check cache const cached = cache.getProfileList(service); if (cached) { // Fetch details for each const profiles = await Promise.all( cached.map(name => this.getProfile(service, name)) ); return profiles.filter((p): p is TrashQualityProfile => p !== null).map(p => ({ name: p.name, description: p.trash_description, })); } // Fetch list from GitHub const profileNames = await listGitHubDir(`${service}/quality-profiles`); cache.setProfileList(service, profileNames); // Fetch details const profiles = await Promise.all( profileNames.map(name => this.getProfile(service, name)) ); return profiles.filter((p): p is TrashQualityProfile => p !== null).map(p => ({ name: p.name, description: p.trash_description, })); }
  • MCP server tool handler that calls trashClient.listProfiles and formats the response as MCP content.
    case "trash_list_profiles": { const service = (args as { service: TrashService }).service; const profiles = await trashClient.listProfiles(service); return { content: [{ type: "text", text: JSON.stringify({ service, count: profiles.length, profiles: profiles.map(p => ({ name: p.name, description: p.description?.replace(/<br>/g, ' ') || 'No description', })), usage: "Use trash_get_profile to see full details for a specific profile", }, null, 2), }], }; }
  • src/index.ts:600-613 (registration)
    Tool registration in TOOLS array, including name, description, and input schema.
    name: "trash_list_profiles", description: "List available TRaSH Guides quality profiles for Radarr or Sonarr. Shows recommended profiles for different use cases (1080p, 4K, Remux, etc.)", inputSchema: { type: "object" as const, properties: { service: { type: "string", enum: ["radarr", "sonarr"], description: "Which service to get profiles for", }, }, required: ["service"], }, },
  • Input schema definition for the trash_list_profiles tool, specifying the required 'service' parameter.
    inputSchema: { type: "object" as const, properties: { service: { type: "string", enum: ["radarr", "sonarr"], description: "Which service to get profiles for", }, }, required: ["service"], },
  • Singleton instance of TrashClient exported and used by the tool handler.
    export const trashClient = new TrashClient();

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