Connects Claude to IQMS (now DELMIAworks) manufacturing ERP systems through direct Oracle database queries for reads and the licensed WebAPI module for writes. Exposes work order lookup and creation, inventory on-hand and lot tracing, BOM explosions, sales and purchase order visibility, production schedule capacity, and quality non-conformances. Read operations work out of the box with Oracle credentials. Write tools like posting production or creating NCRs require the paid WebAPI add-on and currently throw not-implemented errors pending vendor SDK access. Built for shops running EnterpriseIQ who need programmatic ERP integration without a native REST API. Supports both stdio and stateless HTTP gateway modes with per-request credential injection.
iqms-mcpMCP server for IQMS / DELMIAworks (EnterpriseIQ), the manufacturing ERP from Dassault Systèmes.
Status: Scaffolding. Read tools issue queries through
@wyre-technology/node-iqms, which has tentative SQL pending design-partner schema validation. Write tools route through the licensed DELMIAworks WebAPI module and currently throwNotImplementedErroruntil vendor SDK access.
EnterpriseIQ doesn't have a public REST API. The realistic integration paths are:
This MCP server exposes both behind a single decision-tree-navigated tool surface.
Initial discovery surface (always available):
iqms_navigate — list tools in a domainiqms_status — credential / connection checkDomains: workorders, inventory, boms, sales_orders, purchase_orders,
schedule, quality.
Read tools (Oracle, available always):
| Tool | Purpose |
|---|---|
iqms_workorders_list | Open / in-progress work orders |
iqms_workorders_get | Full work order detail incl. routings |
iqms_inventory_onhand | On-hand by item / location / lot |
iqms_inventory_lot_trace | Lot genealogy walk |
iqms_boms_explode | BOM explosion |
iqms_boms_where_used | Where-used reverse lookup |
iqms_sales_orders_list | Open SOs / ship status |
iqms_purchase_orders_list | Open POs / expected receipts |
iqms_schedule_capacity | Machine schedule + capacity load |
iqms_quality_ncrs | Non-conformances / CARs / CAPAs |
Write tools (WebAPI, gated):
| Tool | Purpose |
|---|---|
iqms_workorders_create | Create a new work order |
iqms_workorders_post_production | Post qty made / scrapped |
iqms_inventory_adjust | Inventory transaction |
iqms_quality_create_ncr | Open a non-conformance record |
IQMS_ORACLE_USER=eiq_ro \
IQMS_ORACLE_PASSWORD=… \
IQMS_ORACLE_CONNECT_STRING=eiq-db.example.com:1521/EIQ \
npx -y github:wyre-technology/iqms-mcp
MCP_TRANSPORT=http \
MCP_HTTP_PORT=8080 \
AUTH_MODE=gateway \
node dist/http.js
In gateway mode, credentials are injected per-request via headers:
| Header | Required | Notes |
|---|---|---|
X-IQMS-Oracle-User | yes | Oracle DB user |
X-IQMS-Oracle-Password | yes | Oracle DB password |
X-IQMS-Oracle-Connect-String | yes | Easy Connect or TNS |
X-IQMS-WebAPI-Base-URL | no | Enables write tools when present |
X-IQMS-WebAPI-User | no | |
X-IQMS-WebAPI-Password | no |
Apache-2.0
IQMS_ORACLE_CONNECT_STRING*Oracle connection string for the IQMS database (e.g. host:port/service)
IQMS_ORACLE_USER*IQMS Oracle DB username
IQMS_ORACLE_PASSWORD*secretIQMS Oracle DB password
MCP_TRANSPORTdefault: stdioTransport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
AUTH_MODEdefault: envCredential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.
LOG_LEVELdefault: infoLog verbosity: debug, info, warn, error