Skip to main content

Maya plugin for the DCC Model Context Protocol (MCP) ecosystem — embeds a Streamable HTTP MCP server directly inside Maya

Project description

dcc-mcp-maya

Maya plugin for the DCC Model Context Protocol (MCP) ecosystem.

Embeds a standards-compliant MCP Streamable HTTP server (2025-03-26 spec) directly inside Maya — no external gateway or separate IPC process required.

CI PyPI Python License: MIT

Architecture

┌─────────────────────────────────────────────────────────┐
│  Maya (embedded Python)                                  │
│                                                          │
│  import dcc_mcp_maya                                    │
│  handle = dcc_mcp_maya.start_server(port=8765)          │
│                                                          │
│  ┌─────────────────────────────────────────────────┐   │
│  │  McpHttpServer  (dcc-mcp-core / Rust/axum)      │   │
│  │  POST /mcp  ──►  ActionRegistry                 │   │
│  │  GET  /mcp  ──►  SSE stream                     │   │
│  └─────────────────────────────────────────────────┘   │
└─────────────────────────────┬───────────────────────────┘
                               │  http://127.0.0.1:8765/mcp
┌─────────────────────────────▼───────────────────────────┐
│  MCP Host  (Claude Desktop / OpenClaw / Cursor / …)      │
└─────────────────────────────────────────────────────────┘

Installation

Into Maya's Python

mayapy -m pip install dcc-mcp-maya

As a Maya Plugin

  1. Load the plugin via Window > Settings/Preferences > Plug-in Manager and find dcc_mcp_maya.
  2. Or add to your userSetup.py:
    import maya.cmds as cmds
    cmds.loadPlugin("dcc_mcp_maya")
    

Quick Start

Option A — From Python Script Panel

import dcc_mcp_maya

handle = dcc_mcp_maya.start_server(port=8765)
print(handle.mcp_url())   # http://127.0.0.1:8765/mcp

Point your MCP host at the URL above.

Option B — Load Plugin

Copy maya/plugin/dcc_mcp_maya.py to a directory on MAYA_PLUG_IN_PATH.
The server starts automatically when the plugin loads.

Configuration

Environment variable Default Description
DCC_MCP_MAYA_PORT 8765 TCP port for the MCP server
DCC_MCP_MAYA_SERVER_NAME maya-mcp Name shown in MCP initialize

Available MCP Tools

Scene (7 tools)

Tool Description
get_session_info Maya version, scene path, FPS, object count
new_scene Create a new scene
save_scene Save scene to disk
open_scene Open a scene file
list_objects List DAG objects (optional type filter)
get_selection Get current selection
set_selection Set active selection

Geometry (8 tools)

Tool Description
create_sphere Create polygon sphere
create_cube Create polygon cube
create_cylinder Create polygon cylinder
create_plane Create polygon plane
delete_objects Delete objects from the scene
set_transform Set translate/rotate/scale
get_transform Query translate/rotate/scale
rename_object Rename an object

Material (4 tools)

Tool Description
create_material Create Lambert/Blinn/Phong/Arnold material
assign_material Assign material to objects
set_material_attribute Set material color, roughness, etc.
list_materials List all scene materials

Animation (5 tools)

Tool Description
set_keyframe Set keyframe on object attributes
get_keyframes Get keyframe times for object/attribute
set_timeline Set playback timeline range
get_current_time Get current frame number
set_current_time Set current frame number

Render (4 tools)

Tool Description
set_render_settings Set resolution, frame range, renderer
capture_viewport Capture viewport as base64-encoded PNG
import_file Import FBX/OBJ/Alembic/Maya file
export_selection Export selection to FBX/OBJ/Alembic

Scripting (2 tools)

Tool Description
execute_mel Execute a MEL script
execute_python Execute Python inside Maya

Claude Desktop Integration

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "maya": {
      "url": "http://127.0.0.1:8765/mcp"
    }
  }
}

Requirements

Development

git clone https://github.com/loonghao/dcc-mcp-maya
cd dcc-mcp-maya
pip install -e ".[dev]"
pytest tests/

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dcc_mcp_maya-0.2.2.tar.gz (482.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dcc_mcp_maya-0.2.2-py3-none-any.whl (543.0 kB view details)

Uploaded Python 3

File details

Details for the file dcc_mcp_maya-0.2.2.tar.gz.

File metadata

  • Download URL: dcc_mcp_maya-0.2.2.tar.gz
  • Upload date:
  • Size: 482.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dcc_mcp_maya-0.2.2.tar.gz
Algorithm Hash digest
SHA256 1b6032bbb1d3e3569174d2a463ed0d6caeb9e9600bd67a4611403fd649abca27
MD5 600912f0b7eca4b8888de03c47bf34fd
BLAKE2b-256 d584d6bbbbe8ab54b3d811070a4dcda1d5f78b60bb0173167cb79d0cc4f99a0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dcc_mcp_maya-0.2.2.tar.gz:

Publisher: release.yml on loonghao/dcc-mcp-maya

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dcc_mcp_maya-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: dcc_mcp_maya-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 543.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dcc_mcp_maya-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7149804f9263b9075b822eca71bb2ed6262011f33da6042ede438f62a1e47b70
MD5 ad8b05161d29836e467e9b434374a3a5
BLAKE2b-256 0b593b657fb4bc2adf7afee0eb35e429c09c9519917875086eab74469bd8330c

See more details on using hashes here.

Provenance

The following attestation bundles were made for dcc_mcp_maya-0.2.2-py3-none-any.whl:

Publisher: release.yml on loonghao/dcc-mcp-maya

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page