icepak-mcp

icepak-mcp

Enables AI assistants to interact with ANSYS Icepak through natural language commands, supporting geometry import, material assignment, thermal loads, meshing, solving, and result retrieval.

Category
Visit Server

README

ANSYS Icepak MCP Server

A Model Context Protocol (MCP) server that enables AI assistants to interact with ANSYS Icepak through natural language commands, powered by PyAEDT over gRPC.

Import geometry, assign materials and thermal loads, build meshes, run natural/forced convection simulations, and retrieve results — all by chatting with Claude.

Status: work in progress. Core geometry/material/mesh/solve workflow is functional; expect rough edges (see Known Issues).


Compatible Clients

Client Supported
Claude Desktop ✅
Cursor ✅
Windsurf ✅
VS Code (Copilot) ✅
Any MCP-compatible client ✅

Capabilities

Connection Management

Tool Description
connect_to_icepak Connect to a running AEDT/Icepak session via gRPC port
check_connection Check current connection status
disconnect Release the Icepak connection without closing the project

Geometry

Tool Description
create_box Create a rectangular box primitive
create_cylinder Create a cylinder primitive
create_sphere Create a sphere primitive
create_region Create the domain Region object (percentage/absolute offset or position padding)

Materials

Tool Description
list_materials List all materials in the active project
assign_material Assign a material to an existing geometry object

Thermal & Flow Boundaries

Tool Description
assign_source_power Assign a fixed heat-source power (W) to an object
assign_opening Assign an opening boundary on all faces of an object (e.g. the Region)
assign_grille Assign a grille (perforated) boundary with free-area ratio / loss coefficient
create_fan Create a fan object (circular or other cross-section)

Solution Setup

Tool Description
create_solution_setup Create a steady-state temperature-and-flow solution setup (iterations, convergence, flow regime)

Solve & Results

Tool Description
solve Launch the Icepak solver for one or all setups
get_solve_status Check solved/unsolved status of all setups
export_field_summary Export a field summary report (e.g. max/min Temperature over a volume or object)

Scripting

Tool Description
run_icepak_script Execute arbitrary PyAEDT/Python code against the live Icepak session (runs in background, returns a job ID)
get_script_result Poll the output of a background script job

Requirements

  • ANSYS Electronics Desktop (AEDT) 2023 R1 or later with Icepak
  • Python 3.10+
  • PyAEDT (ansys-aedt-core or pyaedt)

Installation

git clone https://github.com/NedaEmami123/icepak-mcp.git
cd icepak-mcp
python -m venv venv
venv\Scripts\activate       # Windows
pip install ansys-aedt-core mcp

Configuration

Find your client's config file and add the icepak-mcp server entry:

Client Config file location
Claude Desktop %APPDATA%\Claude\claude_desktop_config.json
Cursor %APPDATA%\Roaming\Cursor\User\globalStorage\cursor.mcp\mcp.json
Windsurf %APPDATA%\Windsurf\User\globalStorage\codeium.windsurf\mcp_config.json
VS Code .vscode/mcp.json in your workspace

Add this block:

{
  "mcpServers": {
    "icepak-mcp": {
      "command": "C:/path/to/icepak-mcp/venv/Scripts/python.exe",
      "args": ["C:/path/to/icepak-mcp/icepak_mcp_server.py"],
      "env": {
        "ANSYSEM_ROOT261": "C:/Program Files/ANSYS Inc/v261/AnsysEM"
      }
    }
  }
}

Replace v261 with your installed AEDT version (e.g. v232, v241, v251).


Usage

1. Start Icepak and get the gRPC port

Open ANSYS Electronics Desktop with an Icepak design. In the Message Manager, look for:

gRPC server started on port 50051

2. Connect Claude to Icepak

In your chat with Claude:

"Connect to Icepak"

3. Build and solve a thermal model

"Import this STEP file, assign materials, create a natural convection region, add source power to the chips, mesh, and solve."

Claude will typically:

  • Import CAD geometry (via run_icepak_script + PyAEDT's import_3d_cad)
  • Assign materials per object
  • Create a properly-sized air Region (natural or forced convection padding rules)
  • Assign source power / opening / grille boundaries
  • Create a solution setup and mesh regions
  • Solve and pull back field summaries or plots

4. Poll for results (long jobs)

Long workflows (imports, scripted geometry edits, mesh generation) run in the background. Claude will give you a job_id and poll automatically:

"Get script result for job_1"


Known Issues

  • The AEDT gRPC bridge can intermittently lock up on certain calls (e.g. GetObjectsInGroup, GetSetups) after heavy geometry/mesh-region churn or a stuck dialog in the AEDT GUI. Disconnecting/reconnecting (disconnect + connect_to_icepak) usually recovers it; a full AEDT restart is sometimes required.
  • solve blocks synchronously and can time out the MCP client on long solves even though AEDT keeps solving in the background — poll get_solve_status afterward rather than re-triggering solve.
  • No dedicated tools yet for field plots, mesh regions, or design duplication — use run_icepak_script with raw PyAEDT calls for these.

License

Apache 2.0 — see LICENSE

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured