list_providers
Retrieve healthcare providers from your practice, filtering by name or specialty to find specific medical professionals.
Instructions
List all healthcare providers in the practice
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results | |
| name | No | Filter by provider name | |
| specialty | No | Filter by specialty |
Implementation Reference
- src/handlers/tool-handlers.ts:334-360 (handler)The handler function that implements the core logic of the 'list_providers' tool. It calls the AthenaHealthClient's getProviders method with the provided arguments and returns the providers list as JSON or an error response.async handleListProviders(args: any) { try { const providers = await this.client.getProviders(args); return { content: [ { type: 'text' as const, text: JSON.stringify(providers, null, 2), }, ], }; } catch (error: any) { return { content: [ { type: 'text' as const, text: JSON.stringify({ error: 'Failed to list providers', message: error.message || 'Unknown error occurred', details: error.details || error.message, }, null, 2), }, ], }; } }
- src/definitions/tools.ts:113-125 (schema)The tool definition including name, description, and input schema for validating arguments to the 'list_providers' tool.{ name: 'list_providers', description: 'List all healthcare providers in the practice', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Maximum number of results', default: 50 }, name: { type: 'string', description: 'Filter by provider name' }, specialty: { type: 'string', description: 'Filter by specialty' }, }, required: [], }, },
- src/mcp-server.ts:197-198 (registration)The switch case in the MCP server's tool call handler that registers and dispatches 'list_providers' calls to the appropriate ToolHandlers method.case 'list_providers': return await this.toolHandlers.handleListProviders(args);