Npi Registry Mcp Server

Npi Registry Mcp Server

🚀 NPI注册MCP服务器 🏥

这是一个用于搜索美国国家提供者标识符(NPI)注册库的模型上下文协议(MCP)服务器。该服务器提供了搜索和检索美国医疗保健提供者及组织信息的工具。

🚀 快速开始

NPI是美国医疗保健提供者的唯一识别号码。此MCP服务器允许Claude和其他兼容MCP的客户端搜索由医疗保险和医疗补助服务中心(CMS)维护的官方NPI注册库,并将搜索结果集成到大型语言模型(LLM)的上下文中,以进行更深入的分析和洞察。

✨ 主要特性

  • 按提供者姓名搜索:通过名、姓或两者结合查找个人医疗保健提供者。
  • 按组织搜索:按名称查找医疗保健组织。
  • 按NPI编号搜索:使用特定的10位NPI编号直接查找。
  • 基于位置的搜索:按城市、州或邮政编码过滤搜索结果。
  • 专业搜索:按专业或分类描述查找提供者。
  • 全面的数据:返回详细信息,包括地址、执业地点、专业领域和其他标识符。

📦 安装指南

先决条件 📋

  • Python 3.10 或更高版本
  • uv 包管理器

开发环境设置 🛠️

  1. 克隆仓库
git clone https://github.com/eliotk/npi-registry-mcp-server.git
cd npi-registry-mcp-server
  1. 安装uv(如果尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh
  1. 创建虚拟环境并安装依赖项
uv venv
source .venv/bin/activate  # 在Windows上:.venv\Scripts\activate
uv pip install -e ".[dev]"
  1. 直接运行服务器(用于测试):
uv run python -m npi_registry_mcp.server
# 或者使用入口点:
uv run npi-registry-mcp-server

生产环境安装 🌟

从PyPI安装(发布后):

uv pip install npi-registry-mcp-server

或者从源代码安装:

uv pip install git+https://github.com/eliotk/npi-registry-mcp-server.git

💻 使用示例

可用工具 🛠️

search_npi_registry 🔎

使用各种条件搜索NPI注册库:

参数

  • first_name(可选):提供者的名
  • last_name(可选):提供者的姓
  • organization_name(可选):组织名称
  • npi(可选):特定的10位NPI编号
  • city(可选):城市名称
  • state(可选):州缩写(例如,'CA'、'NY')
  • postal_code(可选):邮政编码(支持通配符)
  • specialty(可选):提供者的专业或分类
  • limit(可选):返回的最大结果数(1 - 200,默认值:10)

示例

# 按姓名搜索特定提供者
search_npi_registry(first_name="John", last_name="Smith", state="CA")

# 查找特定的NPI
search_npi_registry(npi="1234567890")

# 查找特定城市的组织
search_npi_registry(organization_name="Hospital", city="Los Angeles", state="CA")

# 按专业搜索
search_npi_registry(specialty="cardiology", state="NY", limit=20)

# 查找特定邮政编码区域的提供者
search_npi_registry(postal_code="902*", state="CA")

响应格式 📄

搜索返回一个结构化响应,格式如下:

{
"success": true,
"count": 5,
"results": [
{
"npi": "1234567890",
"entity_type": "Individual",
"is_organization": false,
"status": "A",
"enumeration_date": "2010-05-05",
"last_updated": "2023-01-15",
"name": {
"first": "John",
"last": "Smith",
"credential": "MD"
},
"addresses": [...],
"practice_locations": [...],
"taxonomies": [...],
"identifiers": [...]
}
]
}

📚 详细文档

Claude桌面配置 🖥️

要在Claude桌面版中使用此MCP服务器,请将以下配置添加到Claude桌面版的配置文件中:

macOS 🍎

位置:~/Library/Application Support/Claude/claude_desktop_config.json

Windows 🪟

位置:%APPDATA%/Claude/claude_desktop_config.json

配置 📝

{
"mcpServers": {
"npi-registry": {
"command": "uv", # 可能需要可执行文件的完整路径
"args": [
"--directory",
"/path/to/npi-registry-mcp-server",
"run",
"npi-registry-mcp-server"
]
}
}
}

验证 ✅

  1. 保存配置文件。
  2. 完全重启Claude桌面版。
  3. 在Claude桌面版中查找 🔧 图标,以验证服务器是否已连接。
  4. 尝试向Claude提问:“搜索加利福尼亚州名为Smith的医生”。

开发 👨‍💻

项目结构 📁

npi-registry-mcp-server/
├── src/
│   └── npi_registry_mcp/
│       ├── __init__.py
│       └── server.py
├── tests/
├── pyproject.toml
├── README.md
└── .gitignore

运行测试 🧪

uv run pytest

代码格式化 🎨

# 格式化代码
uv run black src/ tests/

# 排序导入
uv run isort src/ tests/

# 代码检查
uv run ruff check src/ tests/

# 类型检查
uv run mypy src/

构建包 📦

uv build

🔧 技术细节

API参考 📖

此服务器使用CMS提供的官方NPI注册库API:

  • 基础URL:https://npiregistry.cms.hhs.gov/api/
  • 文档:https://npiregistry.cms.hhs.gov/registry/help-api
  • 速率限制:API对正常使用有合理的速率限制。

数据源 🗃️

所有数据直接来自以下机构维护的官方NPI注册库:

  • 医疗保险和医疗补助服务中心(CMS)
  • 美国卫生与公众服务部

🤝 贡献指南

  1. 分叉仓库。
  2. 创建功能分支:git checkout -b feature-name
  3. 进行更改并添加测试。
  4. 运行测试套件:uv run pytest
  5. 格式化代码:uv run black src/ tests/
  6. 提交拉取请求。

📄 许可证

本项目采用MIT许可证,详情请参阅LICENSE文件。

🆘 支持

  • 问题反馈:通过GitHub Issues报告错误和请求功能。
  • 文档/docs 目录中提供了额外的文档。
  • API问题:请参考官方NPI注册库API文档。

📝 更新日志

v0.1.0 🎉

  • 初始版本发布。
  • 基本的NPI注册库搜索功能。
  • 支持个人和组织搜索。
  • 支持按位置和专业过滤。
  • 全面的提供者数据检索。

有关模型上下文协议的更多信息,请访问:https://modelcontextprotocol.io/

  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-10-03 19:54

相似服务问题

相关AI产品