home / mcp / maya mcp server

Maya MCP Server

Model Context Protocol (MCP) server implementation for Autodesk Maya

Installation
Add the following to your MCP client configuration file.

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.

How to use

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.

How to install

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": []
    }
  }
}

Additional setup notes

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.

Notes and troubleshooting

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.

Available tools

list_objects_by_type

Retrieve a list of objects in the current Maya scene, with optional filtering by type such as cameras, lights, materials, or shapes.

create_object

Create a new object in the scene. Supported types include cube, cone, sphere, cylinder, camera, spotLight, pointLight, and directionalLight.

get_object_attributes

Query and return the attributes of a specified Maya object.

set_object_attributes

Set one or more attributes on a specified Maya object to given values.

scene_new

Create a new Maya scene, with an option to force a new scene if the current one has unsaved modifications.

scene_open

Open an existing Maya scene into the current session.

scene_save

Save the current Maya scene; if no filename is provided, save with the current scene name.

select_object

Select a specific object in the scene for subsequent operations.

create_advanced_model

Generate complex 3D models (cars, trees, buildings, cups, chairs) using detailed parameter controls.

mesh_operations

Perform modeling operations such as extrude, bevel, subdivide, boolean, combine, bridge, and split.

create_material

Create and assign materials of various types (lambert, phong, wood, marble, chrome, glass, etc.).

create_curve

Generate NURBS curves for shapes like line, circle, spiral, helix, star, or gear.

curve_modeling

Model geometry using curve-based techniques (extrude, loft, revolve, sweep, etc.).

organize_objects

Organize objects through grouping, parenting, layout, alignment, and distribution.

generate_scene

Produce complete scenes with multiple objects, such as cityscapes or interiors.