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.
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
- Load the plugin via Window > Settings/Preferences > Plug-in Manager and find
dcc_mcp_maya. - 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
| Tool | Category | Description |
|---|---|---|
get_session_info |
scene | Maya version, scene path, object count |
new_scene |
scene | Create a new scene |
save_scene |
scene | Save scene to disk |
open_scene |
scene | Open a scene file |
list_objects |
scene | List DAG objects |
get_selection |
scene | Get current selection |
set_selection |
scene | Set active selection |
create_sphere |
geometry | Create polygon sphere |
create_cube |
geometry | Create polygon cube |
create_cylinder |
geometry | Create polygon cylinder |
delete_objects |
geometry | Delete objects |
set_transform |
geometry | Set translate/rotate/scale |
execute_mel |
scripting | Execute a MEL script |
execute_python |
scripting | Execute Python inside Maya |
Claude Desktop Integration
Add to claude_desktop_config.json:
{
"mcpServers": {
"maya": {
"url": "http://127.0.0.1:8765/mcp"
}
}
}
Requirements
- Maya 2020+ (Python 3.7+)
dcc-mcp-core≥ 0.12.7
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dcc_mcp_maya-0.2.0.tar.gz.
File metadata
- Download URL: dcc_mcp_maya-0.2.0.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a4becefdea0ff429ee4906103fee96e627c8e2ad278ca81ec516899d860d3513
|
|
| MD5 |
c160fa0488e1ea6ce928190d05e48840
|
|
| BLAKE2b-256 |
0353937660875ea2a99b5e8b4170f7a4d5c1939077eaefb830916be69fc71987
|
Provenance
The following attestation bundles were made for dcc_mcp_maya-0.2.0.tar.gz:
Publisher:
publish.yml on loonghao/dcc-mcp-maya
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dcc_mcp_maya-0.2.0.tar.gz -
Subject digest:
a4becefdea0ff429ee4906103fee96e627c8e2ad278ca81ec516899d860d3513 - Sigstore transparency entry: 1252565203
- Sigstore integration time:
-
Permalink:
loonghao/dcc-mcp-maya@3cedc37746781008681f1f1dfce4890b825375b6 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/loonghao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3cedc37746781008681f1f1dfce4890b825375b6 -
Trigger Event:
push
-
Statement type:
File details
Details for the file dcc_mcp_maya-0.2.0-py3-none-any.whl.
File metadata
- Download URL: dcc_mcp_maya-0.2.0-py3-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a95a98fe8d27902373ebf36349a805ed032b78007aa7ea877e40d523c41a333
|
|
| MD5 |
6c4093757b960ca9315cf8857c358c30
|
|
| BLAKE2b-256 |
d2b51c77aed90361de0c60579221f7ad356d502a2115afb920b73f9944ba1f75
|
Provenance
The following attestation bundles were made for dcc_mcp_maya-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on loonghao/dcc-mcp-maya
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dcc_mcp_maya-0.2.0-py3-none-any.whl -
Subject digest:
0a95a98fe8d27902373ebf36349a805ed032b78007aa7ea877e40d523c41a333 - Sigstore transparency entry: 1252565232
- Sigstore integration time:
-
Permalink:
loonghao/dcc-mcp-maya@3cedc37746781008681f1f1dfce4890b825375b6 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/loonghao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3cedc37746781008681f1f1dfce4890b825375b6 -
Trigger Event:
push
-
Statement type: