GPH Intelligence - Healthcare Vendor Finder
Explore and get recommendations from a directory of 76,000+ healthcare service vendors.
match_practice: Score and rank up to 5 best-fit vendors for a practice’s specialty, size, state/city, EHR system, and budget.
search_providers: Paginated, filterable directory search by category, state, city, minimum quality score, Tier-1 grade, and practice-size fit.
get_provider_detail: Fetch a vendor’s full profile by slug — description, services, contact info, quality score, verified status, tier, and reviews.
Data coverage: 25 service categories, all 50 states + DC, monthly refreshes, profile-completeness scores.
Access: Free MCP endpoint, no API key required (100 calls/IP/day), or licensed bulk access.
GPH Intelligence - Healthcare Vendor Finder
An MCP server that gives AI agents access to 76,000+ curated healthcare service vendors across the United States. Built for practice managers, healthcare AI developers, and anyone building tools for the medical practice market.
What It Does
The GPH Intelligence MCP server provides structured access to GetPracticeHelp's database of healthcare service vendors -- medical billing companies, credentialing services, EHR consultants, healthcare attorneys, compliance firms, and more -- across 25 categories and all 50 states.
Related MCP server: ServiceGraph
Tools
match_practice
Find the best healthcare service vendors for a medical practice based on specialty, size, location, EHR system, and budget. Returns ranked matches with profile-completeness scores.
Parameters:
category(required) -- Service category (e.g. "Medical Billing & RCM", "Credentialing Services")state(required) -- Two-letter state abbreviation (e.g. "TX", "CA")specialty-- Practice specialty (e.g. "Family Medicine", "Cardiology")practice_size-- "Solo", "Small", "Mid-size", or "Large"city-- City nameehr_system-- EHR system in use (e.g. "Epic", "athenahealth")budget_range-- Monthly budget range
search_providers
Search the vendor directory by category, location, and minimum profile-completeness score. Returns paginated results.
Parameters:
category(required) -- Service category to searchstate-- Two-letter state abbreviationcity-- City name filtermin_rating-- Minimum profile-completeness score (0-100; not a quality rating)per_page-- Results per page (default 10, max 25)page-- Page number
get_provider_detail
Get the full profile for a specific vendor including description, services, contact information, and profile-completeness score.
Parameters:
slug(required) -- Vendor slug identifier (e.g. "ams-solutions-inc-dallas-tx")
Usage
MCP Endpoint
https://gph-mcp-server.pages.dev/mcpConnect via Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"gph-intelligence": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://gph-mcp-server.pages.dev/mcp"]
}
}
}No API key required.
Data Coverage
76,000+ curated healthcare service vendors
25 service categories across 6 super-categories
All 50 states + DC
Profile-completeness scores (0-100) based on how many listing fields are filled in (website, phone, description, services, location, source, firmographics). Not a quality or reputation rating; 0 means the row was never scored
Monthly data refreshes
Categories
Operations & Administration Medical Billing & RCM, Credentialing Services, Medical Coding, Practice Management Consulting, Healthcare Staffing & Recruiting
Technology Healthcare IT & EHR, Telehealth & Virtual Care, Medical Transcription & Documentation
Legal, Finance & Compliance Healthcare Legal Services, Healthcare CPA & Tax Advisory, Compliance & HIPAA, Practice Financing, Practice Valuation & Brokerage, Malpractice Insurance
Facilities & Equipment Healthcare Construction & Facilities, Medical Equipment & Supplies, Healthcare Real Estate, Signage & Wayfinding, Medical Waste & Environmental
Growth & Marketing Healthcare Marketing, Patient Financing, Group Purchasing Organizations, PR & Communications
Clinical Support Pharmacy & Medication Management, Laboratory & Diagnostics
API Access
Free: 100 calls per IP per day, no API key required.
For bulk or unmetered access, license the dataset at getpracticehelp.com/data-licensing/
Troubleshooting
No results returned -- broaden your query.
categoryis required, so make sure it is set; then try removing thecity/min_ratingfilters or widening thestate(national providers are always included).HTTP 429 (rate limited) -- the free tier allows 100 calls per IP per day, resetting at 00:00 UTC. For higher volume, license the dataset (see API Access above).
Can't connect -- point your client at the remote endpoint, no API key required:
npx -y mcp-remote https://gph-mcp-server.pages.dev/mcp403 from a browser -- the
/mcpendpoint validates theOriginheader to prevent DNS rebinding. Standard MCP clients (Claude Desktop,mcp-remote, server-to-server) send noOriginheader and connect fine; only disallowed browser origins are blocked.Support -- questions or higher-volume access requests: cbeggroup@gmail.com
Links
Homepage: getpracticehelp.com
Provider Directory: getpracticehelp.com/providers/
Privacy: gph-mcp-server.pages.dev/privacy
License
MIT
Available Tools
3 toolsget_provider_detailGet Provider DetailARead-onlyIdempotentInspect
Get the full profile of one healthcare service provider identified by slug: company_name, category (plus super_category grouping), description, services_tags (comma-delimited list of services offered), website, phone, city/state, quality_score (0-100), verified status, listing tier (free/paid), practice_size_fit, and reviews with review_count and average_rating. Slug comes from match_practice or search_providers results. Returns an error if the slug is unknown.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Provider slug identifier (e.g. 'ams-solutions-inc-dallas-tx'). Obtained from match_practice or search_providers response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint true, so the tool is clearly a safe read operation. The description adds that it returns an error for unknown slugs, which is useful behavioral context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the main purpose and then details the returned fields. It is slightly verbose with the list of fields, but each sentence adds value. Could be trimmed slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of an output schema, the description compensates by listing all key return values. It also provides workflow context (slug from siblings) and error behavior, making it complete for an agent to understand usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, but the description adds value by explaining the slug's origin and format (e.g., 'ams-solutions-inc-dallas-tx') and how it is obtained, which goes beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool gets the full profile of one healthcare service provider by slug, listing specific fields. It distinguishes itself from siblings by mentioning that the slug comes from match_practice or search_providers results, which clarifies its role in the workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates when to use the tool (after obtaining a slug from sibling tools) and mentions that an error is returned for unknown slugs, implying when not to use. However, it does not explicitly state when alternatives might be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
match_practiceMatch Practice to ProvidersARead-onlyIdempotentInspect
Score and rank healthcare service providers for a specific medical practice profile (specialty, size, location, EHR system, budget). Returns up to 5 ranked matches with {company_name, category, city, state_abbr, quality_score (0-100), final_score (0-100), verified status, description, website, profile_url, slug}. Use this when the user has practice-specific criteria and wants scored recommendations — for open-ended browsing, use search_providers instead. Pass a match's slug to get_provider_detail for the full profile.
| Name | Required | Description | Default |
|---|---|---|---|
| category | Yes | Service category needed (e.g. 'Medical Billing & RCM', 'Credentialing Services', 'Healthcare IT & EHR', 'Practice Management Software') | |
| specialty | No | Medical specialty of the practice (e.g. 'Family Medicine', 'Cardiology', 'Pediatrics', 'Dermatology') | |
| practice_size | No | Size of the practice by provider count | |
| city | No | City where the practice is located | |
| state | Yes | Two-letter state abbreviation (e.g. 'TX', 'CA', 'NY') | |
| ehr_system | No | EHR system used by the practice (e.g. 'Epic', 'athenahealth', 'AdvancedMD', 'eClinicalWorks'). Helps score providers with compatible integrations higher. | |
| budget_range | No | Approximate monthly budget |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows it's safe and idempotent. The description adds behavioral context: returns up to 5 ranked matches, mentions scoring based on EHR compatibility, and outlines the return fields. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: it begins with the core purpose, lists return fields, provides usage guidelines, and mentions related tools. Every sentence earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 7 parameters, no output schema, and moderate complexity, the description is complete. It covers purpose, return structure, when to use versus alternatives, and how to act on results. Annotations handle safety, so no gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds extra context for the 'ehr_system' parameter ('Helps score providers with compatible integrations higher'), improving understanding beyond the schema. However, it does not add meaning for other parameters, staying at a solid 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb (score and rank), resource (healthcare service providers), and scope (for a specific medical practice profile). It lists the criteria (specialty, size, etc.) and return fields, and explicitly distinguishes from the sibling tool 'search_providers'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidance provided: 'Use this when the user has practice-specific criteria and wants scored recommendations — for open-ended browsing, use search_providers instead.' Also tells the user to pass a match's slug to 'get_provider_detail' for the full profile.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_providersSearch Provider DirectoryARead-onlyIdempotentInspect
Paginated browse of the healthcare service provider directory filtered by category, location, and minimum quality score. Returns a page of providers with {company_name, category, city, state_abbr, quality_score (0-100), verified status, contact info, slug}. Use this for open-ended exploration and filtering — for scored recommendations to a specific practice profile, use match_practice instead. Pass a returned slug to get_provider_detail for the full profile.
| Name | Required | Description | Default |
|---|---|---|---|
| category | Yes | Service category to search (e.g. 'Medical Billing & RCM', 'Credentialing Services') | |
| state | No | Two-letter state abbreviation (e.g. 'TX'). National providers always included. | |
| city | No | City name to filter by (partial match supported) | |
| min_rating | No | Minimum quality score (0-100). Most providers score 50-85. | |
| tier1_grade | No | Filter to the curated Tier-1 provider set by grade: 'A' (top-graded) or 'B' (strong). Tier-1 is a hand-reviewed ~4,400-provider subset; most directory records are not Tier-1, so this narrows results sharply. Omit to search the full directory. | |
| practice_size_fit | No | Filter providers by the practice size they best serve. | |
| per_page | No | Results per page (1-25, default 10) | |
| page | No | Page number for pagination (default 1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only and idempotent. The description adds value by detailing pagination (page, per_page) and specifying the exact fields returned. It does not mention any destructive or authentication requirements, but those are covered by annotations. A small omission is lack of mention about result ordering or completeness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, front-loaded with purpose and return fields. It efficiently separates usage guidance and sibling differentiation. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool complexity (8 params, 1 required) and rich annotations, the description covers the main purpose, output fields, and sibling relationships. It lacks explicit mention of error conditions or ordering, but these are not critical for a browse tool. Overall, it is sufficiently complete for an AI agent to understand selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description mentions some parameters (category, location, min_rating) and ties per_page and page to pagination, but adds little extra meaning beyond what the schema already provides. No additional context for tier1_grade or practice_size_fit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a 'paginated browse of the healthcare service provider directory' with specific filters (category, location, minimum quality score) and lists return fields. It also distinguishes from siblings by directing to match_practice for scored recommendations and to get_provider_detail for full profiles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool ('open-ended exploration and filtering') and when not to ('for scored recommendations to a specific practice profile, use match_practice instead'). Also advises passing a returned slug to get_provider_detail.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
get_provider_detail - First observed
match_practice - First observed
search_providers
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: get_provider_detail retrieves full profiles for a specific slug, match_practice provides scored recommendations for a practice profile, and search_providers enables open-ended browsing with filters. Descriptions explicitly indicate when to use each, preventing ambiguity.
All tool names follow a consistent verb_noun pattern with snake_case: get_provider_detail, match_practice, search_providers. The naming is predictable and aligns with the functionality.
With only 3 tools, the server is well-scoped for its purpose as a healthcare vendor finder. Each tool covers a core operation (browse, match, detail) without unnecessary bloat or deficiency.
The tool surface covers the full user journey: searching/browsing providers, getting scored matches for a specific practice, and retrieving detailed profiles. No obvious gaps exist for the intended use case.
Maintenance
Related MCP Connectors
Directory of US clearinghouse/payer APIs (Availity, Optum, Waystar) with pricing & access signals.
US provider, KOL, executive and organization search over de-identified claims data.
1CMS quality ratings, payer-negotiated prices, and clinician data for 41K+ US healthcare facilities.
Research 7,400+ US doctors: search, semantic search, profiles, reviews & procedure pricing.
Related MCP Servers
- AlicenseBqualityCmaintenanceProvides comprehensive access to CMS Medicare data including physician services, prescriber information, hospital quality metrics, drug spending, formulary coverage, and ASP pricing for healthcare analysis and decision-making.18MIT
- AlicenseNot gradedqualityDmaintenanceAccess ServiceGraph — a structured catalog of 100k+ US professional-services firms (law, marketing, consulting, accounting, IT services, architecture, engineering, HR, PR, design) with filters for industry, services offered, location, size, ratings, and third-party listing presence.62MIT
- AlicenseAqualityBmaintenanceCountry-agnostic MCP-callable directory for AI agents to find local SMBs — realtors, insurance agents, medical practitioners — by category, location, or natural-language query. Returns business catalog data and UTM-tagged booking URLs (zero PII).5MIT
- FlicenseNot gradedqualityBmaintenanceSource-provenanced US federal healthcare provider data over MCP. Resolve any NPI or CCN across NPPES, OIG LEIE, SAM.gov, state Medicaid exclusions, CMS PECOS, Care Compare, and Open Payments — every field carries a 14-field provenance contract, and an "excluded or compromised anywhere" check runs on every lookup.-