Metriport MCP by usefulapi
Server Details
Read and write patients, facilities, medical documents, and consolidated FHIR records in Metriport.
- Status
- Healthy
- Uptime
- 79.1% over 55 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose: patient creation, document and query status, facility retrieval, listing patients/facilities/documents, and starting queries. No overlap or ambiguity.
All tools follow a consistent 'metriport_verb_noun' pattern with 'get' for single items, 'list' for multiples, and 'start' for initiating asynchronous queries. No mixing of conventions.
12 tools appropriately cover the core medical data operations: patient management, facility management, document queries, and consolidated data queries. The scope is well-balanced.
The tool set lacks update and delete operations for patients and facilities, which are essential for full lifecycle management. Key CRUD actions are missing, creating potential dead ends.
Available Tools
12 toolsmetriport_create_patientCreate patientDestructiveInspect
Creates a Patient in Metriport (writes PHI and initiates health-information-exchange queries). Medical API: POST /medical/v1/patient (facilityId is a required query param).
| Name | Required | Description | Default |
|---|---|---|---|
| dob | Yes | Date of birth, yyyy-mm-dd. | |
| address | Yes | One or more addresses for the Patient. | |
| contact | No | Optional contact info (phone / email). | |
| lastName | Yes | The Patient's last name(s). | |
| firstName | Yes | The Patient's first name(s). | |
| facilityId | Yes | REQUIRED. The Facility ID where the Patient receives care. | |
| middleName | No | The Patient's middle name(s). | |
| genderAtBirth | Yes | Gender at birth: M, F, O (other), or U (unknown). | |
| personalIdentifiers | No | Optional personal IDs (driver's license / SSN). |
metriport_get_document_query_statusGet document query statusRead-onlyInspect
Check the progress/status of a Patient's document query (download + FHIR conversion counts). Medical API: POST /medical/v1/document/query with only patientId (no facilityId) returns current status without starting a new query.
| Name | Required | Description | Default |
|---|---|---|---|
| patientId | Yes | The Patient ID whose document-query status to check. |
metriport_get_document_urlGet document download URLRead-onlyInspect
Get a temporary, downloadable URL for a document by its file name (optionally converting XML/CDA to html or pdf). Medical API: GET /medical/v1/document/download-url.
| Name | Required | Description | Default |
|---|---|---|---|
| fileName | Yes | The file name of the document (from metriport_list_documents). | |
| conversionType | No | Optional doc type to convert to, e.g. pdf, html, xml (for XML/CDA files). |
metriport_get_facilityGet facilityRead-onlyInspect
Get a single Facility by its Metriport ID. Medical API: GET /medical/v1/facility/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The Metriport Facility ID. |
metriport_get_medical_record_summaryGet medical record summaryRead-onlyInspect
Get a URL to the Patient's medical record summary rendered as pdf or html. Medical API: GET /medical/v1/patient/{patientId}/medical-record.
| Name | Required | Description | Default |
|---|---|---|---|
| patientId | Yes | The Metriport Patient ID. | |
| conversionType | Yes | The format to render: pdf or html. |
metriport_get_patientGet patientRead-onlyInspect
Get a single Patient by its Metriport ID (demographics + facility IDs). Medical API: GET /medical/v1/patient/{id}.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The Metriport Patient ID. |
metriport_list_consolidated_queriesList consolidated queriesRead-onlyInspect
Get the status of the Patient's consolidated-data (FHIR) queries. Medical API: GET /medical/v1/patient/{id}/consolidated/query.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The Metriport Patient ID. |
metriport_list_documentsList documentsRead-onlyInspect
List the document references currently available for a Patient at Metriport (optionally filtered by date range and content search). Medical API: GET /medical/v1/document.
| Name | Required | Description | Default |
|---|---|---|---|
| dateTo | No | Inclusive end date yyyy-mm-dd. | |
| content | No | Text to search within the document reference and contents (min 3 chars). | |
| dateFrom | No | Inclusive start date yyyy-mm-dd. | |
| patientId | Yes | The Patient ID whose available documents to list. |
metriport_list_facilitiesList facilitiesRead-onlyInspect
List all Facilities under your Metriport Organization (id, name, npi, address). Medical API: GET /medical/v1/facility.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
metriport_list_patientsList patientsRead-onlyInspect
List Patients — all Patients, or only those at a given Facility if facilityId is supplied. Medical API: GET /medical/v1/patient.
| Name | Required | Description | Default |
|---|---|---|---|
| facilityId | No | Optional Facility ID to filter by. Omit to list all patients. |
metriport_start_consolidated_queryStart consolidated queryDestructiveInspect
Starts a consolidated-data (FHIR) query for the patient. Returns a requestId; the bundle is delivered asynchronously (webhook). Medical API: POST /medical/v1/patient/{id}/consolidated/query.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The Metriport Patient ID. | |
| dateTo | No | Inclusive end date yyyy-mm-dd. | |
| dateFrom | No | Inclusive start date yyyy-mm-dd. | |
| metadata | No | Optional custom string key-value pairs returned in the webhook. | |
| resources | No | Comma-separated, case-sensitive list of FHIR resource types. Omit for all. | |
| conversionType | No | Output format: json, pdf, or html. |
metriport_start_document_queryStart document queryDestructiveInspect
Starts a document query — retrieves the patient's medical documents from connected HIE networks. Returns a requestId; results arrive asynchronously. Medical API: POST /medical/v1/document/query (patientId and facilityId are required query params).
| Name | Required | Description | Default |
|---|---|---|---|
| metadata | No | Optional custom string key-value pairs returned in the webhook. | |
| patientId | Yes | REQUIRED. The Patient ID to query documents for. | |
| facilityId | Yes | REQUIRED. The Facility ID where the patient receives care. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
12 tool updates
- Changed
metriport_create_patient1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_get_document_query_status1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_get_document_url1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_get_facility1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_get_medical_record_summary1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_get_patient1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_list_consolidated_queries1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_list_documents1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_list_facilities1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_list_patients1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_start_consolidated_query1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
metriport_start_document_query1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
12 tool updates
- First observed
metriport_create_patient - First observed
metriport_get_document_query_status - First observed
metriport_get_document_url - First observed
metriport_get_facility - First observed
metriport_get_medical_record_summary - First observed
metriport_get_patient - First observed
metriport_list_consolidated_queries - First observed
metriport_list_documents - First observed
metriport_list_facilities - First observed
metriport_list_patients - First observed
metriport_start_consolidated_query - First observed
metriport_start_document_query
Related MCP Connectors
- mcpOAuthcom.medplum
Securely access and manage FHIR healthcare data stored in Medplum.
Read and write DrChrono patients, appointments, offices and clinical notes.
Read wearables and lab health data — sleep, activity, workouts, timeseries, lab tests and orders.
Read and write NexHealth appointments, patients, providers and locations.
Related MCP Servers
- FlicenseAqualityDmaintenanceProvides read/write access to any FHIR-compliant healthcare API with built-in validation, supporting resource management, search operations, and granular permissions through natural language.51-
- AlicenseAqualityAmaintenanceEnables read-only FHIR access to Practice Fusion EHR to search patients, appointments, conditions, medications, and lab results.137 npm4MIT
- AlicenseNot gradedqualityDmaintenanceEnables interaction with FHIR servers to access, search, and manage FHIR resources, including appointment scheduling and cancellation.1MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables seamless integration with FHIR APIs for healthcare applications, allowing users to search, retrieve, create, update, and analyze clinical information through natural language interactions. Supports SMART-on-FHIR authentication and works with various healthcare systems like EPIC and HAPI FHIR servers.Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.