关于 Codex Contaminants
Codex Contaminants 为食品监管、检验和研究人员提供 Codex Alimentarius CXS 193-1995 污染物与毒素最高限量查询,数据覆盖公开的 2015 版中的 59 项。每个数值附有来源 PDF 页码,并明确提示未检索到不代表没有限量。
主要功能
- 01按污染物查询最高限量
- 02按食品查询适用限量
- 03结果附来源 PDF 页码
- 04说明数据版本与覆盖范围
适用场景
- 01查询某种污染物的食品限量
- 02汇总某种食品适用的污染物限量
- 03核对限量数值对应的原文页码
MCP 相关
向 MCP 客户端提供按污染物或食品查询 Codex 污染物最高限量的工具。可经 Pipeworx 网关连接,也可作为本地 stdio MCP 服务运行。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/codex-contaminants/mcpclaude mcp add --transport http pipeworx-io-codex-contaminants https://gateway.pipeworx.io/codex-contaminants/mcp{"mcpServers":{"pipeworx-io-codex-contaminants":{"type":"http","url":"https://gateway.pipeworx.io/codex-contaminants/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-codex-contaminants":{"type":"http","url":"https://gateway.pipeworx.io/codex-contaminants/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-codex-contaminants":{"type":"http","url":"https://gateway.pipeworx.io/codex-contaminants/mcp"}}}{"mcpServers":{"pipeworx-io-codex-contaminants":{"serverUrl":"https://gateway.pipeworx.io/codex-contaminants/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
codex-contaminants
《食品中污染物和毒素法典标准》CXS 193-1995规定的最高限量——按商品分类,涉及铅、镉、砷、汞、甲基汞、锡、黄曲霉毒素、赭曲霉毒素 A、棒曲霉素、三聚氰胺和氢氰酸。
这是 Pipeworx 的一部分——一个将 AI Agent 连接到 1679+ 个实时数据源的 MCP 网关。
59 项最高限量,2015 年版。 这两个数字都表示限制,并且每次响应都会注明,而不是只留在此文件中。
使用数值前请阅读
版本。 Codex 仅以文档形式发布 CXS 193,当前文本需通过身份验证后才能访问 FAO 工作区。本工具包采用最新的公开官方版本,即 2015 年版(Amended in 2010, 2012, 2013, 2014, 2015)。该标准已于 2016、2017、2018、2019、2021、2022、2023 年以及 CAC47(2024 年 11 月)和 CAC48(2025 年 11 月)修订。这些修订新增了最高限量,其中包括肉桂中的铅(2.5 mg/kg)和干燥食用香草中的铅(2.0 mg/kg)。
覆盖范围。 收录了附表 I 中 59 项数据。为避免将法律限量与“莓果除外”之类的残句错误关联,已舍弃商品名称跨表格行显示的条目。
总之:未检索到不代表不存在限量。 未找到时会明确说明这一点,因为“无最高限量”听起来像是允许使用。
每个数值都附有来源 PDF 页码,因此只需一步即可对照 https://www.fao.org/input/download/standards/17/CXS_193e_2015.pdf 核查。
工具
contaminants_max_levels({contaminant, commodity?})— 查询某种污染物的 Codex 最高限量(ML),可按食品进一步筛选。contaminants_for_commodity({commodity})— 查询适用于某种食品的所有污染物限量。
提取过程,以及四次出错的原因
extract.py 是提取器。它按列带提取是有原因的:构建过程中,下列情况都曾导致实际的静默错误,测试会逐一验证。
- 字符偏移量行不通。 ML 列在一页中的字符位置是 36,下一页则是 29,因此固定切片会将实际限量关联到截断的商品名称。
- 读取页面上的任意数字会将
73(JECFA 会议编号)、25(已撤回的 PTWI,单位为 µg/kg 体重)和3(血压 3 mmHg)都列为铅的最高限量。现在通过读取每页表头中 ML 列的 x 坐标范围,并且只接受范围内的数字来解决。 - 不同污染物的单位各不相同——黄曲霉毒素的单位是 µg/kg,金属的单位是 mg/kg。单位也从表头读取。将单位硬编码为 mg/kg,会使牛奶中的黄曲霉毒素 M1 被读成 0.5 mg/kg,而不是 0.5 µg/kg:相差 1000 倍。
- 章节标题必须取自文档,而不能凭记忆填写。 标准中写的是
DEOXYNIVALENOL (DON),而 3 个字母的标题TIN很容易被误滤掉——一旦如此,罐装肉类中的锡限量(50 mg/kg)就会被归到甲基汞名下。
更新时,将较新的 PDF 路径传给 extract.py,重新运行,并在发布前阅读输出。表格足够精简,可以进行人工检查;对于法律限量,人工检查是必不可少的。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"codex-contaminants": {
"url": "https://gateway.pipeworx.io/codex-contaminants/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/codex-contaminants/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 都会连接到同一网关和相同的 1679+ 个数据源。唯一的区别是直接列出的是哪个工具包的工具;通过任一端点,ask_pipeworx 都能访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/contaminants_max_levels \
-H 'Content-Type: application/json' \
-d '{"contaminant":"lead"}'
首次调用无需账户。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/contaminants_max_levels。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。
独立运行(无需网关账户)
此软件包也可作为本地 stdio MCP 服务运行——无需 Pipeworx 账户,也无需经由网关往返:
{
"mcpServers": {
"codex-contaminants": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-codex-contaminants"]
}
}
}
或者直接运行,以确认它能正常启动:
npx -y @pipeworx/mcp-codex-contaminants
它通过 stdin/stdout 使用 MCP,并针对仅此工具包的工具响应 initialize/tools/list/tools/call——不包含上述网关连接额外提供的任何共享元工具。相同的源代码、相同的工具,但不支持 ask_pipeworx 路由。
使用 ask_pipeworx
你可以用通俗的英语提问,而不是直接调用工具——此功能既适用于上面的工具包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Codex Contaminants data" })
网关会选择合适的工具并自动填入参数。
更多
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。