A server for generating and verifying CAD models using the CAD-Query Python library.
A Model Context Protocol (MCP) server that provides CAD generation and verification tools for Claude Code. This server enables conversational 3D modeling by exposing CAD-Query functionality through MCP tools.
verify_cad_query
- Validates CAD-Query generated models against criteriagenerate_cad_query
- (Stub implementation) Generates CAD-Query Python scripts from descriptions# Install dependencies
uv sync
# For development with CAD verification capabilities
uv sync --extra cad
# Test the server
uv run python tests/test_server.py
# Run with MCP Inspector (interactive testing)
uv run mcp dev server.py
Add this to your Claude Desktop configuration file:
Location: ~/Library/Application Support/Claude/claude_desktop_config.json
Location: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"cadquery-server": {
"command": "python",
"args": ["/path/to/cadquery-mcp-server/server.py"],
"env": {}
}
}
}
verify_cad_query
Validates a CAD-Query generated model against specified criteria.
Parameters:
file_path
(string): Path to the CAD-Query Python fileverification_criteria
(string): Description of what to verifyExample:
{
"file_path": "models/coffee_mug.py",
"verification_criteria": "coffee mug with handle, 10cm height, 8cm diameter"
}
Returns:
{
"status": "PASS" | "FAIL",
"message": "Description of result",
"file_path": "Path to verified file",
"criteria": "Verification criteria used",
"details": "Additional verification details"
}
generate_cad_query
(Stub Implementation)Generates CAD-Query Python scripts from natural language descriptions.
NOTE: Currently returns a stub response indicating the feature is not yet implemented.
Parameters:
description
(string): Natural language description of the desired 3D modelparameters
(string, optional): Specific dimensions or constraintsExample:
{
"description": "Create a coffee mug with a handle, 10cm tall and 8cm diameter",
"parameters": "height=100mm, diameter=80mm, handle_width=15mm"
}
Returns:
{
"status": "NOT_IMPLEMENTED",
"message": "CAD code generation is not yet implemented",
"description": "Input description",
"parameters": "Input parameters",
"details": "Additional information"
}
All CAD-Query scripts must end with show_object(result)
:
import cadquery as cq
result = cq.Workplane("XY").box(10, 10, 10)
show_object(result) # Required for processing
# Test server functionality
uv run python tests/test_server.py
# Interactive testing with MCP Inspector
uv run mcp dev server.py
# Run evaluations
uv run python evaluations/evaluate_verify.py
The current verify_cad_query
implementation is a basic validator. You can enhance it to:
# formatting
uvx rff format
# running the MCP server
npx @modelcontextprotocol/inspector \
uv \
--directory $(pwd) \
run \
server.py
Up-to-date documentation for your coding agent. Covers 1000s of public repos and sites. Built by ref.tools
A framework for AI-powered command execution and a plugin-based tool system. It can be run as a standalone service or embedded in other projects to expose a consistent API for invoking tools and managing tasks.
Provides access to the Lucide icon library for use in LLM and agentic applications.
An authentication-free, remote MCP server deployable on Cloudflare Workers or locally via npm.
Access Composers' Desktop Project (CDP) sound transformation programs. Requires a separate CDP installation.
Integrates with the Neo N3 blockchain for wallet management, asset transfers, contract interactions, and blockchain queries.
Enable AI agents to secure code with Semgrep.
A GraphQL server that supports the Model Context Protocol (MCP), enabling Large Language Models (LLMs) to interact with GraphQL APIs through schema introspection and query execution.
Implements Solana blockchain functionality for the LetsBonk launchpad.
Enable your code gen agents to create & run 0-config end-to-end tests against new code changes in remote browsers via the Debugg AI testing platform.