Skip to main content
Glama
akiani

Epic Patient API MCP Server

by akiani
labs.py1.22 kB
"""Handle lab results queries.""" import json from ..data import PatientDataLoader def handle_list_labs(patient_id: str, loader: PatientDataLoader) -> str: """List patient lab results (summary with IDs, test names, and dates only).""" if not loader.patient_exists(patient_id): return json.dumps({"error": f"Patient {patient_id} not found"}) labs = loader.get_lab_results(patient_id) summary = [ { "id": lab.id, "date": str(lab.date), "test_name": lab.test_name, "ordering_provider": lab.ordering_provider } for lab in labs ] return json.dumps(summary, indent=2) def handle_get_lab_details(patient_id: str, lab_id: str, loader: PatientDataLoader) -> str: """Get detailed information for a specific lab result.""" if not loader.patient_exists(patient_id): return json.dumps({"error": f"Patient {patient_id} not found"}) labs = loader.get_lab_results(patient_id) for lab in labs: if lab.id == lab_id: return json.dumps(lab.model_dump(mode='json'), indent=2, default=str) return json.dumps({"error": f"Lab result {lab_id} not found for patient {patient_id}"})

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/akiani/mock-epic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server