Jecfa について
JECFAは、FAO/WHO合同食品添加物専門家会議の安全性評価を提供する、食品安全の研究者や規制担当者向けMCPサーバーです。ADI、委員会の結論、食事由来ばく露情報に加え、関連する会議報告書や毒性学モノグラフも調べられます。
主な機能
- 01名称、CAS、INS番号で検索
- 02物質の評価記録を取得
- 03機能分類別に物質を閲覧
- 04FEMAまたはJECFA番号を解決
- 05最近の評価を確認
活用シーン
- 01物質の評価実施状況を確認
- 02ADIと評価結論を調べる
- 03評価の根拠となる報告書を探す
MCP 対応
JECFAの物質検索、評価記録、分類閲覧ツールをMCPクライアントに公開します。Pipeworxゲートウェイ経由の接続と、ローカルのstdio MCPサーバーとしての実行に対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/jecfa/mcpclaude mcp add --transport http pipeworx-io-jecfa https://gateway.pipeworx.io/jecfa/mcp{"mcpServers":{"pipeworx-io-jecfa":{"type":"http","url":"https://gateway.pipeworx.io/jecfa/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-jecfa":{"type":"http","url":"https://gateway.pipeworx.io/jecfa/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-jecfa":{"type":"http","url":"https://gateway.pipeworx.io/jecfa/mcp"}}}{"mcpServers":{"pipeworx-io-jecfa":{"serverUrl":"https://gateway.pipeworx.io/jecfa/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
JECFA — 食品添加物の安全性評価(WHO/FAO)
FAO/WHO合同食品添加物専門家会議による安全性評価です。許容一日摂取量(ADI)、委員会の結論、食事由来のばく露に関する知見、およびその根拠となる会議報告書と毒性学モノグラフを、食品添加物、香料、食品汚染物質、動物用医薬品残留物について提供します。
Pipeworx の一部です。AI エージェントを1882以上の稼働中のデータソースにつなぐMCPゲートウェイです。これは独立した非公式の連携であり、上流プロバイダーとは提携しておらず、承認も公開も受けていません。
規制当局が基準値を設定する際にADIを引用する機関がJECFAです。このパックでは、「この物質は評価されているか、委員会はどの摂取量を許容できると判断したか」という問いに答えます。「この物質はEUのヨーグルトに使用できるか」という問いは対象外で、そちらはCodex GSFAや各国の規制当局が扱います。
ツール
| ツール | 回答する内容 |
|---|---|
jecfa_search | 物質名、CAS番号、INS/E番号で検索し、ADI、CAS、機能分類、化学物質IDを確認します |
jecfa_chemical | 1つのIDに関する完全な記録を取得します。同義語、INS、およびJECFAが実施したすべての評価(年、ADI、結論、摂取に関する知見、会議番号、TRS報告書、毒性学モノグラフ)を確認できます |
jecfa_by_functional_class | ある分類(甘味料、保存料、着色料など)または4つのグループのいずれかに属するすべての物質を取得します |
jecfa_functional_classes | 71種類の分類名を確認できます。呼び出し側は、渡すべき正確な名称を把握できます |
jecfa_by_number | FEMAまたはJECFAの物質番号を解決します |
jecfa_recent_evaluations | 委員会が最近評価した内容を確認できます |
対象範囲
対象は3,245物質です。食品添加物777種、香料2,289種、動物用医薬品115種、食品汚染物質64種が含まれます。評価は委員会の最初期の会議から現在までを対象としています。たとえばアスパルテームには、1981年から会議96での2023年再評価までの評価が記録されています。
認証
不要です。キー不要、登録不要、利用上限なしです。
データソース
- データベース:https://apps.who.int/food-additives-contaminants-jecfa-database/
- JECFAについて:https://www.fao.org/food-safety/scientific-advice/jecfa/en/
データベースにはAPIの仕様が公開されていません。このパックが呼び出すエンドポイントは、ページから読み取った、サイト独自のKendoグリッドを支えるものです。これらは文書化されておらず、バージョン管理もされていないため、予告なく変更される可能性があります。実際に確認されたデータ形式は、パック内の注意事項コメント(src/index.ts の先頭)に記録されています。
注意事項
上流の動作のうち、額面どおりに受け取ると確信を持って誤った回答を生むものが5つあります。パック内ではすべて対策していますが、拡張する場合は注意が必要です。
-
/SearchChemical/ByPartialNameは架空の行を生成します。 クエリ文字列をId: 0、ADI が空欄の結果として先頭に追加します。これは UI の「この文字列そのものを検索する」ための機能です。そのまま通すと、評価されたことのない物質を捏造することになります。このパックではId <= 0の行をすべて除外します。 -
同じエンドポイントは、CAS で検索した場合でも
CAS_NO: nullを返します。50-70-4を検索すると SORBITOL が正しく見つかりますが、CAS は null として報告されます。データが入力されたレコードを返すのは/ChemicalData/GetBy/par/だけであり、jecfa_searchが実際に呼び出しているのもこのエンドポイントです。 -
/ChemicalData/GetBy/fir/が必要とするのは ID ではなく文字です。 対応する/FilterData/Get/FirstCharacterは{"Id": 65, "Name": "A"}を返します。65を渡すと HTTP 500 が返り、Aを渡すと 501 行が返ります。 -
INS 番号と E 番号は検索できません。
ByPartialName/951は0行を返します。INS 番号はサーバー側でレンダリングされる詳細ページにのみ存在します。そのためjecfa_searchは、添加物の詳細ページ777件すべてをビルド時に収集したINS_INDEXを使って解決します(うち486件に INS 番号があります)。会合で物質が追加された後は、node mcps/jecfa/scripts/build-ins-index.mjsで再生成してください。 -
詳細ページの引用行には、他のすべてのフィールドとは異なる CSS クラスが使われています。 ADI、コメント、摂取量、会合は
col-sm-8にレンダリングされますが、Report、Tox Monograph、Specification の各行はcol-**md**-8にレンダリングされ、テキストは<a>で囲まれています。col-sm-8のみを照合するパーサーは、3項目すべてでnullを返します。これは「JECFA はこの評価についてレポートを公開していない」と解釈されますが、実際には TRS PDF へのリンクがそこにあります。各引用のurlは上流独自のもので、通常はiris.who.int上の PDF への直接リンクです。
INS 番号のみでは実際に曖昧さが生じます。たとえば INS 160 は、個別に評価されたカロテン19種類を指します。そのため、インデックスでは各キーをリストに対応付け、jecfa_search は候補のいずれかを選ぶのではなく、ambiguous: true を付けてすべて返します。上流では下位の形式が一貫せず(100(i) と 100i の両方が使われます)、キーは英数字のみに正規化されます。ジェネレーターとパックでは同じ正規化を使い続ける必要があります。そうしないと、検索がすべて何も通知されずに失敗します。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"jecfa": {
"url": "https://gateway.pipeworx.io/jecfa/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/jecfa/mcp の tools/list は、上の表にあるツールに加え、共有の Pipeworx メタツール(ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で使えるツール群)を返します。そのため、表示されるツール数はこの表より多くなります。現在、単一パックのエンドポイントには、そのパック独自のツールとともに共有ツールが約30個表示されます。接続の initialize レスポンスに正確なスコープが記載されており、その日の状況を確認する際の正式な情報源になります。
これは意図的な設計であり、偶然の多重化ではありません。メタツールを使うことで、このパックの対象外の質問にも、カタログ全体を横断して処理する ask_pipeworx を介して回答できます。MCP サーバーをもう1つ追加する必要はありません。現時点では、メタツールなしでパックのエンドポイントを接続する方法はありません。追加スキーマが、ルーティングによる利便性を上回るほどコンテキストを消費する場合は、複数のパックエンドポイントではなく、フルゲートウェイに一度だけ接続してください。
または、Pipeworx のフルゲートウェイに接続すると、このパックだけでなく、すべてのパックのツールが直接一覧表示されます。
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
どちらの URL も同じゲートウェイと同じ1882以上のデータソースに接続します。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも ask_pipeworx を使ってすべてのツールにアクセスできます。
MCP クライアントがない場合:HTTP 経由で呼び出す
curl -X POST https://gateway.pipeworx.io/v1/tools/jecfa_search \
-H 'Content-Type: application/json' \
-d '{"query":"aspartame"}'
最初の呼び出しにアカウントは必要ありません。任意のツールを確認するには、GET https://gateway.pipeworx.io/v1/tools/jecfa_search を実行します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージはローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイとの往復通信も不要です。
{
"mcpServers": {
"jecfa": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-jecfa"]
}
}
}
または、直接実行して起動を確認できます。
npx -y @pipeworx/mcp-jecfa
stdin/stdout 経由で MCP を使用し、initialize/tools/list/tools/call に応答します。対象はこのパックのツールのみで、上記のゲートウェイ接続で追加される共有メタツールは含まれません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx を使用する
ツールを直接呼び出す代わりに、平易な英語で質問できます。これは上記のパックエンドポイントだけでなく、フルゲートウェイでも機能します。
ask_pipeworx({ question: "your question about Jecfa data" })
ゲートウェイが適切なツールを選び、引数を自動的に入力します。
詳細
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。