Skip to main content
Glama

prowlarr_get_stats

Retrieve indexer performance statistics including queries, grabs, and failures to monitor search reliability and track download activity.

Instructions

Get indexer statistics (queries, grabs, failures)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • MCP tool handler: checks if Prowlarr client configured, calls getIndexerStats(), formats stats with counts, per-indexer details, and totals into JSON response
    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), }], }; }
  • Tool schema: defines name, description, and empty input schema (no parameters required)
    name: "prowlarr_get_stats", description: "Get indexer statistics (queries, grabs, failures)", inputSchema: { type: "object" as const, properties: {}, required: [], }, }
  • src/index.ts:535-579 (registration)
    Tool registration: adds prowlarr_get_stats to TOOLS array conditionally if Prowlarr client is configured
    if (clients.prowlarr) { TOOLS.push( { name: "prowlarr_get_indexers", description: "Get all configured indexers in Prowlarr", inputSchema: { type: "object" as const, properties: {}, required: [], }, }, { name: "prowlarr_search", description: "Search across all Prowlarr indexers", inputSchema: { type: "object" as const, properties: { query: { type: "string", description: "Search query", }, }, required: ["query"], }, }, { name: "prowlarr_test_indexers", description: "Test all indexers and return their health status", inputSchema: { type: "object" as const, properties: {}, required: [], }, }, { name: "prowlarr_get_stats", description: "Get indexer statistics (queries, grabs, failures)", inputSchema: { type: "object" as const, properties: {}, required: [], }, } ); }
  • ProwlarrClient helper: performs API GET request to /indexerstats endpoint to retrieve raw indexer statistics
    * Get indexer statistics */ async getIndexerStats(): Promise<{ indexers: IndexerStats[] }> { return this['request']<{ indexers: IndexerStats[] }>('/indexerstats'); }
  • TypeScript interface defining the structure of indexer stats data returned from Prowlarr API
    export interface IndexerStats { id: number; indexerId: number; indexerName: string; averageResponseTime: number; numberOfQueries: number; numberOfGrabs: number; numberOfRssQueries: number; numberOfAuthQueries: number; numberOfFailedQueries: number; numberOfFailedGrabs: number; numberOfFailedRssQueries: number; numberOfFailedAuthQueries: number; }

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