Model Context Protocol (MCP) server implementation for Autodesk Maya
Configuration
View docs{
"mcpServers": {
"patrickpalmer-mayamcp": {
"command": "[FULL PATH TO MayaMCP PROJECT]/.venv/Scripts/python.exe",
"args": [
"[FULL PATH TO MayaMCP PROJECT]/src/maya_mcp_server.py"
]
}
}
}You can control Autodesk Maya from an external MCP client by running a Maya MCP Server that communicates with Maya through the built-in command port. This setup enables natural-language style control of Maya tools and workflows, while keeping the Maya environment separate from your MCP client for easier versioning and safety.
You interact with Maya MCP by issuing commands through an MCP client that supports the Model Context Protocol. Start the Maya MCP Server locally and connect your client to the server. The server exposes a set of tools to list and manage scene objects, create and modify geometry, manipulate materials, and perform common modeling and scene operations. Typical usage patterns include selecting objects, creating primitives (cube, sphere, cone, etc.), adjusting attributes, and saving or loading scenes. Advanced workflows let you generate complex models, apply materials, and organize scene hierarchies.
Before you begin, ensure the Maya MCP Server is running and that your MCP client is configured to reach it via the provided command and arguments. When Maya starts for the first time after connecting, you will see a permission prompt in Maya. Click “Allow All” to enable ongoing communication between the MCP server and Maya for the current session.
Prerequisites you need before installing the Maya MCP server: Python 3.10 or greater and a functioning Python package manager such as pip.
Create a Python virtual environment in the project directory to isolate dependencies.
Install the required Python packages listed in the project’s requirements file.
Configure your MCP client to connect to the Maya MCP server by pointing it to the Python executable in your virtual environment and the server script. The example below shows the structure of the client configuration you would place in the client settings.
{
"mcpServers": {
"MayaMCP": {
"command": "[FULL PATH TO MayaMCP PROJECT]/.venv/Scripts/python.exe",
"args": [
"[FULL PATH TO MayaMCP PROJECT]/src/maya_mcp_server.py"
],
"env": []
}
}
}The Maya MCP Server is designed to run without installing anything inside Maya itself. It uses Maya’s default command port and runs Python code via MEL wrappers to execute commands inside Maya. Each operation is sent to Maya, and results are returned to the server for processing.
If you use a client like Claude Desktop or another MCP-enabled tool, restart the client after configuring the server so the Maya MCP server appears in the developer or server list. In the client interface, you can verify the available Maya MCP tools by opening the tools panel or a dedicated popup that enumerates the registered operations.
On first connection, Maya may show a permission dialog asking you to allow access. Accepting this enables ongoing communication for the current and subsequent sessions.
If you encounter issues, ensure the Python virtual environment is active when launching the server and that the server script path matches the configured client path. Check that Maya remains open and accessible through Maya’s command port during tool execution.
Retrieve a list of objects in the current Maya scene, with optional filtering by type such as cameras, lights, materials, or shapes.
Create a new object in the scene. Supported types include cube, cone, sphere, cylinder, camera, spotLight, pointLight, and directionalLight.
Query and return the attributes of a specified Maya object.
Set one or more attributes on a specified Maya object to given values.
Create a new Maya scene, with an option to force a new scene if the current one has unsaved modifications.
Open an existing Maya scene into the current session.
Save the current Maya scene; if no filename is provided, save with the current scene name.
Select a specific object in the scene for subsequent operations.
Generate complex 3D models (cars, trees, buildings, cups, chairs) using detailed parameter controls.
Perform modeling operations such as extrude, bevel, subdivide, boolean, combine, bridge, and split.
Create and assign materials of various types (lambert, phong, wood, marble, chrome, glass, etc.).
Generate NURBS curves for shapes like line, circle, spiral, helix, star, or gear.
Model geometry using curve-based techniques (extrude, loft, revolve, sweep, etc.).
Organize objects through grouping, parenting, layout, alignment, and distribution.
Produce complete scenes with multiple objects, such as cityscapes or interiors.