search_fhir
Search FHIR resources using comprehensive Azure FHIR search capabilities.
Supports resource-specific and common search parameters, modifiers, prefixes, chained searches, and result management. Returns paginated results in FHIR searchset bundles.
Key Features:
- Resource-specific and common search parameters (_id, _lastUpdated, _tag, etc.)
- Search modifiers (:missing, :exact, :contains, :text, :not, etc.)
- Prefixes for ordered parameters (gt, lt, ge, le, etc.)
- Chained searches (e.g., Encounter?subject:Patient.name=Jane)
- Reverse chained searches using _has parameter
- Include and revinclude searches (_include, _revinclude)
- Result parameters (_count, _sort, _elements, _summary, _total)
- Composite search parameters for complex queries
- Pagination support with configurable page sizes (max 1000)
Args: resource_type: FHIR resource type to search (e.g., 'Patient', 'Observation', 'Condition') search_params: Dictionary of FHIR search parameters. Common examples:
- {"name": "Smith", "_count": 50} - Search patients by name, limit 50 results
- {"birthdate": "gt1990-01-01", "_sort": "birthdate"} - Patients born after 1990, sorted
- {"identifier": "12345", "_include": "Patient:general-practitioner"} - Include GP
- {"code": "77386006", "_include": "Observation:subject"} - Pregnancy observations with patients
- {"_lastUpdated": "gt2024-01-01"} - Resources updated after date ctx: MCP Context for logging and progress reporting
Returns: List of matching FHIR resources extracted from searchset Bundle