{
  "markdown": "# `iqms-mcp`\n\nMCP server for **IQMS / DELMIAworks** (EnterpriseIQ), the manufacturing ERP\nfrom Dassault Systèmes.\n\n> **Status:** Read tools issue queries through\n> [`@wyre-technology/node-iqms`](https://github.com/wyre-technology/node-iqms)\n> against the Direct Oracle path (always available). Write tools route through\n> the licensed DELMIAworks WebAPI module — an optional add-on — and throw\n> `DriverNotConfiguredError` until `X-IQMS-WebAPI-Base-URL` credentials are\n> supplied.\n\n## Why this exists\n\nEnterpriseIQ doesn't have a public REST API. The realistic integration paths are:\n\n1. **Direct Oracle** (universal at every install) — read-only queries\n2. **WebAPI module** (paid licensed add-on) — transactional writes\n\nThis MCP server exposes both behind a single decision-tree-navigated tool surface.\n\n## Tools\n\nInitial discovery surface (always available):\n\n- `iqms_navigate` — list tools in a domain\n- `iqms_status` — credential / connection check\n\nDomains: `workorders`, `inventory`, `boms`, `sales_orders`, `purchase_orders`,\n`schedule`, `quality`.\n\nRead tools (Oracle, available always):\n\n| Tool | Purpose |\n|------|---------|\n| `iqms_workorders_list` | Open / in-progress work orders |\n| `iqms_workorders_get` | Full work order detail incl. routings |\n| `iqms_inventory_onhand` | On-hand by item / location / lot |\n| `iqms_inventory_lot_trace` | Lot genealogy walk |\n| `iqms_boms_explode` | BOM explosion |\n| `iqms_boms_where_used` | Where-used reverse lookup |\n| `iqms_sales_orders_list` | Open SOs / ship status |\n| `iqms_purchase_orders_list` | Open POs / expected receipts |\n| `iqms_schedule_capacity` | Machine schedule + capacity load |\n| `iqms_quality_ncrs` | Non-conformances / CARs / CAPAs |\n\nWrite tools (WebAPI, gated):\n\n| Tool | Purpose |\n|------|---------|\n| `iqms_workorders_create` | Create a new work order |\n| `iqms_workorders_post_production` | Post qty made / scrapped |\n| `iqms_inventory_adjust` | Inventory transaction |\n| `iqms_quality_create_ncr` | Open a non-conformance record |\n\n## Run modes\n\n### Local (stdio)\n\n```bash\nIQMS_ORACLE_USER=eiq_ro \\\nIQMS_ORACLE_PASSWORD=… \\\nIQMS_ORACLE_CONNECT_STRING=eiq-db.example.com:1521/EIQ \\\nnpx -y github:WYRE-AI/iqms-mcp\n```\n\n### Gateway (HTTP, stateless)\n\n```bash\nMCP_TRANSPORT=http \\\nMCP_HTTP_PORT=8080 \\\nAUTH_MODE=gateway \\\nnode dist/http.js\n```\n\nIn gateway mode, credentials are injected per-request via headers:\n\n| Header | Required | Notes |\n|--------|----------|-------|\n| `X-IQMS-Oracle-User` | yes | Oracle DB user |\n| `X-IQMS-Oracle-Password` | yes | Oracle DB password |\n| `X-IQMS-Oracle-Connect-String` | yes | Easy Connect or TNS |\n| `X-IQMS-WebAPI-Base-URL` | no | Enables write tools when present |\n| `X-IQMS-WebAPI-User` | no | |\n| `X-IQMS-WebAPI-Password` | no | |\n\n## License\n\nApache-2.0\n",
  "bytes": 2782,
  "sha": "a780ed31bf6ff529c78eaddf607fde7482ff37d0f42f9d47f7dda99903ff7b04",
  "repo_slug": "wyre-technology/iqms-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_wyre_technology_iqms_mcp_2b48a3a2/readme"
}