search
Pack: npi-registry · Endpoint: https://gateway.pipeworx.io/npi-registry/mcp
Search providers by any combination of fields. NPI Registry requires at least one filter — supply at least name/organization/taxonomy/postal_code/state.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
number | string | no | 10-digit NPI |
name | string | no | Full provider name (use along with type) |
first_name | string | no | |
last_name | string | no | |
organization_name | string | no | |
taxonomy | string | no | Taxonomy code or description (e.g. “Internal Medicine”) |
city | string | no | |
state | string | no | Two-letter state code |
postal_code | string | no | 5-digit ZIP (or first 3 with wildcard ”*“) |
country_code | string | no | US (default) | other ISO country |
npi_type | string | no | NPI-1 (individual) | NPI-2 (organization) |
address_purpose | string | no | LOCATION (default) | MAILING | PRIMARY | SECONDARY |
limit | number | no | 1-200 (default 10) |
skip | number | no | 0-based offset (max 1000) |
Example call
Arguments
{
"name": "John Smith",
"taxonomy": "Internal Medicine",
"state": "CA"
}
curl
curl -X POST https://gateway.pipeworx.io/npi-registry/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search","arguments":{"name":"John Smith","taxonomy":"Internal Medicine","state":"CA"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search', {
"name": "John Smith",
"taxonomy": "Internal Medicine",
"state": "CA"
});
More examples
{
"organization_name": "Mayo Clinic",
"state": "MN",
"limit": 20
}
Response shape
| Field | Type | Description |
|---|---|---|
results | array | Array of provider records matching search criteria |
result_count | number | Total number of results matching query |
Errors | array | API error messages if any |
Full JSON Schema
{
"type": "object",
"properties": {
"results": {
"type": "array",
"description": "Array of provider records matching search criteria",
"items": {
"type": "object",
"properties": {
"number": {
"type": "string",
"description": "10-digit NPI identifier"
},
"enumeration_type": {
"type": "string",
"description": "NPI-1 (individual) or NPI-2 (organization)"
},
"basic": {
"type": "object",
"description": "Basic provider information",
"properties": {
"first_name": {
"type": "string"
},
"last_name": {
"type": "string"
},
"organization_name": {
"type": "string"
},
"credential_text": {
"type": "string"
}
}
},
"addresses": {
"type": "array",
"description": "Provider address records",
"items": {
"type": "object",
"properties": {
"address_purpose": {
"type": "string"
},
"address_type": {
"type": "string"
},
"address_1": {
"type": "string"
},
"address_2": {
"type": "string"
},
"city": {
"type": "string"
},
"state": {
"type": "string"
},
"postal_code": {
"type": "string"
},
"country_code": {
"type": "string"
}
}
}
},
"taxonomies": {
"type": "array",
"description": "Provider taxonomy specializations",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"taxonomy_description": {
"type": "string"
},
"primary": {
"type": "boolean"
}
}
}
}
}
}
},
"result_count": {
"type": "number",
"description": "Total number of results matching query"
},
"Errors": {
"type": "array",
"description": "API error messages if any",
"items": {
"type": "string"
}
}
}
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"npi-registry": {
"url": "https://gateway.pipeworx.io/npi-registry/mcp"
}
}
}
See Getting Started for client-specific install steps.