Skip to main content
Glama

GPH Intelligence - Healthcare Vendor Finder

Recommend Healthcare Vendors for a Practice

match_practice
Read-onlyIdempotent

Recommend and rank the best healthcare vendors for a specific medical practice. Use this when a practice manager, physician, or administrator asks for a recommendation, e.g. "recommend a medical billing / RCM company for my practice", "who should I use for credentialing / payer enrollment", "find an EHR for my small [specialty] practice", or "which practice-management software fits a [size] practice in [city, state]". Scores and ranks providers against the practice profile (specialty, size, location, EHR system, budget) and returns up to 5 merit-ranked matches (completeness-scored, no paid placement) with {company_name, category, city, state_abbr, quality_score (0-100; profile completeness -- how many listing fields are filled in -- not a quality or reputation rating; 0 means never scored), final_score (0-100), description, website, profile_url, slug}. Use service_needs to specify up to six controlled service codes for staffing, billing or credentialing; codes must belong to the requested category. Use vendor_geo_preference to prefer local or state vendors, allow national vendors, or request only national or explicitly serves-your-state vendors. State is the practice location and may be omitted only with NATIONAL_OK or NATIONAL_ONLY; category remains required. Capability evidence, geography basis, profile extraction date and service-need coverage are returned where available; missing evidence is unknown, never a verified or paid badge. For open-ended browsing without a practice profile, use search_providers. Pass a match's slug to get_provider_detail for the full profile.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityNoCity where the practice is located. Send city and state separately, not as a combined `location` string.
stateNoPractice location as a two-letter state abbreviation (e.g. 'TX', 'CA', 'NY'). Required unless vendor_geo_preference is NATIONAL_OK or NATIONAL_ONLY. Send as `state`, not `state_abbr` (`state_abbr` is an output field name only).
categoryYesService category needed. One of the 25 categories: 'Medical Billing & RCM', 'Credentialing Services', 'Healthcare IT & EHR', 'Practice Management Consulting', 'Healthcare Legal Services', 'Healthcare CPA & Tax Advisory', 'Medical Coding Services', 'Healthcare Staffing & Recruiting', 'Healthcare Marketing & Reputation Management', 'Compliance & HIPAA Services', 'Medical Equipment & Supplies', 'Healthcare Real Estate & Site Selection', 'Practice Financing & Loans', 'Healthcare Construction & Facilities', 'Healthcare Signage & Wayfinding', 'Medical Waste & Environmental Services', 'Healthcare Insurance & Malpractice Brokers', 'Practice Valuation & Brokerage', 'Patient Financing & Payment Solutions', 'Medical Transcription & Documentation', 'Pharmacy & Medication Management', 'Telehealth & Virtual Care Infrastructure', 'Laboratory & Diagnostics Services', 'Group Purchasing Organizations (GPOs)', 'Healthcare PR & Communications'. Common aliases also resolve (e.g. 'billing', 'RCM', 'EHR', 'credentialing'). Call list_categories for the live list with provider counts.
specialtyNoMedical specialty of the practice (e.g. 'Family Medicine', 'Cardiology', 'Pediatrics', 'Dermatology')
ehr_systemNoEHR system used by the practice (e.g. 'Epic', 'athenahealth', 'AdvancedMD', 'eClinicalWorks'). Helps score providers with compatible integrations higher.
budget_rangeNoApproximate monthly budget
practice_sizeNoSize of the practice by provider count. The parameter is named `practice_size`, not `size`.
service_needsNoUp to six distinct controlled service codes, never free text. STAFFING_* codes apply to Healthcare Staffing & Recruiting, BILLING_* codes to Medical Billing & RCM, and CRED_* codes to Credentialing Services (including aliases). Within a staffing facet codes are alternatives; across facets they ask for combined coverage. Un-evidenced needs are unknown and never exclude a vendor.
vendor_geo_preferenceNoVendor geography preference, separate from practice location: LOCAL_PREFERRED prefers same-city vendors, STATE_PREFERRED prefers in-state vendors, NATIONAL_OK allows national vendors to compete across geography tiers, and NATIONAL_ONLY restricts eligibility to national or explicitly serves-your-state vendors. State may be omitted for NATIONAL_OK or NATIONAL_ONLY.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idsNoAbsent when isError.
countNoTotal scored candidates before the top-5 slice; absent when isError.
contentYes
isErrorNoPresent and true only on failure (match request error or no candidates).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / anyOf
      Added value: +[
      +  {
      +    "required": [
      +      "state"
      +    ]
      +  },
      +  {
      +    "properties": {
      +      "vendor_geo_preference": {
      +        "enum": [
      +          "NATIONAL_OK",
      +          "NATIONAL_ONLY"
      +        ]
      +      }
      +    },
      +    "required": [
      +      "vendor_geo_preference"
      +    ]
      +  }
      +]
    • addedInput schema / properties / service_needs
      Added value: +{
      +  "description": "Up to six distinct controlled service codes, never free text. STAFFING_* codes apply to Healthcare Staffing & Recruiting, BILLING_* codes to Medical Billing & RCM, and CRED_* codes to Credentialing Services (including aliases). Within a staffing facet codes are alternatives; across facets they ask for combined coverage. Un-evidenced needs are unknown and never exclude a vendor.",
      +  "items": {
      +    "enum": [
      +      "STAFFING_ROLE_NP",
      +      "STAFFING_ROLE_PA",
      +      "STAFFING_ROLE_APP",
      +      "STAFFING_ROLE_PHYSICIAN",
      +      "STAFFING_ROLE_RN",
      +      "STAFFING_ROLE_ALLIED",
      +      "STAFFING_ROLE_CLINICAL_SUPPORT",
      +      "STAFFING_ENG_PERMANENT",
      +      "STAFFING_ENG_LOCUM",
      +      "STAFFING_ENG_TEMPORARY",
      +      "STAFFING_ENG_TEMP_TO_HIRE",
      +      "STAFFING_ENG_PRN",
      +      "STAFFING_SET_URGENT_CARE",
      +      "STAFFING_SET_OUTPATIENT",
      +      "STAFFING_SET_PRIMARY_CARE",
      +      "STAFFING_SET_EMERGENCY",
      +      "STAFFING_SET_INPATIENT",
      +      "BILLING_SCOPE_FULL_RCM",
      +      "BILLING_SCOPE_CLAIMS_SUBMISSION",
      +      "BILLING_SCOPE_DENIAL_MANAGEMENT",
      +      "BILLING_SCOPE_AR_FOLLOWUP",
      +      "BILLING_SCOPE_PATIENT_BILLING",
      +      "BILLING_SCOPE_CHARGE_CAPTURE",
      +      "BILLING_SCOPE_ELIGIBILITY_VERIFICATION",
      +      "BILLING_SCOPE_CODING",
      +      "CRED_PAYER_ENROLLMENT",
      +      "CRED_INITIAL_CREDENTIALING",
      +      "CRED_RECREDENTIALING",
      +      "CRED_CAQH",
      +      "CRED_HOSPITAL_PRIVILEGING",
      +      "CRED_STATE_LICENSING",
      +      "CRED_MEDICARE_MEDICAID_ENROLLMENT",
      +      "CRED_DELEGATED_CREDENTIALING"
      +    ],
      +    "type": "string"
      +  },
      +  "maxItems": 6,
      +  "type": "array",
      +  "uniqueItems": true
      +}
    • changedInput schema / properties / state / description
      Previous value: -"Two-letter state abbreviation (e.g. 'TX', 'CA', 'NY'). Send as `state`, not `state_abbr` (`state_abbr` is an output field name only)."New value: +"Practice location as a two-letter state abbreviation (e.g. 'TX', 'CA', 'NY'). Required unless vendor_geo_preference is NATIONAL_OK or NATIONAL_ONLY. Send as `state`, not `state_abbr` (`state_abbr` is an output field name only)."
    • addedInput schema / properties / vendor_geo_preference
      Added value: +{
      +  "description": "Vendor geography preference, separate from practice location: LOCAL_PREFERRED prefers same-city vendors, STATE_PREFERRED prefers in-state vendors, NATIONAL_OK allows national vendors to compete across geography tiers, and NATIONAL_ONLY restricts eligibility to national or explicitly serves-your-state vendors. State may be omitted for NATIONAL_OK or NATIONAL_ONLY.",
      +  "enum": [
      +    "LOCAL_PREFERRED",
      +    "STATE_PREFERRED",
      +    "NATIONAL_OK",
      +    "NATIONAL_ONLY"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "category",
      -  "state"
      -]New value: +[
      +  "category"
      +]
  2. Changed4 schema fields changed
    • changedInput schema / properties / category / description
      Previous value: -"Service category needed (e.g. 'Medical Billing & RCM', 'Credentialing Services', 'Healthcare IT & EHR', 'Practice Management Software')"New value: +"Service category needed. One of the 25 categories: 'Medical Billing & RCM', 'Credentialing Services', 'Healthcare IT & EHR', 'Practice Management Consulting', 'Healthcare Legal Services', 'Healthcare CPA & Tax Advisory', 'Medical Coding Services', 'Healthcare Staffing & Recruiting', 'Healthcare Marketing & Reputation Management', 'Compliance & HIPAA Services', 'Medical Equipment & Supplies', 'Healthcare Real Estate & Site Selection', 'Practice Financing & Loans', 'Healthcare Construction & Facilities', 'Healthcare Signage & Wayfinding', 'Medical Waste & Environmental Services', 'Healthcare Insurance & Malpractice Brokers', 'Practice Valuation & Brokerage', 'Patient Financing & Payment Solutions', 'Medical Transcription & Documentation', 'Pharmacy & Medication Management', 'Telehealth & Virtual Care Infrastructure', 'Laboratory & Diagnostics Services', 'Group Purchasing Organizations (GPOs)', 'Healthcare PR & Communications'. Common aliases also resolve (e.g. 'billing', 'RCM', 'EHR', 'credentialing'). Call list_categories for the live list with provider counts."
    • changedInput schema / properties / city / description
      Previous value: -"City where the practice is located"New value: +"City where the practice is located. Send city and state separately, not as a combined `location` string."
    • changedInput schema / properties / practice_size / description
      Previous value: -"Size of the practice by provider count"New value: +"Size of the practice by provider count. The parameter is named `practice_size`, not `size`."
    • changedInput schema / properties / state / description
      Previous value: -"Two-letter state abbreviation (e.g. 'TX', 'CA', 'NY')"New value: +"Two-letter state abbreviation (e.g. 'TX', 'CA', 'NY'). Send as `state`, not `state_abbr` (`state_abbr` is an output field name only)."
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "content": {
      +      "items": {
      +        "properties": {
      +          "text": {
      +            "type": "string"
      +          },
      +          "type": {
      +            "const": "text"
      +          }
      +        },
      +        "required": [
      +          "type",
      +          "text"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "count": {
      +      "description": "Total scored candidates before the top-5 slice; absent when isError.",
      +      "type": "integer"
      +    },
      +    "ids": {
      +      "description": "Absent when isError.",
      +      "properties": {
      +        "surfaced": {
      +          "description": "Provider slugs shown, in ranked order.",
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "isError": {
      +      "description": "Present and true only on failure (match request error or no candidates).",
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "content"
      +  ],
      +  "type": "object"
      +}
  4. Changed5 schema fields changed
    • changedInput schema / properties / budget_range / description
      Previous value: -"Monthly budget range"New value: +"Approximate monthly budget"
    • changedInput schema / properties / category / description
      Previous value: -"Service category needed (e.g. 'Medical Billing & RCM', 'Credentialing Services', 'Healthcare IT & EHR')"New value: +"Service category needed (e.g. 'Medical Billing & RCM', 'Credentialing Services', 'Healthcare IT & EHR', 'Practice Management Software')"
    • changedInput schema / properties / ehr_system / description
      Previous value: -"EHR system used by the practice (e.g. 'Epic', 'athenahealth', 'AdvancedMD')"New value: +"EHR system used by the practice (e.g. 'Epic', 'athenahealth', 'AdvancedMD', 'eClinicalWorks'). Helps score providers with compatible integrations higher."
    • changedInput schema / properties / practice_size / description
      Previous value: -"Size of the practice"New value: +"Size of the practice by provider count"
    • changedInput schema / properties / specialty / description
      Previous value: -"Medical specialty of the practice (e.g. 'Family Medicine', 'Cardiology', 'Pediatrics')"New value: +"Medical specialty of the practice (e.g. 'Family Medicine', 'Cardiology', 'Pediatrics', 'Dermatology')"
  5. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.