IDE and client configuration#

PyAEDT-MCP works with any MCP-compatible client. This page shows the HTTP and stdio configurations for Visual Studio Code with Copilot, Claude Code, OpenCode, and Codex.

Prerequisite: install uv#

Install uv, which includes uvx, before using the uvx examples below. uvx downloads and runs PyAEDT-MCP without cloning this repository. Follow the uv installation instructions.

For example, on Windows:

winget install --id=astral-sh.uv -e

On macOS or Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

Choose a transport#

Choose HTTP when a PyAEDT-MCP server is already running locally. It is appropriate for debugging or development. The client connects to the URL; it does not start the server on its own.

Choose stdio when the client should launch PyAEDT-MCP as a local child process. It starts automatically from the client configuration with uvx or from the virtual environment in a cloned repository. Stdio is normally the simplest option for a single local client.

Transport configurations#

HTTP client configurations require a running PyAEDT-MCP server. Start it from a cloned repository after creating and installing a virtual environment:

Windows PowerShell

git clone https://github.com/ansys/pyaedt-mcp.git
cd pyaedt-mcp
uv venv
uv pip install .
.venv\Scripts\ansys-aedt-mcp --transport http --http-host 127.0.0.1 --http-port 8080

macOS or Linux

git clone https://github.com/ansys/pyaedt-mcp.git
cd pyaedt-mcp
uv venv
uv pip install .
.venv/bin/ansys-aedt-mcp --transport http --http-host 127.0.0.1 --http-port 8080

Or run the server directly with uvx without cloning the repository:

uvx --index-strategy unsafe-best-match \
  --from git+https://github.com/ansys/pyaedt-mcp.git ansys-aedt-mcp \
  --transport http --http-host 127.0.0.1 --http-port 8080

Keep the command running while the HTTP client is in use. For Docker and remote deployment options, see Docker deployment.

Add this configuration to .vscode/mcp.json.

{
  "servers": {
    "pyaedt-mcp": {
      "type": "http",
      "url": "http://127.0.0.1:8080/mcp"
    }
  }
}

Configure Claude Code for the current project:

claude mcp add --transport http pyaedt-mcp http://127.0.0.1:8080/mcp

Add this entry to the mcp object in opencode.json or opencode.jsonc:

{
  "mcp": {
    "pyaedt-mcp": {
      "type": "remote",
      "url": "http://127.0.0.1:8080/mcp"
    }
  }
}

Add this entry to ~/.codex/config.toml:

[mcp_servers.pyaedt-mcp]
url = "http://127.0.0.1:8080/mcp"

Stdio clients launch the local server automatically when needed. The following examples use uvx. To run from a cloned repository instead, create the virtual environment with uv venv and install the project with uv pip install .. Then replace uvx and its arguments with .venv\\Scripts\\ansys-aedt-mcp on Windows or .venv/bin/ansys-aedt-mcp on macOS and Linux.

Add this configuration to .vscode/mcp.json. Use the Command Palette command MCP: List Servers to start, stop, or inspect the server.

{
  "servers": {
    "pyaedt-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "--index-strategy", "unsafe-best-match",
        "--from", "git+https://github.com/ansys/pyaedt-mcp.git",
        "ansys-aedt-mcp"
      ]
    }
  }
}

Configure Claude Code for the current project. Add --scope user before pyaedt-mcp to make it available in all projects.

claude mcp add --transport stdio pyaedt-mcp -- \
  uvx --index-strategy unsafe-best-match \
  --from git+https://github.com/ansys/pyaedt-mcp.git ansys-aedt-mcp

On Windows PowerShell, use a backtick (`` ` ) instead of ``\ for line continuation. Claude Desktop supports local stdio servers through its mcpServers configuration; use the same command and args values as the VS Code configuration above.

Add this entry to the mcp object in opencode.json or opencode.jsonc:

{
  "mcp": {
    "pyaedt-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "--index-strategy", "unsafe-best-match",
        "--from", "git+https://github.com/ansys/pyaedt-mcp.git",
        "ansys-aedt-mcp"
      ]
    }
  }
}

Add this entry to ~/.codex/config.toml:

[mcp_servers.pyaedt-mcp]
command = "uvx"
args = [
  "--index-strategy", "unsafe-best-match",
  "--from", "git+https://github.com/ansys/pyaedt-mcp.git",
  "ansys-aedt-mcp"
]

See MCP configuration reference in VS Code, Connect Claude Code to tools via MCP, the OpenCode MCP server documentation, and the Codex MCP documentation for client-specific configuration and authentication options.

Advanced configuration#

Add the following server arguments after ansys-aedt-mcp in a stdio configuration, or to the command used to start an HTTP server.

Argument

Default

Description

--transport {stdio,http}

stdio

Select the MCP transport. Set this to http only when starting a standalone HTTP server; stdio clients start the server with the default.

--machine HOST

localhost

AEDT gRPC host name or IP address for a startup connection.

--port PORT

50051

AEDT gRPC port for a startup connection. Values must be from 1 through 65535.

--version VERSION

Unset

AEDT version to use, for example 2026.1 or 261.

--graphical

Non-graphical

Launch AEDT with its graphical interface. Omit it to use the default non-graphical mode.

--non-graphical

Enabled

Explicitly launch AEDT without its graphical interface.

--connect

Disabled

Connect to AEDT when PyAEDT-MCP starts, using --machine and --port. This locks the connection, disabling launch_aedt, connect_to_aedt, and disconnect_from_aedt for the server lifetime.

--include-context

Disabled

Register the optional AEDT and PyAEDT workflow guidance tools.

--dynamic-tool-discovery

Disabled

Hide AEDT-only tools until an AEDT connection is established, reducing the initial client context.

--http-host HOST

127.0.0.1

Network interface used by HTTP transport. This argument applies only with --transport http.

--http-port PORT

8080

Network port used by HTTP transport. This argument applies only with --transport http and must be from 1 through 65535.

--cors-origins ORIGIN [ORIGIN ...]

Unset

Space-separated origins allowed by the HTTP server’s CORS policy. This argument applies only with --transport http.

For example, append the arguments below to any stdio command to connect to a specific AEDT gRPC session and register the optional context tools:

ansys-aedt-mcp --connect --machine 192.168.1.100 --port 50051 --include-context

Next steps#

After PyAEDT-MCP connects, follow Best practices for recommended workflows and Tools and capabilities to explore the available tools.