{"slug": "autocad-2027-mcp-server-fix-and-setup-for-ai-agents-claude-cursor", "title": "AutoCAD 2027 MCP Server: fix and setup for AI agents (Claude, Cursor)", "summary": "A developer documented three fixes needed to make the MCP server bundled with AutoCAD 2027 (build 26.0.460.2523) work with AI agent clients such as Claude and Cursor. The server fails out of the box because ModelContextProtocol.AspNetCore.dll is missing from the plugin folder, the HTTP server is disabled by default, and the plugin is not loaded at startup, leaving MCPCONFIG and MCPHTTPSTART unrecognized until NETLOAD is run. After copying the matching NuGet package DLL into the plugin's Contents folder and setting the ACMCP_TOOLS_CONFIG_FILE environment variable with a nested toolsConfiguration file enabling the HTTP server, the server listens on http://localhost:5001/mcp over Streamable HTTP.", "body_md": "**TL;DR.** The MCP server bundled with AutoCAD 2027 (offered by the installer as \"Autodesk AutoCAD MCP Server\") does not work out of the box in build 26.0.460.2523:\n\n1. `ModelContextProtocol.AspNetCore.dll` is missing from the plugin folder →`MCPHTTPSTART` throws`FileNotFoundException` .\n2. The HTTP server is disabled by default (`enableHttpServer: false` ).\n3. The plugin is not loaded at startup → commands `MCPCONFIG` /`MCPHTTPSTART` are \"unknown\" until you`NETLOAD` it.\n\nAfter the fixes below, the server listens on `http://localhost:5001/mcp` (Streamable HTTP) and works with any MCP client.\n\nTested on Windows 11, AutoCAD 2027 (26.0.460.2523), Russian UI.\n\n- The server is a .NET plugin running **inside `acad.exe`** ; it only works while AutoCAD is open.\n- Plugin folder: `C:\\Program Files\\Autodesk\\ApplicationPlugins\\AutoCAD-MCP-Server-2027.bundle\\Contents\\`\n- AutoCAD commands: `MCPCONFIG` (Show / Modify / Write / Load / Reset),`MCPHTTPSTART` ,`MCPHTTPSTOP` .\n- Endpoint: `http://localhost:<port>/mcp` , the first free port in a range (usually**5001** ).\n- Server name `autodesk-autocad-mcp-server` . Tools include`queryAutoCADObjects` ,`discoverAutoCADTypes` ,`aggregateAutoCADObjects` ,`checkAutoCADObjects` ,`manipulateDrawingCanvas` .\n\nSymptom when running `MCPHTTPSTART`:\n\n```\nSystem.IO.FileNotFoundException: Could not load file or assembly\n'ModelContextProtocol.AspNetCore, Version=0.4.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'\n   at Autodesk.AutoCAD.Mcp.Http.HttpMcpServer.StartServer()\n```\n\nASP.NET Core 10 itself is already referenced by AutoCAD (`acdbmgd.runtimeconfig.json` lists `Microsoft.AspNetCore.App 10.0.0`); only the MCP SDK's ASP.NET Core package is missing.\n\n1. Find the exact SDK version shipped with the plugin (2027: `0.4.0-preview.3` ):\n\n```\n(Get-Item \"C:\\Program Files\\Autodesk\\ApplicationPlugins\\AutoCAD-MCP-Server-2027.bundle\\Contents\\ModelContextProtocol.Core.dll\").VersionInfo.ProductVersion\n```\n\n2. Download the **same version** of the official package from NuGet ([ModelContextProtocol.AspNetCore 0.4.0-preview.3](https://www.nuget.org/packages/ModelContextProtocol.AspNetCore/0.4.0-preview.3) ) into an empty folder and unzip it:\n\n```\nInvoke-WebRequest https://www.nuget.org/api/v2/package/ModelContextProtocol.AspNetCore/0.4.0-preview.3 -OutFile pkg.zip\nExpand-Archive pkg.zip x\n```\n\n3. Verify `x\\lib\\net10.0\\ModelContextProtocol.AspNetCore.dll` :`[Reflection.AssemblyName]::GetAssemblyName(\"<path>\").FullName` must show`Version=0.4.0.0, PublicKeyToken=cc7b13ffcd2ddd51` , and its ProductVersion must have the same commit hash as`ModelContextProtocol.Core.dll` . (The NuGet DLL has no Authenticode signature; Autodesk re-signs its copies. This is expected.)\n4. Copy it into the plugin's `Contents` folder (requires admin):\n\n```\nCopy-Item x\\lib\\net10.0\\ModelContextProtocol.AspNetCore.dll \"C:\\Program Files\\Autodesk\\ApplicationPlugins\\AutoCAD-MCP-Server-2027.bundle\\Contents\\\"\n```\n\nAn AutoCAD update may remove the file or change the SDK version; repeat this step if the error comes back.\n\nThe config file path comes from the environment variable `ACMCP_TOOLS_CONFIG_FILE`. Without it, `MCPCONFIG Write/Load` refuse to work.\n\n1. Set the variable, then **restart AutoCAD** :\n\n```\nsetx ACMCP_TOOLS_CONFIG_FILE \"%APPDATA%\\Autodesk\\acmcp-config.json\"\n```\n\n2. Write the file in exactly this format (nested `toolsConfiguration` , camelCase). A flat or PascalCase file is silently ignored by`Load` :\n\n```\n{\n  \"toolsConfiguration\": {\n    \"enabledTools\": [],\n    \"disabledTools\": [],\n    \"enableAllToolsByDefault\": true,\n    \"enableExperimentalFeatures\": false,\n    \"enableDebugLogging\": false,\n    \"enableHttpServer\": true,\n    \"jsonCompression\": {\n      \"enableObjectDeduplication\": false,\n      \"maxPropertyCountForObjectDeduplication\": 4,\n      \"minOccurrenceForObjectDeduplication\": 2,\n      \"enableStringDeduplication\": false,\n      \"enableArrayCompression\": true,\n      \"enabled\": true,\n      \"arrayCompressionMinSize\": 3,\n      \"arrayCompressionMaxSparsity\": 0.5,\n      \"arrayCompressionMinSimilarity\": 0.7\n    }\n  }\n}\n```\n\n`MCPCONFIG` → `Show` prints the current JSON; `Write` saves it to the file. Use either as the reference format.\n\nIn the **AutoCAD command line** (not PowerShell):\n\n1. `NETLOAD` →`C:\\Program Files\\Autodesk\\ApplicationPlugins\\AutoCAD-MCP-Server-2027.bundle\\Contents\\acmcp.dll`\n2. `MCPCONFIG` →`Load` →`Configuration imported successfully from: ...`\n3. `MCPHTTPSTART` →`AutoCAD MCP Server is ... running on http://localhost:5001/mcp`\n\nAutomated via COM. Run it in **Windows PowerShell 5.1** (`powershell.exe`), because PowerShell 7 has no `Marshal.GetActiveObject`. Pass all prompt answers in a **single** `SendCommand` string, otherwise the COM call blocks at the first prompt.\n\n``` php\nfunction Retry([scriptblock]$b) {\n    for ($k = 0; $k -lt 60; $k++) { try { return & $b } catch { Start-Sleep 1 } }\n    throw \"AutoCAD not ready\"\n}\n$ac = Retry { [Runtime.InteropServices.Marshal]::GetActiveObject(\"AutoCAD.Application\") }\nif ((Retry { $ac.Documents.Count }) -eq 0) { [void](Retry { $ac.Documents.Add() }); Start-Sleep 3 }\n$d = Retry { $ac.ActiveDocument }\n$dll = \"C:\\Program Files\\Autodesk\\ApplicationPlugins\\AutoCAD-MCP-Server-2027.bundle\\Contents\\acmcp.dll\"\nRetry { $d.SendCommand(\"(setvar `\"FILEDIA`\" 0)` n_NETLOAD`n`\"$dll`\"` n(setvar `\"FILEDIA`\" 1)` n_MCPCONFIG`n_Load` n_MCPHTTPSTART`n\") }\n```\n\nCheck that the port is open: `Get-NetTCPConnection -State Listen -OwningProcess (Get-Process acad).Id`.\n\nClaude Code (`.mcp.json` in the project root). Any client that supports Streamable HTTP can use the same URL:\n\n```\n{ \"mcpServers\": { \"autocad\": { \"type\": \"http\", \"url\": \"http://localhost:5001/mcp\" } } }\n```\n\nSmoke test without a client. The response must contain `\"name\":\"autodesk-autocad-mcp-server\"`:\n\n```\nInvoke-WebRequest http://localhost:5001/mcp -Method Post -ContentType application/json `\n  -Headers @{Accept='application/json, text/event-stream'} `\n  -Body '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-06-18\",\"capabilities\":{},\"clientInfo\":{\"name\":\"probe\",\"version\":\"1\"}}}'\n```\n\n| Symptom | Cause | Fix | \n|---|---|---|\n| `MCPCONFIG: The term ... is not recognized` | Typed in PowerShell | Type it in the AutoCAD command line | \n| `Unknown command \"MCPCONFIG\"` | Plugin not loaded | `NETLOAD acmcp.dll` (step 3) | \n| `NETLOAD` succeeds silently but commands are still unknown | AutoCAD already loaded the DLL itself (built-in assistant) without registering commands | Restart AutoCAD and `NETLOAD` right away | \n| `FileNotFoundException ... ModelContextProtocol.AspNetCore` | Missing DLL | Step 1 | \n| `MCPHTTPSTART` prints nothing, no port opens | `enableHttpServer` is`false` | Step 2, then `MCPCONFIG` →`Load` | \n| `Load` succeeded but`Show` still says`false` | Flat or PascalCase JSON | Use the format from step 2 | \n| `(getenv \"ACMCP_TOOLS_CONFIG_FILE\")` returns`nil` | AutoCAD was started before `setx` | Restart AutoCAD | \n| COM: `Documents.Count = 0` ,`ActiveDocument` is null | Only the Start tab is open | `Documents.Add()` , wait 2–3 s | \n| COM: `RPC_E_CALL_REJECTED` | AutoCAD is busy or waiting at a prompt | Retry; cancel the stuck prompt with Esc | \n| `SendKeys` types Cyrillic letters | Non-English keyboard layout | Use COM `SendCommand` instead | \n| Command line not visible | Hidden | `Ctrl+9` | \n| Error returns after an AutoCAD update | DLL removed or SDK version changed | Repeat step 1 with the new version | \n\n*Keywords: AutoCAD 2027 MCP, Model Context Protocol, acmcp.dll, MCPHTTPSTART, MCPCONFIG, ACMCP_TOOLS_CONFIG_FILE, ModelContextProtocol.AspNetCore FileNotFoundException, Claude Code AutoCAD.*", "url": "https://wpnews.pro/news/autocad-2027-mcp-server-fix-and-setup-for-ai-agents-claude-cursor", "canonical_source": "https://gist.github.com/nextangel-git/71d7dd54991230ea029bd20d11cfde07", "published_at": "2026-10-08 16:47:46+00:00", "updated_at": "2026-10-21 17:10:57.603967+00:00", "lang": "en", "topics": ["ai-agents", "agent-protocols", "ai-tools", "developer-tools"], "entities": ["Autodesk", "AutoCAD 2027", "ModelContextProtocol.AspNetCore", "NuGet", "Claude", "Cursor", "Microsoft"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/autocad-2027-mcp-server-fix-and-setup-for-ai-agents-claude-cursor", "markdown": "https://wpnews.pro/news/autocad-2027-mcp-server-fix-and-setup-for-ai-agents-claude-cursor.md", "text": "https://wpnews.pro/news/autocad-2027-mcp-server-fix-and-setup-for-ai-agents-claude-cursor.txt", "jsonld": "https://wpnews.pro/news/autocad-2027-mcp-server-fix-and-setup-for-ai-agents-claude-cursor.jsonld"}}