mcpField
P
Pa Medical Exclusions

Pa Medical Exclusions

远程服务
pipeworx.io法律与政务02 周前更新

关于 Pa Medical Exclusions

Pa Medical Exclusions 是用于查询宾夕法尼亚州 Medicheck 禁止参与名录的 MCP 服务。它支持按姓名和提供者标识符检索,并区分当前禁止状态、状态未知及已结束的记录。

主要功能

  1. 01按姓名、NPI、执照或 FEIN 筛查
  2. 02按规则规范化并匹配标识符
  3. 03返回 DHS 状态和禁止标记
  4. 04汇总状态及生效日期区间
  5. 05查询历史禁止名录

适用场景

  1. 01在参与宾州 Medicaid 前核查提供者
  2. 02通过 NPI 或执照验证提供者
  3. 03按生效日期查看过往禁止记录
  4. 04区分状态未知与已识别记录

MCP 相关

向 MCP 客户端提供提供者筛查和名录覆盖情况工具。可作为独立的 stdio MCP 服务运行,也可通过 Pipeworx 网关访问。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/pa-medical-exclusions/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/pa-medical-exclusions

宾夕法尼亚州人类服务部(DHS)Medicheck 禁止提供服务的提供者名单筛查——根据姓名、NPI、许可证号或 FEIN,查询提供者是否在约 6,750 行的名单中。该名单列出了曾被禁止参与宾夕法尼亚州医疗援助(Medicaid)计划的提供者和企业。它是联邦 HHS OIG LEIE(leie pack)的州级对应名单,也是 ny-omig-exclusions(纽约)、ca-medical-exclusions(加利福尼亚州)、tx-medical-exclusions(得克萨斯州)和 fl-medical-exclusions(佛罗里达州)的姊妹项目。

属于 Pipeworx — 一个将 AI Agent 连接到 1831+ 个实时数据源的 MCP 网关。这是独立的非官方集成,与上游提供方无关联、未获其认可,也非由其发布。

工具

  • pa_medical_check_exclusion(name?, npi?, license?, fein?, limit?) — 根据 DHS Medicheck 名单筛查提供者。匹配 NPI、许可证号或 FEIN 属于身份识别(三者都是精确标识符);匹配姓名——即使完全一致——也仅是 候选线索,因为名单不包含出生日期,无法区分同名提供者。每个匹配项都带有 DHS 自己的 status 字段,以及据此推导出的 currently_precluded 标记——对于少数 DHS 自身状态为空的记录,该标记为 null,并设有 status_unknown: true,而不是猜测。
  • pa_medical_exclusion_coverage() — 曾记录的总行数、当前仍被禁止的数量、已结束的数量和状态未知的数量、包含 NPI、许可证号或 FEIN 的数量、DHS 使用的不同状态值,以及最早/最近的禁止生效日期。传入 year 或 start_date/end_date,则改为统计整个名单中生效日期落在该范围内的禁止记录。

认证

无需密钥。

数据来源

  • 宾夕法尼亚州人类服务部(DHS),Medicheck 禁止提供服务的提供者名单 — 该州公布的名单,列出了被禁止参与宾夕法尼亚州医疗援助计划的个人、企业和其他实体,可在 https://www.humanservices.dhs.pa.gov/Medchk/ 搜索,也可直接从同一应用下载完整 文本文件。
为什么没有开放数据门户镜像——已核查,而非假定

在 data.pa.gov 上搜索 Socrata 目录 (api.us.socrata.com/api/catalog/v1?domains=data.pa.gov),查询“medicheck”、 “precluded”、“excluded provider”和“medicaid sanction”(2026-10-17), 没有找到匹配的数据集。DHS 自有的 Medicheck 搜索应用是唯一来源。

为什么将数据内置,而不是实时代理

根据根目录 CLAUDE.md 中对这类规模表格的既定规则,完整名单 (捕获时共 6,751 行,生成的 TypeScript 约 2.7MB)由 scripts/bake-index.mjs 烘焙到 src/pa-medchk-index-data.ts,在 workers/gateway/src/pack-baked-indexes.json 中注册,部署时上传到 KV,并在每次调用时 注入为 args._bakedIndex — 绝不使用静态的模块级作用域 导入(fleet #2754:六个 pack 这样做会让每个网关隔离环境都保留约 48MB 堆内存,并在 Cloudflare 1102 错误下导致大约每四次调用就有一次失败)。 如果注入缺失或格式错误,会明确抛出异常,而不是回答 “未找到” — 参见 src/index.test.ts。

与 tx-medical-exclusions 不同,这里不需要 ASP.NET VIEWSTATE 回发:Medicheck 应用的“下载文本文件”按钮是一个普通的、 无需认证的 GET 请求,已于 2026-10-17 在线验证。

定期重新运行 node mcps/pa-medical-exclusions/scripts/bake-index.mjs 并重新提交;每个响应中的 data_as_of 都会说明烘焙副本有多旧。

状态较为混乱——currently_precluded 是派生字段,且已注明

DHS 自己的 Status 字段(Precluded、Terminated、Reinstated、 Suspended、Withdrawal、Voluntary Withdrawal、Permanent Preclusion、 Permanent Withdrawal、Terminated-No Cause)最接近当前状态标记,但 6,751 条记录中有 466 条(2026-10-17 抓取)Status 为空——这是直接检查的结果,并非推断:EndDate 是否存在与 Status 并无明确关联(许多 Precluded 记录也有 EndDate),因此无法用 EndDate 填补空值。本数据包仅在 Status 为 DHS 自己认可的值之一时,才据此派生 currently_precluded;对于 Status 为空的记录,则返回 currently_precluded: null 和 status_unknown: true——此处若贸然猜测,就会产生静默的错误答案,而根目录 CLAUDE.md 的大声失败规则正是为了避免这种情况。

曾被排除与当前被排除

与四个先例状态数据包的情况相同:此下载内容是曾被排除名单,而非仅包含当前被排除对象的名单——记录可追溯至 1957 年,其中包括早已恢复资格、终止或撤回的服务提供者。每次响应都会通过 ever_vs_current_caveat 说明这一点。

匹配

npi 查询仅匹配完全一致的 10 位数字 NPI 值。license 查询匹配 LicenseNumber,仅包含字母和数字(不区分大小写,并去除标点和空格)——宾夕法尼亚州执照号码为字母数字混合格式(例如 AJ006399L),有时还会带有括号中的州外注释(例如 172434 (NY)),因此 license: "172434" 也会匹配该记录。fein 查询会精确匹配联邦 EIN,仅限数字。姓名查询会匹配服务提供者的组合个人姓名(名/中间名/姓)、企业名称或 DHS 记录的别名;匹配时不区分词序、大小写和标点。

可访问性

已于 2026-10-17 使用笔记本电脑通过 curl 对 https://www.humanservices.dhs.pa.gov/Medchk/MedchkSearch/Medchk?target=_blank 进行实时验证: 返回 200、text/plain、带引号的逗号分隔 CRLF 文件,共 6,751 条数据记录。无需会话状态、Cookie 或重放表单——比 tx-medical-exclusions 所需的 VIEWSTATE 握手简单。

快速开始

将其添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "pa-medical-exclusions": {
      "url": "https://gateway.pipeworx.io/pa-medical-exclusions/mcp"
    }
  }
}
此端点实际提供的内容

向 https://gateway.pipeworx.io/pa-medical-exclusions/mcp 发起 tools/list 请求,会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、 discover_tools、search_within、remember/recall 和网关范围内的其余工具。因此,你看到的工具数量会多于此表:单个数据包端点目前会列出约 30 个共享工具,以及该数据包自己的工具。连接的 initialize 响应会说明其确切范围,并且是当天适用情况的权威答案。

这是有意为之,并非意外复用。这些元工具让限定范围的连接也能回答本数据包未涵盖的问题——通过可跨整个目录路由请求的 ask_pipeworx——无需你再添加第二个 MCP 服务。目前无法在不包含这些元工具的情况下挂载数据包端点;如果额外的架构定义带来的上下文开销超过路由功能的价值,请只连接一次完整网关,而不是连接多个数据包端点。

或者,连接完整的 Pipeworx 网关,直接列出所有数据包的工具,而不只是此数据包的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

两个 URL 都连接到同一个网关和相同的 1831+ 个数据源。唯一的区别是直接列出哪个数据包的工具;无论连接哪一个,ask_pipeworx 都能访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/pa_medical_check_exclusion \
  -H 'Content-Type: application/json' \
  -d '{"name":"Zeidler"}'

首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/pa_medical_check_exclusion。查找工具:使用 {"query":"..."} 向 https://gateway.pipeworx.io/v1/tools/search_packs 发送 POST 请求。

独立运行(无需网关账户)

此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账户,也无需经过网关往返:

{
  "mcpServers": {
    "pa-medical-exclusions": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-pa-medical-exclusions"]
    }
  }
}

也可以直接运行,确认它能正常启动:

npx -y @pipeworx/mcp-pa-medical-exclusions

它通过 stdin/stdout 使用 MCP 通信,并针对仅限此软件包的工具响应 initialize/tools/list/tools/call——不包含上方网关连接所添加的任何共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。

使用 ask_pipeworx

你也可以用通俗的英语提问,而不是直接调用工具——这既适用于上方的软件包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Pa Medical Exclusions data" })

网关会选择合适的工具并自动填写参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。