Hint Health MCP by usefulapi

Read Hint Health patients, memberships, plans, invoices and payments for direct primary care.

Sollte ich dies verwenden

Qualität und Sicherheit

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

Befunde (2)

  • LOWTool 'hinthealth_list_patient_credits' name length outside 3-30 rangein hinthealth_list_patient_credits
  • LOWTool 'hinthealth_list_invoice_payments' name length outside 3-30 rangein hinthealth_list_invoice_payments

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

Kontextkosten

~3,760Tokens (Tool-Definitionen)
~1.4 KBTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.94% 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": {
    "hint-health": {
      "url": "https://hint-health.usefulapi.io/mcp"
    }
  }
}

Remote-Endpunkte

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

Was es kann

Tool-Inventar

Tools (17)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢hinthealth_get_practice

The practice this API key belongs to: id, name, address, email, phones, website and logo. GET /provider/practice.

Eingabe-Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_locations(near_zip, distance, limit, offset)

List the practice's locations with address, phone, virtual flag and location group. Optionally search near a postal code. GET /provider/locations.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "near_zip": {
      "type": "string",
      "pattern": "^[A-Za-z0-9 -]{3,10}$",
      "description": "Postal code at the center of a distance search."
    },
    "distance": {
      "description": "Search radius in miles (Hint default 20 when a postal code is given).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_get_location(location_id)

One location by id (for example loc-ab12C345DeF6). GET /provider/locations/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "location_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    }
  },
  "required": [
    "location_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_practitioners(near_zip, distance, limit, offset)

List the practice's practitioners with bio, NPI, specialties, panel size and limit, enrollment settings and locations. Optionally search near a postal code. GET /provider/practitioners.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "near_zip": {
      "type": "string",
      "pattern": "^[A-Za-z0-9 -]{3,10}$",
      "description": "Postal code at the center of a distance search."
    },
    "distance": {
      "description": "Search radius in miles (Hint default 20 when a postal code is given).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_get_practitioner(practitioner_id)

One practitioner by id. GET /provider/practitioners/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "practitioner_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    }
  },
  "required": [
    "practitioner_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_patients(archived, limit, offset)

List patients (protected health information) one page at a time: name, date of birth, contact, address, membership status, autopay, past-due balance, practitioner and location. Archived patients are left out unless archived is true. The Social Security number is never returned. There is no bulk export: page with limit and offset. GET /provider/patients.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "archived": {
      "description": "true = only archived patients (default: only active patients).",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_get_patient(patient_id)

One patient by id (for example pat-ab12C345DeF6), protected health information: identity, contact, address, insurance, consents, memberships, sponsorships, emergency contact. The Social Security number is never returned. GET /provider/patients/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    }
  },
  "required": [
    "patient_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_match_patients(first_name, last_name, middle_name, email, dob)

Find existing patients that match a first and last name, optionally narrowed by email, date of birth or middle name. Reads only: nothing is created. Use it to look a patient up by name. POST /provider/patients/matching.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "middle_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "email": {
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "dob": {
      "description": "Date of birth, yyyy-mm-dd.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    }
  },
  "required": [
    "first_name",
    "last_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_patient_credits(patient_id, limit, offset)

List a patient's account credits: amount, remaining balance, category and reason. GET /provider/patients/{patient_id}/credits.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "patient_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "required": [
    "patient_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_memberships(created_from, created_to, updated_from, updated_to, limit, ...)

List memberships: status, enrollment status, dates, rates in cents, plan, coupon, owner, member patients and upcoming bills. Filter by created or updated time (ISO 8601). GET /provider/memberships.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "created_from": {
      "description": "Created at or after (ISO 8601 date or date-time).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "created_to": {
      "description": "Created at or before.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "updated_from": {
      "description": "Updated at or after.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "updated_to": {
      "description": "Updated at or before.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_get_membership(membership_id)

One membership by id: plan, rates, dates, owner, member patients, cancellation and upcoming bills. GET /provider/memberships/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "membership_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    }
  },
  "required": [
    "membership_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_plans(plan_type, limit, offset)

List the practice's membership plans (id, name, type: company, retail or sponsor_fixed_fee). GET /provider/plans.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "plan_type": {
      "type": "string",
      "enum": [
        "company",
        "retail",
        "sponsor_fixed_fee"
      ]
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_coupons(archived, redeemable, limit, offset)

List membership coupons: code, discount (cents or percent), duration, redeemable window and archive state. GET /provider/coupons.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "archived": {
      "description": "true = only archived coupons, false = only unarchived (default: all).",
      "type": "boolean"
    },
    "redeemable": {
      "description": "true = only coupons that can be redeemed now.",
      "type": "boolean"
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_charge_items(limit, offset)

List the practice's charge item catalog (the services and products a charge is made of): code, name, price in cents, category, stock. GET /provider/charge_items.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_invoices(owner, location, status, created_from, created_to, ...)

List customer invoices (what patients are billed) with number, date, status, amounts in cents (total, due, paid), charges, location and owner. Filter by owner patient, location, status or created/updated time. GET /provider/customer_invoices.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "owner": {
      "description": "Patient id of the person who pays the invoice.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$"
    },
    "location": {
      "description": "Location id.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$"
    },
    "status": {
      "description": "Only these statuses. cancelled = voided.",
      "maxItems": 8,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "draft",
          "issued",
          "sent",
          "retrying",
          "paid",
          "disputed",
          "bad_debt",
          "cancelled"
        ]
      }
    },
    "created_from": {
      "description": "Created at or after (ISO 8601 date or date-time).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "created_to": {
      "description": "Created at or before.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "updated_from": {
      "description": "Updated at or after.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "updated_to": {
      "description": "Updated at or before.",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?(Z|[+-]\\d{2}:\\d{2}))?$"
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_get_invoice(invoice_id)

One customer invoice by id with its charges, location, owner, amounts in cents and payment status. GET /provider/customer_invoices/{id}.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "invoice_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    }
  },
  "required": [
    "invoice_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢hinthealth_list_invoice_payments(invoice_id, limit, offset)

List the payments made on one customer invoice: amount in cents, date, status, error message, memo, source and whether it was recorded outside Hint. GET /provider/customer_invoices/{id}/payments.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "invoice_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,100}$",
      "description": "A Hint id."
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "offset": {
      "description": "Results to skip (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "required": [
    "invoice_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet17 Tools