mcpField
O
Osha

Osha

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

关于 Osha

Osha 是面向合规人员和安全研究者的 MCP 服务,覆盖美国 OSHA 职业安全标准及执法记录。它结合按引用或关键词查标准,以及按机构查询检查、违规和罚款信息。

主要功能

  1. 01按引用获取 OSHA 标准全文
  2. 02搜索 29 CFR 标准
  3. 03查询机构检查记录
  4. 04查看检查违规和罚款
  5. 05汇总机构执法信息

适用场景

  1. 01核对特定职业安全标准
  2. 02搜索相关法规条文
  3. 03查看某机构的 OSHA 检查和处罚
  4. 04汇总机构违规及罚款情况

MCP 相关

向 MCP 客户端提供 OSHA 标准及执法记录的查询工具;标准查询使用无需密钥的 eCFR,执法记录查询需要平台密钥或自带密钥。

配置

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

服务地址https://gateway.pipeworx.io/osha/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/osha

美国 OSHA 职场安全标准(29 CFR)以及 OSHA 执法记录——按经营场所列出的检查、违规和罚款。

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

工具

  • osha_standard(citation) — 根据引文获取一项 OSHA 标准的全文(例如 “1910.132”),或获取某个部分的章节列表。
  • osha_search(query, limit?) — 在 OSHA 标准(29 CFR 第 1900–1990 部分)中进行关键词搜索。
  • osha_inspections(establishment?, state?, since?, limit?) — 查询指定经营场所和/或州的 OSHA 检查记录,包含日期、检查类型、范围以及未结/已结状态。
  • osha_inspection(activity_nr) — 查询某次检查的违规情况:引用的标准、违规类型、违规实例数、受影响员工数、初始和当前罚款金额,以及罚款总额。
  • osha_establishment_summary(name, state?) — 汇总检查次数、违规次数、罚款总额、最近检查日期,以及匹配到的不同经营场所名称。

身份验证

  • osha_standard / osha_search:无需密钥(eCFR)。
  • osha_inspections / osha_inspection / osha_establishment_summary:使用平台密钥 (PLATFORM_DOL_KEY),也可通过 _apiKey 使用自带密钥——与 dol-whd 套件使用的密钥和 DOL Open Data Portal 账号相同。

数据源

两个执法数据表均按请求实时调用——不存储副本。 根据 2026-10-09/10 对实时 API 的测量结果:

  • 原始任务指定的 HTML 经营场所搜索界面 (osha.gov/pls|ords/imis/establishment.search)每次请求都会被 AWS WAF 的“Human Verification” CAPTCHA 拦截——返回 HTTP 405, x-amzn-waf-action: captcha——即使使用带有完整浏览器 User-Agent 的普通 curl 也一样。这是 JS/CAPTCHA 验证,而非 UA 检查,因此任何服务端抓取(包括 Cloudflare Worker)都无法通过。此套件不会使用该界面。
  • enforcedata.dol.gov 会通过 301 重定向到 data.dol.gov,也就是 dol-whd 已完成逆向分析的同一个 React SPA 主机。它的真实 API——apiprod.dol.gov/v4——按请求实时提供 OSHA 检查和违规数据表,可通过 filter_object 筛选,而非作为批量下载目录提供。更新频率为“Daily”;构建本套件前一天,一条实时违规记录的 load_dt 日期正是前一天。不烘焙数据、不使用 KV/D1,也不使用数据库——本套件复用 dol-whd 已获资助的平台密钥。
  • 行访问复现了 dol-whd 的两项发现:/v4/get/... 端点会拒绝作为 X-API-KEY 标头传入的密钥(401),而要求将其作为查询参数传入;零匹配查询会返回 HTTP 204 和空响应正文,而不是 {"data":[]}。
  • 新发现,且 DOL 发布的任何资料都未记录:对 estab_name 使用 like 匹配时区分大小写,而该列存储为大写——相同的经营场所使用 %walmart% 会返回 204,使用 %WALMART% 则会返回 200。构建筛选条件前,所有名称/经营场所参数都会转换为大写。
  • dol-whd 记录的约 20 次调用/10 分钟的 429 限流也适用于此数据集(构建本套件时曾在实时环境中触发)。收到 429 时,每个执法工具会退避重试两次,然后返回 reason: 'upstream_rate_limited',而不是直接抛出异常或静默返回 found:false。
  • 每个执法响应中的 data_as_of 都是该次调用本身的时间戳——没有缓存可报告数据加载日期;请求本身就是读取操作。

快速开始

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

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

https://gateway.pipeworx.io/osha/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 都会连接到同一个网关和相同的 1764+ 个数据源。唯一的区别是哪个工具包的工具会被直接列出;无论连接哪一个,ask_pipeworx 都能访问所有工具。

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

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

首次调用无需账户。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/osha_standard。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。

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

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

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

或者直接运行,以确认它能够启动:

npx -y @pipeworx/mcp-osha

它通过 stdin/stdout 使用 MCP 通信,并响应 initialize/tools/list/tools/call,仅提供此工具包的工具——不包含上述网关连接额外提供的任何共享元工具。来源相同,工具相同,但不支持 ask_pipeworx 路由。

使用 ask_pipeworx

你也可以用通俗易懂的语言提问,而不是直接调用工具——此方式既适用于上面的工具包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Osha data" })

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

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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