NPI Who

US health care providers by NPI, name or phone, with payments, Medicare, OIG and facility data.

Should I use this

Quality & Safety

A
Description quality
87%
Schema completeness
82%
Naming quality
87%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'nearby_providers' description lacks action verbin nearby_providers
  • LOWTool 'data_sources' description lacks action verbin data_sources

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~764Tokens (tool definitions)
~817 BTypical response size
Moderate attention impact (0.60% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "npiwho": {
      "url": "https://npiwho.com/mcp"
    }
  }
}

Remote endpoints

https://npiwho.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡lookup_provider(npi)

One provider by NPI: the registry record, and what the public files have on them (Open Payments total, Medicare billing, OIG exclusion, Medicare clinician record, facility enrollments, claimed-page details) with the page section where each is. The result's url is the page to cite and to send readers to for the detail.

Input Schema

{
  "type": "object",
  "properties": {
    "npi": {
      "type": "string",
      "description": "The 10-digit National Provider Identifier"
    }
  },
  "required": [
    "npi"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_providers(query, state, limit)

Find individual providers or organizations by name, optionally within a state. Returns up to 20 matches, best first, each with its page url. Use lookup_provider on a result for the full record.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "description": "A person's name ('maria gonzalez', 'gonzalez'), or an organization name"
    },
    "state": {
      "description": "Two-letter state code, e.g. TX",
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪lookup_phone(phone)

Providers whose registry practice phone, or a phone they published on a claimed page, is this number. Any US format. Providers who asked for their phone to be withheld are not returned.

Input Schema

{
  "type": "object",
  "properties": {
    "phone": {
      "type": "string",
      "description": "A US phone number in any format"
    }
  },
  "required": [
    "phone"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪nearby_providers(npi, zip, taxonomy, limit)

The providers with the same specialty nearest a given provider (by NPI) or a ZIP code and specialty, by distance between ZIP code centres. Up to 12.

Input Schema

{
  "type": "object",
  "properties": {
    "npi": {
      "description": "Start from this provider's specialty and ZIP",
      "type": "string"
    },
    "zip": {
      "description": "Or a 5-digit ZIP code, with taxonomy",
      "type": "string"
    },
    "taxonomy": {
      "description": "NUCC taxonomy code, e.g. 207Q00000X for family medicine; required with zip",
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_facilities(kind, state, city, limit)

Medicare-certified home health agencies, hospices, hospitals, nursing homes, or HRSA health centers (FQHCs) in a state, optionally one city. Up to 50 rows with page urls; the full list and a CSV are at the state page url.

Input Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "home-health",
        "hospice",
        "hospital",
        "nursing-home",
        "health-center"
      ]
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "Two-letter state code"
    },
    "city": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [
    "kind",
    "state"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪data_sources

Which public files this data comes from, their snapshot dates, and what they do not cover.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools