How to Set Up an MCP for AutoCAD and Civil 3D with Claude

With ArcGeekCAD MCP you can connect AutoCAD or Civil 3D (2025, 2026, or 2027) to an AI assistant, letting you draw, create layers, dimensions, text, TIN surfaces, contour lines, and more using natural language. In this tutorial we’ll use Claude Desktop, though it also works with OpenCode, Antigravity, Cursor, and Claude Code.

⚠️ Note: ArcGeekCAD MCP is in an experimental development phase. It’s functional, but may have bugs or change in upcoming versions. If you try it, your feedback is very welcome: share your experience, any errors you run into, or ideas in the comments section at the end of this article.

Prerequisites

Make sure you have the following:

  • AutoCAD or Civil 3D 2025, 2026, or 2027 installed (it does not work on 2024 or earlier versions).
  • Python 3.10 or higher, making sure to check “Add Python to PATH” during installation.
  • Claude Desktop (or any MCP-compatible client, such as OpenCode or Claude Code).

Step 1: Copy the Plugin Folder

Copy the entire ArcGeekCAD-MCP folder to the root of your C: drive, so it looks like this:

C:\ArcGeekCAD-MCP\
    mcp_server\autocad_mcp_server.py
    plugin\MCPAutoCAD.dll
    ...

Important: keep that exact path. All the configuration in this tutorial is written for that location, so you can copy and paste without changing anything.

Step 2: Install the Python Dependency

Open PowerShell or CMD and run:

pip install mcp

Check that it installed correctly:

python -c "import mcp; print('mcp OK')"

Step 3: Load the Plugin in AutoCAD

  1. Open AutoCAD or Civil 3D.
  2. Type NETLOAD and press Enter.
  3. Select the file C:\ArcGeekCAD-MCP\plugin\MCPAutoCAD.dll.
  4. If a security warning appears, choose “Always Load”.
  5. Type MCPARCGEEK and press Enter.

You should see this in the command line:

[ArcGeekCAD] MCP server started on port 17272. Ready for Claude.

You’ll also see an ArcGeekCAD tab on the ribbon, with Start and Stop buttons for the server.

Tip: to have the plugin load automatically every time AutoCAD starts, use APPLOAD → the Contents button under “Startup Suite” → Add → select the DLL.

Step 4: Configure Claude Desktop

Open this file with Notepad (paste the path exactly as-is into the Windows File Explorer address bar):

%APPDATA%\Claude\claude_desktop_config.json

And paste this inside:

{
  "mcpServers": {
    "arcgeekcad": {
      "command": "python",
      "args": ["C:\\ArcGeekCAD-MCP\\mcp_server\\autocad_mcp_server.py"]
    }
  }
}

Note: if the file already had other servers configured, don’t overwrite it entirely; just add the "arcgeekcad": { ... } block inside the existing "mcpServers" object, separating it with a comma.

If editing the JSON by hand feels tricky (whether it’s your first time setting up an MCP or you already have other servers configured), you can paste this same code into any AI chat and ask it to help you add it or keep your existing servers intact; then grant it permission to make the changes.

Close Claude Desktop completely (from the icon next to the clock) and reopen it.

Startup Order (Important)

Always follow this order for the connection to work:

  1. Open AutoCAD.
  2. Run NETLOADMCPARCGEEK (the server must be listening).
  3. Open Claude Desktop.

If you open Claude before starting the server, you’ll see the error Could not connect. Run MCPARCGEEK in AutoCAD and try again.

Available Tools

Once connected, the AI can perform these operations directly in AutoCAD or Civil 3D:

  • Info and navigation: ping, drawing info, layers, entities, zoom, measure.
  • Layers: create, modify, delete, set current layer, linetypes.
  • Drawing: line, polyline, circle, arc, rectangle, ellipse, polygon, spline, point.
  • Annotation: text, mtext, linear/aligned/radial/diametric/angular dimensions.
  • Editing: move, copy, rotate, scale, mirror, offset, fillet, chamfer, explode, delete, hatch.
  • Text: list all text and find/replace across all layouts.
  • Blocks: list and insert.
  • Map 3D: import data, Object Data (OD), elevation from OD.
  • Civil 3D: parcels, alignments, surfaces, elevation and slope.
  • Civil 3D — TIN surfaces: create, points, breaklines, contours as data, boundaries, rebuild, extract contours, import DEM.
  • Utilities: save, undo, run AutoLISP.

Compatibility with Other MCP Clients

ArcGeekCAD MCP isn’t limited to Claude Desktop. You can also connect from OpenCode or Claude Code.

OpenCode — edit %USERPROFILE%\.config\opencode\opencode.json (note: forward slashes here):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "arcgeekcad": {
      "type": "local",
      "command": ["python", "C:/ArcGeekCAD-MCP/mcp_server/autocad_mcp_server.py"],
      "enabled": true
    }
  }
}

Claude Code (from the terminal):

claude mcp add arcgeekcad -- python "C:\ArcGeekCAD-MCP\mcp_server\autocad_mcp_server.py"

Automatic Installation (Optional)

If you’d rather not configure everything by hand, the folder includes two shortcuts that do exactly the same thing as Steps 2 and 4:

  • INSTALAR.bat: checks Python, installs mcp, and writes the configuration for the client you choose.
  • VER-CONFIG.bat: just displays the configuration blocks with the real paths on your computer, so you can copy them. It doesn’t change anything.

Common Issues

SymptomSolution
Could not connectYou need to run MCPARCGEEK in AutoCAD
ModuleNotFoundError: mcpRun pip install mcp
Claude doesn’t see the toolsClose Claude Desktop completely (icon next to the clock) and reopen it
NETLOAD fails to loadYour AutoCAD is 2024 or earlier — not compatible
Multiple Python installationsUse the full path in "command", e.g. "C:\\Users\\YOURUSER\\AppData\\Local\\Programs\\Python\\Python312\\python.exe"

If AutoCAD Crashes

Don’t ask Claude to edit text by writing raw AutoLISP. Iterating over a collection with vlax-for and modifying it within the same loop (vla-put-textstring, vla-put-layer, deleting entities…) invalidates the iterator and causes AutoCAD to crash with a fatal error.

Ask it to use the plugin’s own tools instead (replace text, modify layer, delete entity), which do the work in two safe steps. If a crash does happen, the report is saved at %LOCALAPPDATA%\Autodesk\CER\.

Testing the Connection

With AutoCAD open and MCPARCGEEK already running, try asking the AI things like:

  • Check: “Ping AutoCAD”.
  • Layers: “List the layers in the drawing”.
  • Drawing: “Draw a 100×50 rectangle on the WALLS layer”.
  • Text: “List all the text in the drawing”.
  • Civil 3D: “Create a TIN surface from these points and generate contour lines every meter”.

From here, the AI can draw, edit entities, manage layers, and work with Civil 3D TIN surfaces and alignments directly from the chat.

Uninstalling

  • Close AutoCAD (a .NET plugin can’t be unloaded while it’s running).
  • Remove it from the Startup Suite via APPLOAD if you added it there.
  • Delete the "arcgeekcad" block from Claude’s JSON file.
  • Delete the C:\ArcGeekCAD-MCP folder.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

Discover more from GIS Tuto

Subscribe now to keep reading and get access to the full archive.

Continue reading