FHIR Test Server Resource Search (HAPI)
hapifhirtest/resource-search
Searches the HAPI FHIR public R4 test server and returns a FHIR searchset Bundle of up to 20 matching records of one type: Patient, Observation, Condition, Practitioner or Organization. This is the HAPI FHIR public test server: every record is synthetic or submitted by anonymous users, can be changed or deleted by anyone, and must not be treated as real patient data. Optional filters, each valid only for some types: name (Patient, Practitioner, Organization), gender (Patient, Practitioner), code (Observation, Condition; a LOINC or SNOMED code, optionally written system|code) and patient (Observation, Condition; a Patient id). A filter the chosen type does not support is refused by the server with a validation error. Results are not ordered meaningfully and one call returns one page only; no paging input exists. With no filter the first records the server holds are returned. A search with no matches returns a Bundle with no entry list. Typically 2 to 20 KB. Served by Eden Engine; not an official HAPI FHIR product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Records from the HAPI FHIR public test server (hapi.fhir.org/baseR4): synthetic, user-submitted test data, not real patient records. Served by Eden Engine; not an official HAPI FHIR product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "hapifhirtest/resource-search" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "hapifhirtest/resource-search" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "hapifhirtest/resource-search", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "hapifhirtest/resource-search", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 25, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"type"
],
"properties": {
"code": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Clinical code, for example 29463-7 (LOINC body weight) or http://loinc.org|29463-7. Observation and Condition only."
},
"name": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Name starts with this text. Patient, Practitioner and Organization only."
},
"type": {
"enum": [
"Patient",
"Observation",
"Condition",
"Practitioner",
"Organization"
],
"type": "string",
"description": "FHIR resource type to search."
},
"count": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1,
"description": "Maximum number of records to return (1-20, default 10)."
},
"gender": {
"enum": [
"male",
"female",
"other",
"unknown"
],
"type": "string",
"description": "Administrative gender. Patient and Practitioner only."
},
"patient": {
"type": "string",
"pattern": "^[A-Za-z0-9.-]{1,64}$",
"description": "Id of the Patient the records belong to, for example nhanes-110387. Observation and Condition only."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"resourceType",
"type"
],
"properties": {
"id": {
"type": "string"
},
"link": {
"type": "array",
"items": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"relation": {
"type": "string"
}
},
"additionalProperties": true
},
"description": "Self and next-page links."
},
"type": {
"type": "string",
"description": "Always searchset."
},
"entry": {
"type": "array",
"items": {
"type": "object",
"required": [
"resource"
],
"properties": {
"search": {
"type": "object",
"properties": {
"mode": {
"type": "string"
}
},
"additionalProperties": true
},
"fullUrl": {
"type": "string",
"description": "Absolute URL of the record on the test server."
},
"resource": {
"type": "object",
"required": [
"resourceType",
"id"
],
"properties": {
"id": {
"type": "string",
"description": "Record id on the test server."
},
"resourceType": {
"type": "string",
"description": "FHIR resource type of the record."
}
},
"description": "The FHIR R4 resource; its fields depend on resourceType and on what the submitter filled in.",
"additionalProperties": true
}
},
"additionalProperties": true
},
"description": "The matching records, at most `count`. Absent when nothing matches."
},
"total": {
"type": "integer",
"description": "Total matches. Present only when the server counted them; absent otherwise."
},
"resourceType": {
"type": "string",
"description": "Always Bundle."
}
},
"additionalProperties": true
}