Particle Health MCP by usefulapi
io.usefulapi/particlehealth · v1.11.1
Query Particle Health patient records across connected clinical networks.
MCPremoteno credentialsHealthDocuments & PDF
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 11 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 88/100
What it does: 11 tools · 9 read, 2 write (incl. delete/pay) · Health, Documents & PDF
Test call particle_search_network_participants: needs a key: HTTP 401 (915 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://particlehealth.usefulapi.io/mcpTools
11 tools listed at last check
particle_get_patientFetch a single patient record by its Particle patient id. Endpoint: GET /api/v2/patients/{particle_patient_id}.particle_search_patientSearch for an existing patient by demographics (non-mutating). Returns an array of matching patient objects (or a 204 message when none match). Endpoint: POST /api/v2/patients/search.particle_get_query_statusGet the status of a clinical-record retrieval query (state, timing, demographics, files). Omit query_id to get the latest COMPLETE query. Endpoint: GET /api/v2/patients/{particle_patient_id}/query.particle_get_fhirRetrieve the patient's complete clinical record as a FHIR searchset Bundle. Supports incremental sync and pagination. Endpoint: GET /api/v2/patients/{particle_patient_id}/fhir.particle_get_fhir_by_typeRetrieve only one FHIR resource type for a patient (e.g. Condition, MedicationRequest, Observation) as a Bundle. Supports the same pagination as particle_get_fhir. Endpoint: GET /api/v2/patients/{particle_patient_id}/fhir/{type}.particle_get_flatRetrieve the patient's clinical data in Particle's flattened (de-nested) format, easier to read than raw FHIR. Optionally filter to one domain. Endpoint: GET /api/v2/patients/{particle_patient_id}/flat.particle_get_ccdaRetrieve the patient's C-CDA clinical document(s). May be large and returned as XML/text — parsed if JSON, otherwise passed through as-is. Endpoint: GET /api/v2/patients/{particle_patient_id}/ccda.particle_search_network_participantsList the health-data network participants (organizations Particle can query). Optionally filter by state or zipcode, and page with continuation_token. Endpoint: GET /api/v1/networkparticipants (with /state/{state} and /zipcode/{zip} variants).particle_get_patient_documentsList the documents uploaded / available for a patient. Endpoint: GET /api/v1/documents/{patient_id}.particle_submit_patient⚠️ WRITE: register a new patient with Particle Health. Returns the patient with a system-generated particle_patient_id (use it for subsequent queries). Endpoint: POST /api/v2/patients.particle_create_query⚠️ WRITE: initiate a nationwide clinical-record retrieval for a patient. Returns a query_id — poll particle_get_query_status for progress. Endpoint: POST /api/v2/patients/{particle_patient_id}/query.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.usefulapi/particlehealth)