mcpField
I
IQMS / DELMIA Apriso

IQMS / DELMIA Apriso

ローカル
github.comビジネス・マーケティング02 週間前に更新

IQMS / DELMIA Apriso について

IQMS / DELMIA Apriso は、製造 ERP EnterpriseIQ 向けの MCP サーバーです。Oracle 経由の読み取りクエリを提供し、ライセンスが必要な WebAPI モジュールを設定すると書き込みも利用できます。ドメイン別ナビゲーションで、製造、在庫、受注、品質などのツールを整理します。

主な機能

  1. 01ドメイン別のツールナビゲーション
  2. 02作業指示と工程ルートの検索
  3. 03在庫数量の確認とロット追跡
  4. 04BOM 展開と使用箇所の検索
  5. 05販売・購買オーダーと生産能力の照会
  6. 06不適合と是正措置の確認

活用シーン

  1. 01オープン中の作業指示と工程ルートを確認する
  2. 02在庫ロットを追跡し品目数量を確認する
  3. 03BOM 構成と使用箇所を分析する
  4. 04注文状況、入荷予定、機械の生産能力を確認する

MCP 対応

MCP サーバーとして、IQMS / DELMIAworks の照会ツールとトランザクションツールを MCP クライアントに公開します。Oracle 経由では常に読み取りクエリを利用でき、書き込みにはライセンス対象の WebAPI モジュールと認証情報が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"wyre-ai-iqms": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"IQMS_ORACLE_CONNECT_STRING",
"-e",
"IQMS_ORACLE_USER",
"-e",
"IQMS_ORACLE_PASSWORD",
"-e",
"MCP_TRANSPORT",
"-e",
"AUTH_MODE",
"-e",
"LOG_LEVEL",
"ghcr.io/wyre-ai/iqms-mcp:v1.2.15"
],
"env": {
"IQMS_ORACLE_CONNECT_STRING": "<IQMS_ORACLE_CONNECT_STRING>",
"IQMS_ORACLE_USER": "<IQMS_ORACLE_USER>",
"IQMS_ORACLE_PASSWORD": "<IQMS_ORACLE_PASSWORD>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"AUTH_MODE": "<AUTH_MODE>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
起動コマンドdocker run -i --rm -e IQMS_ORACLE_CONNECT_STRING -e IQMS_ORACLE_USER -e IQMS_ORACLE_PASSWORD -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/iqms-mcp:v1.2.15
設定が必要な環境変数
IQMS_ORACLE_CONNECT_STRINGOracle connection string for the IQMS database (e.g. host:port/service)
IQMS_ORACLE_USERIQMS Oracle DB username
IQMS_ORACLE_PASSWORDシークレットIQMS Oracle DB password
MCP_TRANSPORTTransport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
AUTH_MODEシークレットCredential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.
LOG_LEVELLog verbosity: debug, info, warn, error

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/wyre-ai/iqms-mcp:v1.2.15

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

iqms-mcp

Dassault Systèmes の製造 ERP であるIQMS / DELMIAworks(EnterpriseIQ)向け MCP サーバーです。

ステータス: 読み取りツールは、常に利用可能な Direct Oracle 経由で @wyre-technology/node-iqms を使用してクエリを実行します。書き込みツールは、オプションのアドオンである ライセンス済み DELMIAworks WebAPI モジュール経由で処理されます。 X-IQMS-WebAPI-Base-URL の認証情報が設定されるまでは、 DriverNotConfiguredError がスローされます。

これが必要な理由

EnterpriseIQ には公開 REST API がありません。現実的な連携方法は次のとおりです。

  1. Direct Oracle(すべてのインストール環境で利用可能)— 読み取り専用クエリ
  2. WebAPI モジュール(有料のライセンス済みアドオン)— トランザクションの書き込み

この MCP サーバーは、両方を単一の意思決定ツリーで案内するツールインターフェースとして提供します。

ツール

初期検出用インターフェース(常に利用可能):

  • iqms_navigate — ドメイン内のツール一覧を表示
  • iqms_status — 認証情報/接続を確認

ドメイン:workorders、inventory、boms、sales_orders、purchase_orders、 schedule、quality。

読み取りツール(Oracle、常に利用可能):

ツール用途
iqms_workorders_listオープン中/進行中の作業指示
iqms_workorders_getルーティングを含む作業指示の全詳細
iqms_inventory_onhand品目/ロケーション/ロット別の手持ち在庫
iqms_inventory_lot_traceロットの系譜を追跡
iqms_boms_explodeBOM 展開
iqms_boms_where_used使用先の逆引き
iqms_sales_orders_listオープン中の SO/出荷状況
iqms_purchase_orders_listオープン中の PO/入荷予定
iqms_schedule_capacity機械のスケジュールと負荷状況
iqms_quality_ncrs不適合/CAR/CAPA

書き込みツール(WebAPI、利用条件あり):

ツール用途
iqms_workorders_create新しい作業指示を作成
iqms_workorders_post_production製造数/廃棄数を登録
iqms_inventory_adjust在庫トランザクション
iqms_quality_create_ncr不適合記録を新規作成

実行モード

ローカル(stdio)
IQMS_ORACLE_USER=eiq_ro \
IQMS_ORACLE_PASSWORD=… \
IQMS_ORACLE_CONNECT_STRING=eiq-db.example.com:1521/EIQ \
npx -y github:WYRE-AI/iqms-mcp
ゲートウェイ(HTTP、ステートレス)

CONDUIT_S2S_SECRET が必要です。空の場合、または既知のプレースホルダー(changeme、placeholder、your-s2s-secret、起動時に拒否されるその他のサンプル値)の場合、HTTP サーバーはエラーをログに記録し、ゼロ以外のステータスで終了します。シークレットが出力されることはありません。シークレットを設定せずに起動する場合は、ローカル開発に限り MCP_ALLOW_INSECURE_DEV=1 を設定してください。この場合、プロセスは警告をログに記録し、X-Gateway-S2S を検証せず、127.0.0.1 のみでバインドします。このモードでは、ループバック以外の MCP_HTTP_HOST(0.0.0.0 を含む)は無視され、上書きされたことがログに記録されます。プレースホルダーのシークレットを指定した場合は、引き続き起動が拒否されます。

CONDUIT_S2S_SECRET が設定されている場合は MCP_HTTP_HOST が適用され、未設定の場合は 0.0.0.0 が既定値になります。シークレットがない場合、リスナーは 127.0.0.1 になります。コンテナーイメージでは MCP_HTTP_HOST=0.0.0.0 および AUTH_MODE=gateway が設定されています。

CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" \
MCP_TRANSPORT=http \
MCP_HTTP_PORT=8080 \
AUTH_MODE=gateway \
node dist/http.js

シークレットなしのローカル HTTP は開発専用で、常に 127.0.0.1 にバインドします。

MCP_ALLOW_INSECURE_DEV=1 npm run start:http
X-Gateway-S2S

MCP_TRANSPORT=http かつ実際の CONDUIT_S2S_SECRET を使用する場合、すべての /mcp リクエストに X-Gateway-S2S を含める必要があります。

t=<unix seconds>,v1=<hex hmac-sha256>

署名は、リテラルメッセージ t=<unix seconds>(ヘッダー内にあるものと同じ t= プレフィックス)を CONDUIT_S2S_SECRET をキーとして HMAC-SHA256 で計算し、16 進数でエンコードしたものです。ヘッダーがない場合、または無効な場合は 401 を返します。/health は引き続き認証不要で、ベンダーの認証情報を読み込みません。stdio トランスポートでは CONDUIT_S2S_SECRET を使用しません。

AUTH_MODE=gateway の場合、/mcp では以下の Oracle ヘッダーも必要です。これらのヘッダーだけが、そのリクエストの認証情報の取得元になります。いずれかのヘッダーがない場合、リクエストは 401 を返し、プロセス環境内の IQMS_* へのフォールバックは行いません。

ヘッダー必須備考
X-Gateway-S2SCONDUIT_S2S_SECRET が設定されている場合は必須t=<unix seconds>,v1=<t=... の hmac-sha256 16 進数>
X-IQMS-Oracle-UserはいOracle DB ユーザー
X-IQMS-Oracle-PasswordはいOracle DB パスワード
X-IQMS-Oracle-Connect-StringはいEasy Connect または TNS
X-IQMS-WebAPI-Base-URLいいえ3 つの WebAPI ヘッダーがすべて設定されている場合、書き込みツールを有効にします
X-IQMS-WebAPI-Userいいえ
X-IQMS-WebAPI-Passwordいいえ
シングルテナント HTTP(AUTH_MODE=env)

/mcp では引き続き、有効な X-Gateway-S2S ヘッダーが必要です。ベンダーの認証情報は IQMS_ORACLE_USER、IQMS_ORACLE_PASSWORD、IQMS_ORACLE_CONNECT_STRING から取得します。任意の IQMS_WEBAPI_* 変数を設定すると、書き込みツールが有効になります。このモードは、これらの変数を注入しないゲートウェイ Compose サービスとは別のものです。

Docker

イメージはコンテナ内で 0.0.0.0 をリッスンし、デフォルトで AUTH_MODE=gateway を使用します。ポートをループバックに公開し、S2S シークレットを渡してください。ゲートウェイモードでは、IQMS の認証情報は各リクエストのヘッダーとして届き、環境変数からは読み込まれません。

docker build -t iqms-mcp .
docker run \
  -e CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" \
  -p 127.0.0.1:8080:8080 \
  iqms-mcp

Compose は CONDUIT_S2S_SECRET が未設定の場合に起動を拒否し、AUTH_MODE=gateway を設定して 127.0.0.1:8080:8080 を公開します。また、静的な IQMS_* 認証情報は注入しません。

CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" docker compose up

ライセンス

Apache-2.0

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。