GPH Intelligence - Healthcare Vendor Finder
This server gives AI agents structured access to a database of 76,000+ curated healthcare service vendors across the US, enabling discovery and evaluation of medical practice service providers.
Core capabilities:
Match a practice to ranked vendors (
match_practice): Provide practice-specific criteria — service category, state, specialty, practice size, city, EHR system, and budget — to receive up to 5 scored and ranked vendor recommendations with quality scores, verification status, descriptions, and profile links.Browse and filter the vendor directory (
search_providers): Search across 25 service categories (e.g., Medical Billing & RCM, Credentialing, Healthcare IT & EHR) with filters for location, minimum quality rating, practice size fit, Tier-1 grade, and pagination.Retrieve full vendor profiles (
get_provider_detail): Look up a specific vendor by slug to get their complete profile — description, services, website, phone, location, quality score, verification status, and review data.
Data coverage:
76,000+ vendors across all 50 states + DC
25 categories spanning operations, technology, legal/compliance, facilities, marketing, and clinical support
Quality scores derived from Google ratings, review volume, and verification status
Free tier: 100 API calls per IP per day, no API key required
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 quality 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 quality rating. Returns paginated results.
Parameters:
category(required) -- Service category to searchstate-- Two-letter state abbreviationcity-- City name filtermin_rating-- Minimum quality score (0-100)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 quality 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
Quality scores based on Google ratings, review volume, and verification status
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. Dates show when Glama detected each change.
3 tool updates
- First observed
get_provider_detail - First observed
match_practice - First observed
search_providers
TDQS
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
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Directory of US clearinghouse/payer APIs (Availity, Optum, Waystar) with pricing & access signals.
CMS 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.
Search 7,000+ local service businesses across America by category, location, or keyword.
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.61MIT
- 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.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Crindo2/gph-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server