
IQMS / DELMIA Apriso
io.github.wyre-technologyPublished by GitHub account wyre-technologyv1.2.12Updated Oct 26, 2026
MCP server for IQMS (DELMIAworks) ERP — manufacturing, inventory, production, and quality.
Overview
MCP server for IQMS / DELMIAworks (EnterpriseIQ) ERP, letting an assistant query manufacturing, inventory, BOM, order, schedule and quality data.
- What you can do
- Discover and check the server: list tools by domain and verify credentials and connection.
- Read work orders: list open or in-progress orders and fetch full detail including routings.
- Read inventory and BOMs: on-hand by item, location or lot, lot genealogy, BOM explosion and where-used.
- Read orders and planning: open sales orders with ship status, open purchase orders with expected receipts, machine schedule and capacity load.
- Read quality records: non-conformances, CARs and CAPAs.
- Write, only when the licensed WebAPI module is configured: create work orders, post production quantities, adjust inventory and open non-conformance records.
- When to use it
- Useful when an assistant needs to answer questions about a company's IQMS / DELMIAworks ERP data — production status, stock levels, lot traceability, order backlogs, capacity or quality issues — without a public REST API. Write tools only make sense for sites that have licensed the DELMIAworks WebAPI add-on.
- Requirements
- Runs as a local stdio process (npx or the container image). Needs an Oracle connection to the IQMS database: IQMS_ORACLE_USER, IQMS_ORACLE_PASSWORD and IQMS_ORACLE_CONNECT_STRING. Write tools additionally need the licensed WebAPI module and its base URL and credentials. HTTP/gateway mode requires CONDUIT_S2S_SECRET and per-request Oracle headers.
Installation
In SourceWeft
- Open IQMS / DELMIA Apriso in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
iqms-mcp
MCP server for IQMS / DELMIAworks (EnterpriseIQ), the manufacturing ERP from Dassault Systèmes.
Status: Read tools issue queries through
@wyre-technology/node-iqmsagainst the Direct Oracle path (always available). Write tools route through the licensed DELMIAworks WebAPI module — an optional add-on — and throwDriverNotConfiguredErroruntilX-IQMS-WebAPI-Base-URLcredentials are supplied.
Why this exists
EnterpriseIQ doesn't have a public REST API. The realistic integration paths are:
- Direct Oracle (universal at every install) — read-only queries
- WebAPI module (paid licensed add-on) — transactional writes
This MCP server exposes both behind a single decision-tree-navigated tool surface.
Tools
Initial discovery surface (always available):
iqms_navigate— list tools in a domainiqms_status— credential / connection check
Domains: workorders, inventory, boms, sales_orders, purchase_orders,
schedule, quality.
Read tools (Oracle, available always):
Write tools (WebAPI, gated):
Run modes
Local (stdio)
Gateway (HTTP, stateless)
CONDUIT_S2S_SECRET is required. If it is empty or a known placeholder (changeme, placeholder, your-s2s-secret, and the other example values rejected at startup), the HTTP server logs an error and exits non-zero. It never prints the secret. Set MCP_ALLOW_INSECURE_DEV=1 only for local development to start without the secret; the process logs a warning, does not check X-Gateway-S2S, and binds 127.0.0.1 only. A non-loopback MCP_HTTP_HOST (including 0.0.0.0) is ignored in that mode and the override is logged. A placeholder secret still refuses to start.
MCP_HTTP_HOST is honored when CONDUIT_S2S_SECRET is set, and defaults to 0.0.0.0 when unset. With no secret, the listener is 127.0.0.1. The container image sets MCP_HTTP_HOST=0.0.0.0 and AUTH_MODE=gateway.
Local HTTP without a secret is development-only and always binds 127.0.0.1:
X-Gateway-S2S
With MCP_TRANSPORT=http and a real CONDUIT_S2S_SECRET, every /mcp request must include X-Gateway-S2S:
The signature is HMAC-SHA256 of the literal message t=<unix seconds> (the same t= prefix that appears in the header), keyed with CONDUIT_S2S_SECRET, and hex-encoded. A missing or invalid header returns 401. /health stays unauthenticated and does not read vendor credentials. The stdio transport does not use CONDUIT_S2S_SECRET.
In AUTH_MODE=gateway, /mcp also requires the Oracle headers below. Those headers are the only credential source for that request. A request missing any of them returns 401 and does not fall back to IQMS_* in the process environment.
Single-tenant HTTP (AUTH_MODE=env)
/mcp still requires a valid X-Gateway-S2S header. Vendor credentials come from IQMS_ORACLE_USER, IQMS_ORACLE_PASSWORD, and IQMS_ORACLE_CONNECT_STRING. Optional IQMS_WEBAPI_* variables enable write tools. This mode is separate from the gateway Compose service, which does not inject those variables.
Docker
The image listens on 0.0.0.0 inside the container and defaults to AUTH_MODE=gateway. Publish the port on loopback and pass the S2S secret. In gateway mode, IQMS credentials arrive on each request as headers; they are not read from the environment.
Compose refuses to start when CONDUIT_S2S_SECRET is unset, sets AUTH_MODE=gateway, publishes 127.0.0.1:8080:8080, and does not inject static IQMS_* credentials:
License
Apache-2.0
Source: README.md at commit f041571
Tools
0Version history
1- v1.2.12LatestSep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.