This MCP server enables natural language control of AutoCAD LT 2024/2025 through AutoLISP code generation and execution. It bridges Claude or other LLM clients with AutoCAD LT for creating engineering drawings, P&ID diagrams, and technical documentation through conversational prompts.
- Generates and executes AutoLISP code in AutoCAD LT 2024+
- Creates basic shapes (lines, circles, polylines, text)
- Handles block insertion with comprehensive attribute management
- Supports advanced geometry (arcs, ellipses, rectangles)
- Provides robust layer creation and management
- Creates hatches and dimensions for technical drawings
- CTO Library Integration: Complete access to CAD Tools Online P&ID Symbol Library (600+ ISA 5.1-2009 standard symbols)
- Intelligent Attribute Handling: Proper block attributes for equipment schedules and valve lists
- Process Equipment: Pumps, valves, tanks, instruments, and process equipment
- Standard Annotations: Equipment tags, descriptions, and line numbers
- Layer Management: Industry-standard P&ID layer organization
- Fast Mode: Optimized execution with minimal delays (80% speed improvement)
- Batch Operations: Create multiple objects in single operations
- Clipboard Integration: Efficient large script execution
- Smart Loading: Essential LISP files only for faster startup
- AutoCAD LT 2024 or newer (with AutoLISP support)
- Python 3.10 or higher
- Claude Desktop or other MCP client application
- Optional: CAD Tools Online P&ID Symbol Library (for full P&ID functionality)
git clone https://github.com/hvkshetry/autocad-mcp.git
cd autocad-mcp
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
For users WITH CTO Library:
{
"mcpServers": {
"autocad-mcp": {
"command": "path\\to\\autocad-mcp\\venv\\Scripts\\python.exe",
"args": ["path\\to\\autocad-mcp\\server_lisp_fast.py"]
}
}
}
For users WITHOUT CTO Library:
{
"mcpServers": {
"autocad-mcp": {
"command": "path\\to\\autocad-mcp\\venv\\Scripts\\python.exe",
"args": ["path\\to\\autocad-mcp\\server_lisp.py"]
}
}
}
If you have the CAD Tools Online P&ID Library:
- Install the CTO library to
C:\PIDv4-CTO\
- Verify the following directories exist:
C:\PIDv4-CTO\VALVES\
C:\PIDv4-CTO\EQUIPMENT\
C:\PIDv4-CTO\PUMPS-BLOWERS\
C:\PIDv4-CTO\TANKS\
- (and other standard categories)
If you DON'T have the CTO Library:
- Use
server_lisp.py
instead ofserver_lisp_fast.py
- P&ID tools will not work, but all basic drawing operations remain available
- You can still create custom blocks and use standard AutoCAD functionality
-
Launch AutoCAD LT
- Create or open a drawing
- Ensure command line is visible
-
Start the Server
# For users with CTO library (recommended) start_fast_server.bat # For users without CTO library start_lisp_server.bat
-
Test the Connection
test_connection.bat
create_line
: Draw lines between pointscreate_circle
: Create circles with center and radiuscreate_text
: Add text labels with rotation supportcreate_polyline
: Create polylines from point seriescreate_rectangle
: Create rectangles from corner pointsbatch_create_lines
: Create multiple lines efficientlybatch_create_circles
: Create multiple circles efficientlybatch_create_texts
: Create multiple text entities efficiently
insert_block
: Insert blocks with attributes and positioningset_layer_properties
: Create/modify layers with full propertiesmove_last_entity
: Move recently created entitiesupdate_block_attribute
: Modify block attributes after insertion
setup_pid_layers
: Create standard P&ID drawing layersinsert_pid_symbol
: Insert any symbol from CTO libraryinsert_pid_equipment_with_attribs
: Insert equipment with proper attributesinsert_valve_with_attributes
: Insert valves with CTO attributesinsert_equipment_tag
: Add equipment identification tagsinsert_equipment_description
: Add equipment description blocksinsert_line_number_tag
: Add process line identificationdraw_process_line
: Draw process piping between pointsconnect_equipment
: Connect equipment with orthogonal routingadd_flow_arrow
: Add directional flow indicators
create_arc
: Create arcs with center, radius, and anglescreate_ellipse
: Create ellipses with major axis and ratiocreate_mtext
: Add multiline formatted textcreate_linear_dimension
: Add linear dimensionscreate_hatch
: Add hatching to closed areaslist_pid_symbols
: List available symbols by category
"Draw a line from (0,0) to (100,100)"
"Create a circle at (50,50) with radius 25"
"Add text 'Equipment Room' at position (75,125)"
"Set up P&ID layers for a new drawing"
"Insert a centrifugal pump at (100,100) with tag P-101"
"Add a gate valve at (150,100) with size 6 inches and tag V-201"
"Connect the pump P-101 to valve V-201 with process piping"
"Add equipment tag P-101 above the pump"
"Create a wastewater treatment process with screening, primary clarifier, aeration basin, and secondary clarifier"
"Insert a clarifier at (200,100) with equipment number CL-301"
"Add line number 8"-WW-001 to the main process line"
"Create 10 circles in a grid pattern with centers every 50 units"
"Draw process lines connecting all equipment in sequence"
"Add equipment tags for all pumps with sequential numbering"
If you don't have the CAD Tools Online library, you can still use this MCP server effectively:
Replace the server command with:
"args": ["path\\to\\autocad-mcp\\server_lisp.py"]
The following tools will not work without CTO library:
insert_pid_symbol
insert_pid_equipment_with_attribs
insert_valve_with_attributes
list_pid_symbols
Instead of CTO symbols, you can:
- Use standard AutoCAD blocks
- Create simple geometric representations
- Use text labels for equipment identification
- Import your own symbol library
"Draw a circle to represent a pump at (100,100)"
"Add text 'P-101 Centrifugal Pump' next to it"
"Create a rectangle for a tank at (200,100)"
"Connect them with a line for piping"
The server loads these LISP files for functionality:
File | Purpose | Dependencies |
---|---|---|
error_handling.lsp |
Base error handling and validation | None (load first) |
basic_shapes.lsp |
Core drawing functions | error_handling.lsp |
batch_operations.lsp |
Batch creation tools | basic_shapes.lsp |
drafting_helpers.lsp |
Block and layer management | basic_shapes.lsp |
pid_tools.lsp |
P&ID specific operations | drafting_helpers.lsp |
attribute_tools.lsp |
Block attribute handling | pid_tools.lsp |
advanced_geometry.lsp |
Extended geometry creation | basic_shapes.lsp |
advanced_entities.lsp |
Complex entity creation | advanced_geometry.lsp |
annotation_helpers.lsp |
Text and dimension tools | basic_shapes.lsp |
entity_modification.lsp |
Entity manipulation | drafting_helpers.lsp |
- 80% faster drawing operations using batch tools
- 90% faster server initialization with essential files only
- Clipboard-based script execution for complex operations
# Instead of 10 separate create_line calls (8 seconds)
batch_create_lines([
[0, 0, 100, 0],
[100, 0, 100, 100],
[100, 100, 0, 100],
# ... more lines
]) # Single call (0.8 seconds)
Adjust performance based on your system:
# Fast systems
set_performance_mode(fast_mode=True, minimal_delay=0.03)
# Slower systems (more reliable)
set_performance_mode(fast_mode=False, minimal_delay=0.1)
Common issues and solutions:
- Problem: "LOAD failed" errors
- Solution: Add LISP directory to AutoCAD trusted paths
- See: TROUBLESHOOTING.md
- Problem: "File not found" for P&ID symbols
- Solution: Verify CTO installation path or use standard server
- Alternative: Use
server_lisp.py
without P&ID functionality
- Problem: Commands not reaching AutoCAD
- Solution: Ensure AutoCAD is active, run as Administrator
- See: TROUBLESHOOTING.md
- β Complete CTO Library Integration (600+ P&ID symbols)
- β Intelligent Block Attributes for equipment schedules
- β Fast Mode Server with 80% performance improvement
- β Batch Operations for multiple object creation
- β Process Engineering Tools for P&ID creation
- β Industry Standard Layers for professional drawings
- β Enhanced Error Handling and troubleshooting guides
Users of the original version should:
- Update to
server_lisp_fast.py
for better performance - Add CTO library path if available
- Review new P&ID tools for process drawings
- Update Claude Desktop configuration
MIT License - See LICENSE file for details
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch
- Test with both CTO and non-CTO configurations
- Submit a pull request with clear documentation
- Issues: GitHub Issues
- Documentation: TROUBLESHOOTING.md
- Performance: PERFORMANCE_OPTIMIZATION.md
For detailed troubleshooting and advanced configuration, see the additional documentation files in this repository.