Elation Health MCP by usefulapi

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

사용해야 할까요

품질 및 안전성

A
설명 품질
99%
스키마 완전성
96%
이름 품질
76%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (3)

  • LOWTool 'elationhealth_list_appointments' name length outside 3-30 rangeelationhealth_list_appointments에서
  • LOWTool 'elationhealth_list_appointment_types' name length outside 3-30 rangeelationhealth_list_appointment_types에서
  • LOWTool 'elationhealth_list_non_visit_notes' name length outside 3-30 rangeelationhealth_list_non_visit_notes에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,975토큰 (도구 정의)
~2.2 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 3.11%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

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

원격 엔드포인트

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

할 수 있는 일

도구 목록

도구 (14)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢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/.

입력 스키마

{
  "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}/.

입력 스키마

{
  "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/.

입력 스키마

{
  "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}/.

입력 스키마

{
  "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/.

입력 스키마

{
  "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/.

입력 스키마

{
  "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/.

입력 스키마

{
  "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=.

입력 스키마

{
  "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=.

입력 스키마

{
  "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=.

입력 스키마

{
  "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=.

입력 스키마

{
  "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}/.

입력 스키마

{
  "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=.

입력 스키마

{
  "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=.

입력 스키마

{
  "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"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 14개