prowlarr_get_stats
Retrieve indexer performance metrics including queries, successful grabs, and failures to monitor search reliability.
Instructions
Get indexer statistics (queries, grabs, failures)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:570-577 (registration)Tool registration including name, description, and empty input schema.name: "prowlarr_get_stats", description: "Get indexer statistics (queries, grabs, failures)", inputSchema: { type: "object" as const, properties: {}, required: [], }, }
- src/index.ts:1617-1642 (handler)Main MCP tool handler: checks configuration, calls ProwlarrClient.getIndexerStats(), formats and returns indexer statistics with totals.case "prowlarr_get_stats": { if (!clients.prowlarr) throw new Error("Prowlarr not configured"); const stats = await clients.prowlarr.getIndexerStats(); return { content: [{ type: "text", text: JSON.stringify({ count: stats.indexers.length, indexers: stats.indexers.map(s => ({ name: s.indexerName, queries: s.numberOfQueries, grabs: s.numberOfGrabs, failedQueries: s.numberOfFailedQueries, failedGrabs: s.numberOfFailedGrabs, avgResponseTime: s.averageResponseTime + 'ms', })), totals: { queries: stats.indexers.reduce((sum, s) => sum + s.numberOfQueries, 0), grabs: stats.indexers.reduce((sum, s) => sum + s.numberOfGrabs, 0), failedQueries: stats.indexers.reduce((sum, s) => sum + s.numberOfFailedQueries, 0), failedGrabs: stats.indexers.reduce((sum, s) => sum + s.numberOfFailedGrabs, 0), }, }, null, 2), }], }; }
- src/arr-client.ts:978-982 (helper)ProwlarrClient.getIndexerStats(): Fetches indexer stats from Prowlarr /indexerstats API endpoint.* Get indexer statistics */ async getIndexerStats(): Promise<{ indexers: IndexerStats[] }> { return this['request']<{ indexers: IndexerStats[] }>('/indexerstats'); }
- src/arr-client.ts:950-954 (helper)ProwlarrClient class definition and constructor.export class ProwlarrClient extends ArrClient { constructor(config: ArrConfig) { super('prowlarr', config); this.apiVersion = 'v1'; }
- src/index.ts:82-84 (registration)Initialization of ProwlarrClient instance if PROWLARR_URL and PROWLARR_API_KEY are set.case 'prowlarr': clients.prowlarr = new ProwlarrClient(config); break;