MIDAS Gen NX / Civil NX

Official registry AI and agents

Read and carefully change the model open in MIDAS Gen NX or Civil NX on this PC.

What can you do with MIDAS Gen NX / Civil NX?

  • "Summarise the Gen model." - node, element, material, section, load case counts
  • "Show the DL reactions." - result tables after an analysis
  • "Show me the model." - a picture of the NX window
  • "Which design code is set?" - design parameter tables
  • "Add a node at (4, 3, 0)", "Run the analysis" - previewed, applied only after you agree

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

PYPI package midas-nx-mcp
Claude Code
claude mcp add midas-gen-nx-civil-nx -e 'MIDAS_MAPI_KEY_GEN=<your midas_mapi_key_gen>' -e 'MIDAS_MAPI_KEY_CIVIL=<your midas_mapi_key_civil>' -e 'MIDAS_OUTPUT_DIR=<MIDAS_OUTPUT_DIR>' -- uvx midas-nx-mcp==0.3.0
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "midas-gen-nx-civil-nx": {
            "command": "uvx",
            "args": [
                "midas-nx-mcp==0.3.0"
            ],
            "env": {
                "MIDAS_MAPI_KEY_GEN": "<your midas_mapi_key_gen>",
                "MIDAS_MAPI_KEY_CIVIL": "<your midas_mapi_key_civil>",
                "MIDAS_OUTPUT_DIR": "<MIDAS_OUTPUT_DIR>"
            }
        }
    }
}

Environment variables

  • MIDAS_MAPI_KEY_GEN secret Gen NX MAPI key (Apps > API Settings in Gen NX). Needed for product=gen.
  • MIDAS_MAPI_KEY_CIVIL secret Civil NX MAPI key (Apps > API Settings in Civil NX). Needed for product=civil.
  • MIDAS_OUTPUT_DIR Folder NX writes captures and saved copies into. Must exist. Default C:/temp.
MCPB package https://github.com/Dennis5882/midas-nx-mcp/releases/download/v0.3.0/midas-nx-mcp-0.3.0.mcpb

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. midas-nx-mcp
  2. What you can ask
  3. Requirements
  4. Install
  5. Settings
  6. Tools
  7. Development
  8. License

midas-nx-mcp

A local MCP server that lets Claude (and other MCP clients) read the model open in MIDAS Gen NX or MIDAS Civil NX, and change it only through steps you see and confirm first. Built on the midas-nx SDK.

Personal, employee-led project; not an official MIDAS IT product.

Status: alpha. Verified live on Gen NX 2026 and Civil NX 2026 on small test models (see PLAN.md); not yet used on large production models.

사용 설명서 (한국어): docs/user_guide_ko.md

What you can ask

  • "Summarise the Gen model." - node, element, material, section, load case counts
  • "Show the DL reactions." - result tables after an analysis
  • "Show me the model." - a picture of the NX window
  • "Which design code is set?" - design parameter tables
  • "Add a node at (4, 3, 0)", "Run the analysis" - previewed, applied only after you agree

Requirements

  • Windows, with Gen NX or Civil NX running on the same PC and its Open API connected (Apps > API Settings)
  • A MAPI key per product (Apps > API Settings in each program). Keys differ between Gen and Civil, and a wrong key still reports "connected", so do not swap them.
  • uv (installs Python and the server for you); not needed for the Claude Desktop bundle below

Install

Claude Desktop - one click

Download midas-nx-mcp-<version>.mcpb from the latest release and open it (or drag it onto Settings > Extensions). Claude Desktop installs Python and the server itself, and asks for your Gen and Civil keys; leave the one you do not use empty. Change them later under Settings > Extensions.

Claude Desktop - by hand

Settings > Developer > Edit Config (not "Add custom connector": that is for remote servers) and add:

{
  "mcpServers": {
    "midas-nx": {
      "command": "uvx",
      "args": ["midas-nx-mcp"],
      "env": {
        "MIDAS_MAPI_KEY_GEN": "your Gen NX key",
        "MIDAS_MAPI_KEY_CIVIL": "your Civil NX key"
      }
    }
  }
}

Quit Claude Desktop completely (tray icon too) and start it again. Settings > Developer should show midas-nx as running.

Claude Code
claude mcp add midas-nx -e MIDAS_MAPI_KEY_GEN=your-gen-key -- uvx midas-nx-mcp
Other clients (Codex, ...)

Add a STDIO server with command uvx, argument midas-nx-mcp, and the environment variables below.

Settings

variabledefaultmeaning
MIDAS_MAPI_KEY_GEN-Gen NX key. Needed for product="gen"
MIDAS_MAPI_KEY_CIVIL-Civil NX key. Needed for product="civil"
MIDAS_TIMEOUT20seconds per call. Short on purpose: a dialog in NX blocks the API
MIDAS_ANALYSIS_TIMEOUT300seconds for run_analysis only
MIDAS_SAVE_TIMEOUT120seconds for save_copy only
MIDAS_MAX_ROWS200most rows one call returns; the rest are counted, not sent
MIDAS_OUTPUT_DIRC:/tempwhere NX writes captures. Must exist

Tools

Reading (nothing in the model changes):

toolwhat it returns
check_connection(product)connected or not, program name
list_tables(product?, search?)the /db and /DESIGN tables midas-nx knows
describe_table(product, table)NX's own field schema for a /db table
read_table(product, table, ids?, limit?)records, capped at MIDAS_MAX_ROWS
model_summary(product)counts of the main tables, and the unit system
read_model_info(product, what)project status, section properties, story check parameters, current selection
list_result_tables(search?)the result table types result_table accepts
result_table(product, table_type, load_cases?, components?, keys?, limit?)one result table; nothing exported
capture_view(product, width?, height?)the NX window as a PNG

Changing - each is called twice: first a preview with a confirm_token, then the same call with that token. It applies only if nothing changed in between, and reads the table back afterwards:

toolwhat it does
run_analysis(product)runs the analysis. NX saves the open file first; a never-saved document is refused. A dialog NX opens meanwhile is reported at once
save_copy(product)Save As to a generated name in MIDAS_OUTPUT_DIR; NX then works on the copy and the original stays as last saved. Gives a new document a file
write_records(product, table, records, mode)creates or updates up to 50 /db or /DESIGN records
delete_records(product, table, ids)deletes up to 50 records by id; nodes still used by elements are refused; a /DESIGN record NX resets instead of removing is reported as such

Any write discards the analysis results in NX (even one that stores the same value); run the analysis again before reading results.

Never exposed: new/open/import document, emptying a table.

Development

git clone https://github.com/Dennis5882/midas-nx-mcp
cd midas-nx-mcp
python -m venv .venv
.venv\Scripts\activate
pip install -e ".[dev]"
copy .env.example .env      # a checkout reads its .env; an installed package does not
pytest
ruff check src tests scripts
npx @modelcontextprotocol/inspector .venv\Scripts\python.exe -m midas_nx_mcp.server

AGENTS.md holds the safety rules every tool follows, and PLAN.md what has been verified live and what is open.

License

MIT

Frequently asked questions

What is MIDAS Gen NX / Civil NX?

Read and carefully change the model open in MIDAS Gen NX or Civil NX on this PC.

How do I install MIDAS Gen NX / Civil NX?

It runs on your machine. In Claude Code: claude mcp add midas-gen-nx-civil-nx -e 'MIDAS_MAPI_KEY_GEN=<your midas_mapi_key_gen>' -e 'MIDAS_MAPI_KEY_CIVIL=<your midas_mapi_key_civil>' -e 'MIDAS_OUTPUT_DIR=<MIDAS_OUTPUT_DIR>' -- uvx midas-nx-mcp==0.3.0. For other clients, paste the JSON configuration from this page into their MCP settings.

Does MIDAS Gen NX / Civil NX need an API key?

Yes. It expects MIDAS_MAPI_KEY_GEN, MIDAS_MAPI_KEY_CIVIL, which you set in its configuration.

Is MIDAS Gen NX / Civil NX open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains MIDAS Gen NX / Civil NX?

It is published by Dennis5882. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.