prowlarr_test_indexers
Checks the health of all configured indexers and returns their status to identify connectivity issues.
Instructions
Test all indexers and return their health status
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:717-724 (registration)Tool registration for 'prowlarr_test_indexers' in the Prowlarr tools section. Defines the tool name, description ('Test all indexers and return their health status'), and empty input schema.
name: "prowlarr_test_indexers", description: "Test all indexers and return their health status", inputSchema: { type: "object" as const, properties: {}, required: [], }, }, - src/index.ts:1984-2005 (handler)Handler for 'prowlarr_test_indexers' in the CallToolRequestSchema switch statement. Calls clients.prowlarr.testAllIndexers() to POST to /indexer/testall, then maps results with indexer names and returns count of healthy/failed indexers with their validation errors.
case "prowlarr_test_indexers": { if (!clients.prowlarr) throw new Error("Prowlarr not configured"); const results = await clients.prowlarr.testAllIndexers(); const indexers = await clients.prowlarr.getIndexers(); const indexerMap = new Map(indexers.map(i => [i.id, i.name])); return { content: [{ type: "text", text: JSON.stringify({ count: results.length, indexers: results.map(r => ({ id: r.id, name: indexerMap.get(r.id) || 'Unknown', isValid: r.isValid, errors: r.validationFailures.map(f => f.errorMessage), })), healthy: results.filter(r => r.isValid).length, failed: results.filter(r => !r.isValid).length, }, null, 2), }], }; } - src/arr-client.ts:832-833 (helper)Helper method in ProwlarrClient that performs the actual API call. Sends a POST request to /api/v1/indexer/testall endpoint and returns the validation results with isValid flag and validationFailure details.
async testAllIndexers(): Promise<Array<{ id: number; isValid: boolean; validationFailures: Array<{ propertyName: string; errorMessage: string }> }>> { return this['request']<Array<{ id: number; isValid: boolean; validationFailures: Array<{ propertyName: string; errorMessage: string }> }>>('/indexer/testall', { method: 'POST' });