A side-by-side look at the Healthclaw Guardrails and Fhir MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Healthclaw Guardrails for biology & bioinformatics work over a hosted endpoint; choose Fhir MCP Server for biology & bioinformatics as a local process. You can also run both side by side in one mcpServers block.
context_get, fhir_read, fhir_search.FHIR_SERVER_BASE_URL, FHIR_SERVER_CLIENT_ID, FHIR_SERVER_CLIENT_SECRET, FHIR_SERVER_SCOPES.get_capabilities, type, search.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Biology & Bioinformatics | Biology & Bioinformatics |
| Quality signal | 61/100 · Good | 64/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Remote HTTP/SSE | Local subprocess (stdio) |
| Auth | Not declared | OAuth 2.0 |
| Pricing | Free | Free |
| Required env vars | None listed | FHIR_SERVER_BASE_URLFHIR_SERVER_CLIENT_IDFHIR_SERVER_CLIENT_SECRETFHIR_SERVER_SCOPES |
| Verified owner | Community listing | Community listing |
| GitHub stars | 31 | 137 |
| Directory activity | 3 views 0 installs 0 upvotes | 4 views 0 installs 0 upvotes |
| Tools | 27 | 13 |
| Full listing | View Healthclaw Guardrails | View Fhir MCP Server |
context_getRetrieve a pre-built context envelope with patient-centric FHIR resources. Returns bounded, policy-stamped, time-limited context.fhir_readRead a specific FHIR resource by type and ID. Supports FHIR R4 US Core v9 stable resources and FHIR R6 ballot3 experimental resources. Returns redacted resource with PHI protection.fhir_searchSearch for FHIR resources. Supports FHIR R4 US Core v9 stable resources and FHIR R6 ballot3 experimental resources. Supports patient, code, status, _lastUpdated, _count, _sort parameters. Returns paginated, redacted Bundle.fhir_validateValidate a proposed FHIR R6 resource against structural rules. Returns OperationOutcome.questionnaire_populateSDC $populate — pre-fill a Questionnaire for a subject. Returns a QuestionnaireResponse. Read tier; mints a tenant token for non-public tenants.questionnaire_extractSDC $extract — extract FHIR resources from a completed QuestionnaireResponse into a transaction Bundle. Write tier; requires step-up authorization, including for dry_run=true previews.fhir_propose_writePropose a write — validates the resource and returns a preview. Does NOT commit. Write tier: step-up authorization is required and is supplied by the deployment as an X-Step-Up-Token header. You cannot obtain or pass it yourself. If it is absent this returns requires_step_up; tell the patient authorization is needed rather than attempting another route.fhir_commit_writeCommit a previously proposed write. Requires step-up authorization token. This is a destructive operation.fhir_statsCompute statistics (count, min, max, mean) over numeric Observation values. Standard FHIR $stats (since R4). Only supports valueQuantity. Filter by patient and/or code.fhir_interpret_labsInterpret lab Observations against reference ranges — flags each value low/normal/high/critical (HL7 v3 ObservationInterpretation) and returns clinician + consumer summaries. Decision support, not diagnosis. Read-tier. Response includes _meta.ui.resourceUri pointing to an embeddable trend timeline.care_gapsCheck which preventive-care screenings/immunizations a patient may be due for (blood pressure, cholesterol, colorectal/cervical/breast cancer screening, flu, diabetes A1c), from their own connected records. Decision support based on USPSTF/ACIP/ADA guidelines — not a diagnosis or directive. Response includes _meta.ui.resourceUri pointing to an embeddable review UI.guardrail_conformanceRun the guardrail conformance self-test on the connected HealthClaw deployment and return the graded scorecard across seven guardrail properties: PHI redaction, immutable audit, step-up auth, human-in-the-loop, tenant isolation, medical disclaimers, and error fidelity. Uses synthetic data only. Set fresh=true to force a new run instead of the cached result.get_capabilitiesRetrieves metadata about a specified FHIR resource type, including its supported search parameters and custom operations.typeThe FHIR resource type name (e.g., "Patient", "Observation", "Encounter")searchExecutes a standard FHIR search interaction on a given resource type, returning a bundle or list of matching resources.searchParamA mapping of FHIR search parameter names to their desired values (e.g., {"family":"Simpson","birthdate":"1956-05-12"}).response_filter_fhirpaths(Optional) An array of FHIRPath expressions (e.g., `["Patient.name", "Patient.birthDate", "Bundle.link.where(relation='next').url"]`) to apply to the resources in the response bundle.readPerforms a FHIR "read" interaction to retrieve a single resource instance by its type and resource ID, optionally refining the response with search parameters or custom operations.idThe logical ID of a specific FHIR resource instance.operationThe name of a custom FHIR operation or extended query defined for the resource (e.g., "$everything").createExecutes a FHIR "create" interaction to persist a new resource of the specified type.payloadA JSON object representing the full FHIR resource body to be created.updatePerforms a FHIR "update" interaction by replacing an existing resource instance's content with the provided payload.deleteExecute a FHIR "delete" interaction on a specific resource instance.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"healthclaw-guardrails": {
"url": "https://mcp-server-production-5112.up.railway.app/mcp"
}
}
}
{
"mcpServers": {
"wso2-fhir-mcp-server": {
"command": "uvx",
"args": [
"fhir-mcp-server"
],
"env": {
"FHIR_SERVER_BASE_URL": "YOUR_FHIR_SERVER_BASE_URL_HERE",
"FHIR_SERVER_CLIENT_ID": "YOUR_FHIR_SERVER_CLIENT_ID_HERE",
"FHIR_SERVER_CLIENT_SECRET": "YOUR_FHIR_SERVER_CLIENT_SECRET_HERE",
"FHIR_SERVER_SCOPES": "YOUR_FHIR_SERVER_SCOPES_HERE"
}
}
}
}