Zovo NPI Lookup

Provider rosters & NPI checks

Should I use this

Quality & Safety

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

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,696Tokens (tool definitions)
~9.3 KBTypical response size
Moderate attention impact (1.32% 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": {
    "npi-lookup": {
      "url": "https://npi-lookup.zovo.one/mcp"
    }
  }
}

Remote endpoints

https://npi-lookup.zovo.one/mcpstreamable-http

What it can do

Tool inventory

Tools (2)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢verify_npi_numbers(providers)

Use this when the user wants an npi lookup, verify npi number, bulk npi lookup or npi taxonomy code lookup for credentialing. Reads live public registry records, checks optional expected names, states and taxonomies, and returns Excel and CSV downloads. Up to 40 NPIs per call; check digits cannot prove issuance. Do not use for patient records or proof of licensure.

Input Schema

{
  "type": "object",
  "properties": {
    "providers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "npi": {
            "type": "string",
            "maxLength": 120,
            "description": "NPI identifier, e.g. 1245319599; spaces and hyphens are removed."
          },
          "expected_name": {
            "description": "Optional expected provider or organization name, e.g. Jane Doe or Example Health Clinic.",
            "type": "string",
            "minLength": 1,
            "maxLength": 120
          },
          "expected_state": {
            "description": "Expected US practice state, e.g. VA.",
            "type": "string",
            "maxLength": 20
          },
          "expected_taxonomy": {
            "description": "Expected taxonomy code, e.g. 207Q00000X.",
            "type": "string",
            "maxLength": 120
          }
        },
        "required": [
          "npi"
        ]
      },
      "description": "Roster of 1 to 40 providers, e.g. [{\"npi\":\"1245319599\",\"expected_state\":\"VA\"}]."
    }
  },
  "required": [
    "providers"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "summary": {
      "type": "object",
      "properties": {
        "total": {
          "type": "number"
        },
        "ok": {
          "type": "number"
        },
        "mismatch": {
          "type": "number"
        },
        "not_found": {
          "type": "number"
        },
        "invalid": {
          "type": "number"
        },
        "errors": {
          "type": "number"
        }
      },
      "required": [
        "total",
        "ok",
        "mismatch",
        "not_found",
        "invalid",
        "errors"
      ],
      "additionalProperties": false
    },
    "providers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "npi": {
            "type": "string"
          },
          "check_digit": {
            "type": "string"
          },
          "found": {
            "type": "string"
          },
          "entity_type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "primary_taxonomy_code": {
            "type": "string"
          },
          "primary_taxonomy": {
            "type": "string"
          },
          "practice_city": {
            "type": "string"
          },
          "practice_state": {
            "type": "string"
          },
          "last_updated": {
            "type": "string"
          },
          "name_check": {
            "type": "string"
          },
          "state_check": {
            "type": "string"
          },
          "taxonomy_check": {
            "type": "string"
          },
          "check_result": {
            "type": "string"
          },
          "error": {
            "type": "string"
          },
          "row": {
            "type": "number"
          }
        },
        "required": [
          "npi",
          "check_digit",
          "found",
          "entity_type",
          "name",
          "status",
          "primary_taxonomy_code",
          "primary_taxonomy",
          "practice_city",
          "practice_state",
          "last_updated",
          "name_check",
          "state_check",
          "taxonomy_check",
          "check_result",
          "error",
          "row"
        ],
        "additionalProperties": false
      }
    },
    "searches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string"
          },
          "match_count": {
            "type": "number"
          },
          "more_matches": {
            "type": "boolean"
          },
          "error": {
            "type": "string"
          },
          "matches": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "npi": {
                  "type": "string"
                },
                "entity_type": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "primary_taxonomy": {
                  "type": "string"
                },
                "city": {
                  "type": "string"
                },
                "state": {
                  "type": "string"
                }
              },
              "required": [
                "npi",
                "entity_type",
                "name",
                "primary_taxonomy",
                "city",
                "state"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "query",
          "match_count",
          "more_matches",
          "error",
          "matches"
        ],
        "additionalProperties": false
      }
    },
    "truncated": {
      "type": "boolean"
    },
    "source": {
      "type": "string"
    },
    "downloads": {
      "type": "object",
      "properties": {
        "xlsx": {
          "type": "string"
        },
        "csv": {
          "type": "string"
        }
      },
      "required": [
        "xlsx",
        "csv"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "summary",
    "providers",
    "searches",
    "truncated",
    "source",
    "downloads"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢search_npi_providers(searches)

Use this when the user wants an npi registry search, npi search or provider npi lookup by name and state. Reads live public registry records and returns Excel and CSV downloads. Up to 10 searches per call, with at most 10 matches each; give a last name or organization name and a US state. Do not use for insurance acceptance or patient records.

Input Schema

{
  "type": "object",
  "properties": {
    "searches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "state": {
            "type": "string",
            "maxLength": 20,
            "description": "Required US state code, e.g. MA."
          },
          "last_name": {
            "description": "Last name, e.g. Smith; a trailing wildcard needs two leading permitted characters.",
            "type": "string",
            "maxLength": 120
          },
          "organization_name": {
            "description": "Organization name, e.g. Example Health Clinic.",
            "type": "string",
            "maxLength": 120
          },
          "first_name": {
            "description": "First name, e.g. Jane.",
            "type": "string",
            "maxLength": 120
          },
          "city": {
            "description": "Practice city, e.g. Boston.",
            "type": "string",
            "maxLength": 120
          },
          "postal_code": {
            "description": "Five-digit ZIP as text, e.g. 02189.",
            "type": "string",
            "maxLength": 20
          },
          "taxonomy_description": {
            "description": "Taxonomy description, e.g. Family Medicine.",
            "type": "string",
            "maxLength": 120
          },
          "entity_type": {
            "description": "Entity type, e.g. individual.",
            "type": "string",
            "enum": [
              "individual",
              "organization"
            ]
          }
        },
        "required": [
          "state"
        ]
      },
      "description": "One to ten name and state searches, e.g. [{\"last_name\":\"Smith\",\"first_name\":\"John\",\"state\":\"MA\"}]."
    }
  },
  "required": [
    "searches"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "summary": {
      "type": "object",
      "properties": {
        "total": {
          "type": "number"
        },
        "ok": {
          "type": "number"
        },
        "mismatch": {
          "type": "number"
        },
        "not_found": {
          "type": "number"
        },
        "invalid": {
          "type": "number"
        },
        "errors": {
          "type": "number"
        }
      },
      "required": [
        "total",
        "ok",
        "mismatch",
        "not_found",
        "invalid",
        "errors"
      ],
      "additionalProperties": false
    },
    "providers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "npi": {
            "type": "string"
          },
          "check_digit": {
            "type": "string"
          },
          "found": {
            "type": "string"
          },
          "entity_type": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "primary_taxonomy_code": {
            "type": "string"
          },
          "primary_taxonomy": {
            "type": "string"
          },
          "practice_city": {
            "type": "string"
          },
          "practice_state": {
            "type": "string"
          },
          "last_updated": {
            "type": "string"
          },
          "name_check": {
            "type": "string"
          },
          "state_check": {
            "type": "string"
          },
          "taxonomy_check": {
            "type": "string"
          },
          "check_result": {
            "type": "string"
          },
          "error": {
            "type": "string"
          },
          "row": {
            "type": "number"
          }
        },
        "required": [
          "npi",
          "check_digit",
          "found",
          "entity_type",
          "name",
          "status",
          "primary_taxonomy_code",
          "primary_taxonomy",
          "practice_city",
          "practice_state",
          "last_updated",
          "name_check",
          "state_check",
          "taxonomy_check",
          "check_result",
          "error",
          "row"
        ],
        "additionalProperties": false
      }
    },
    "searches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string"
          },
          "match_count": {
            "type": "number"
          },
          "more_matches": {
            "type": "boolean"
          },
          "error": {
            "type": "string"
          },
          "matches": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "npi": {
                  "type": "string"
                },
                "entity_type": {
                  "type": "string"
                },
                "name": {
                  "type": "string"
                },
                "primary_taxonomy": {
                  "type": "string"
                },
                "city": {
                  "type": "string"
                },
                "state": {
                  "type": "string"
                }
              },
              "required": [
                "npi",
                "entity_type",
                "name",
                "primary_taxonomy",
                "city",
                "state"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "query",
          "match_count",
          "more_matches",
          "error",
          "matches"
        ],
        "additionalProperties": false
      }
    },
    "truncated": {
      "type": "boolean"
    },
    "source": {
      "type": "string"
    },
    "downloads": {
      "type": "object",
      "properties": {
        "xlsx": {
          "type": "string"
        },
        "csv": {
          "type": "string"
        }
      },
      "required": [
        "xlsx",
        "csv"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "summary",
    "providers",
    "searches",
    "truncated",
    "source",
    "downloads"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded2 tools