Elation Health MCP by usefulapi

Read Elation Health patients, appointments, problems, allergies, medications, notes and vitals.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
99%
Vollständigkeit des Schemas
96%
Qualität der Benennung
76%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (3)

  • LOWTool 'elationhealth_list_appointments' name length outside 3-30 rangein elationhealth_list_appointments
  • LOWTool 'elationhealth_list_appointment_types' name length outside 3-30 rangein elationhealth_list_appointment_types
  • LOWTool 'elationhealth_list_non_visit_notes' name length outside 3-30 rangein elationhealth_list_non_visit_notes

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,975Tokens (Tool-Definitionen)
~2.2 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (3.11% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "elation-health": {
      "url": "https://elation-health.usefulapi.io/mcp"
    }
  }
}

Remote-Endpunkte

https://elation-health.usefulapi.io/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (14)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢elationhealth_list_patients(first_name, last_name, dob, phone_number, practice, ...)

Search the practice's patient charts (PHI): id, name, date of birth, sex, contact details, address, status. First and last name match exactly (case-insensitive, no partial names). The SSN is redacted. Elation: GET /patients/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "first_name": {
      "description": "Exact, case-insensitive first name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 150
    },
    "last_name": {
      "description": "Exact, case-insensitive last name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 150
    },
    "dob": {
      "description": "Date of birth, YYYY-MM-DD.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "phone_number": {
      "description": "Phone number.",
      "type": "string",
      "minLength": 3,
      "maxLength": 40
    },
    "practice": {
      "description": "Only patients of this practice id.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "last_modified_after": {
      "description": "Only patients changed after this date or date-time.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}([T ][\\d:.]+(Z|[+-]\\d{2}:?\\d{2})?)?$"
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_get_patient(patient_id)

Get one patient chart header by id (PHI): demographics, contact details, address, insurance, emergency contact, primary physician, tags. The SSN is redacted. Elation: GET /patients/{id}/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    }
  },
  "required": [
    "patient_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_appointments(from_date, to_date, patient, physician, practice, ...)

List appointments and calendar time slots, filterable by date range, patient, physician and practice. Each has the scheduled date, duration, status, reason, patient, physician and service location. Elation: GET /appointments/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "from_date": {
      "description": "Start of the range (ISO date or date-time).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}([T ][\\d:.]+(Z|[+-]\\d{2}:?\\d{2})?)?$"
    },
    "to_date": {
      "description": "End of the range (ISO date or date-time).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}([T ][\\d:.]+(Z|[+-]\\d{2}:?\\d{2})?)?$"
    },
    "patient": {
      "description": "Only this patient's appointments (patient id).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "physician": {
      "description": "Only this physician's appointments (physician id).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "practice": {
      "description": "Only this practice's appointments.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "time_slot_type": {
      "description": "Kind of calendar entry.",
      "type": "string",
      "enum": [
        "appointment",
        "appointment_slot",
        "event"
      ]
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_get_appointment(appointment_id)

Get one appointment by id: scheduled date, duration, status, reason, instructions, patient, physician, practice, service location, telehealth and billing details. Elation: GET /appointments/{id}/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "appointment_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation appointment id."
    }
  },
  "required": [
    "appointment_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_appointment_types(practice, name, limit, cursor, offset)

List the appointment types (visit reasons with default duration) a practice offers. Elation: GET /appointment_types/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "practice": {
      "description": "Only this practice's appointment types.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "name": {
      "description": "Filter by name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_practices(limit, cursor, offset)

List the practices this API key can access: id, name, address, status, time zone, physicians and service locations. Elation: GET /practices/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_physicians(first_name, last_name, npi, limit, cursor, ...)

List the practice's physicians (providers): id, name, NPI, specialty, credentials, license, practice, user id. Elation: GET /physicians/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "first_name": {
      "description": "Filter by first name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 150
    },
    "last_name": {
      "description": "Filter by last name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 150
    },
    "npi": {
      "description": "Filter by 10-digit NPI.",
      "type": "string",
      "pattern": "^\\d{10}$"
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_problems(patient, status, limit, cursor, offset)

List one patient's problem list (PHI): description, ICD-9/ICD-10/SNOMED codes, status (Active, Controlled, Resolved), start and resolved dates, synopsis. Elation: GET /problems/?patient=.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    },
    "status": {
      "description": "Problem status.",
      "type": "string",
      "enum": [
        "Active",
        "Controlled",
        "Resolved"
      ]
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "patient"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_allergies(patient, limit, cursor, offset)

List one patient's allergies (PHI): allergen name, reaction, severity, status, start date. Elation: GET /allergies/?patient=.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "patient"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_medications(patient, discontinued, permanent, limit, cursor, ...)

List one patient's medication documents (PHI): drug name, strength, directions, quantity, authorized refills, prescribing physician, start date, and the discontinue order if any. Current and discontinued entries both appear unless you filter. Elation: GET /medications/?patient=.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    },
    "discontinued": {
      "description": "true = only medications with a discontinue order, false = only those without.",
      "type": "boolean"
    },
    "permanent": {
      "description": "true = only permanent (chronic) medications.",
      "type": "boolean"
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "patient"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_visit_notes(patient, physician, unsigned, from_signed_date, to_signed_date, ...)

List one patient's visit notes (PHI): visit date, type, physician, signed state and the note body (bullets by category such as Subjective, Objective, Assessment, Plan). Filter by signed date or last change. Elation: GET /visit_notes/?patient=.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    },
    "physician": {
      "description": "Only notes of this physician id.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "unsigned": {
      "description": "true = only unsigned notes.",
      "type": "boolean"
    },
    "from_signed_date": {
      "description": "Only notes signed on or after this date or date-time.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}([T ][\\d:.]+(Z|[+-]\\d{2}:?\\d{2})?)?$"
    },
    "to_signed_date": {
      "description": "Only notes signed on or before this date or date-time.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}([T ][\\d:.]+(Z|[+-]\\d{2}:?\\d{2})?)?$"
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "patient"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_get_visit_note(visit_note_id)

Get one visit note by id (PHI): visit date, type, physician, signed state and the full note body. Elation: GET /visit_notes/{id}/.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "visit_note_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation visit note id (from elationhealth_list_visit_notes)."
    }
  },
  "required": [
    "visit_note_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_non_visit_notes(patient, limit, cursor, offset)

List one patient's non-visit notes (PHI): free-text chart notes outside a visit, such as phone calls and administrative notes. Elation: GET /non_visit_notes/?patient=.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "patient"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢elationhealth_list_vitals(patient, visit_note, limit, cursor, offset)

List one patient's vital signs (PHI): height, weight, BMI, blood pressure, heart rate, respiratory rate, temperature, oxygen saturation, pain, with chart dates. Elation: GET /vitals/?patient=.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Elation patient id (from elationhealth_list_patients)."
    },
    "visit_note": {
      "description": "Only vitals recorded in this visit note id.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Page size (default 25, max 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "cursor": {
      "description": "Cursor from a previous reply's next_cursor, to get the next page.",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    },
    "offset": {
      "description": "Offset paging instead of a cursor (the reply then has count and next_offset).",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "patient"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet14 Tools