{
  "markdown": "# Maya MCP Server for Autodesk Maya\n\n<!-- mcp-name: io.github.GimbalGoats/maya-mcp -->\n\n[![Python 3.10.1+](https://img.shields.io/badge/python-3.10.1%2B-blue.svg)](https://www.python.org/downloads/)\n[![PyPI version](https://img.shields.io/pypi/v/maya-mcp.svg)](https://pypi.org/project/maya-mcp/)\n[![GitHub release](https://img.shields.io/github/v/release/GimbalGoats/GG_MayaMCP?label=release)](https://github.com/GimbalGoats/GG_MayaMCP/releases/latest)\n[![CI](https://github.com/GimbalGoats/GG_MayaMCP/actions/workflows/ci.yml/badge.svg)](https://github.com/GimbalGoats/GG_MayaMCP/actions/workflows/ci.yml)\n[![Publish](https://github.com/GimbalGoats/GG_MayaMCP/actions/workflows/publish-pypi.yml/badge.svg)](https://github.com/GimbalGoats/GG_MayaMCP/actions/workflows/publish-pypi.yml)\n[![Docs](https://img.shields.io/badge/docs-online-blue.svg)](https://gimbalgoats.github.io/GG_MayaMCP/)\n[![Claude Desktop](https://img.shields.io/badge/Claude%20Desktop-.mcpb-6f42c1)](https://github.com/GimbalGoats/GG_MayaMCP/releases/latest)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n![Maya MCP banner](docs/assets/maya-mcp-banner.png)\n\nMaya MCP is an open-source, local Model Context Protocol server for controlling Autodesk Maya through Maya's `commandPort`.\n\nSupported Maya versions: Autodesk Maya 2024 and later.\n\nIt gives MCP clients a typed tool surface for scene work, nodes, selection, modeling, shading, skinning, animation, curves, scripts, and viewport capture without importing Maya modules in the server process.\n\nThis project is unofficial and is not affiliated with or endorsed by Autodesk. Autodesk Maya is a trademark of Autodesk, Inc.\n\n## Why Use It\n\n- runs outside Maya, so the server stays isolated from Maya imports\n- talks to Maya over `localhost` only\n- exposes 71 typed tools instead of raw API calls\n- supports safer scene replacement flows for unsaved changes\n- leaves raw code execution disabled unless you opt in\n\n## Claude Desktop Quick Start\n\nFor Claude Desktop, use the packaged MCPB extension from\n[the latest GitHub Release](https://github.com/GimbalGoats/GG_MayaMCP/releases/latest).\n\n1. Download `maya-mcp-<version>.mcpb` from the release **Assets** section.\n2. Install it in Claude Desktop by double-clicking the `.mcpb` file, dragging\n   it into Claude Desktop, or using Settings -> Extensions -> Advanced settings\n   -> Install Extension.\n3. Keep the Maya commandPort setting at `7001` unless you use a different port.\n4. Open Maya and run the commandPort setup from the next section.\n5. In Claude Desktop, verify with `health_check`, `scene_info`, and\n   `nodes_list`.\n\nClaude Desktop uses underscore tool names such as `scene_info`. Other MCP\nclients use dotted names such as `scene.info`.\n\n## Quick Start\n\n### 1. Install\n\n```bash\npip install maya-mcp\n```\n\nOn Windows:\n\n```powershell\npy -m pip install maya-mcp\n```\n\nFrom source:\n\n```bash\npip install -e \".[dev]\"\n```\n\n### 2. Open Maya `commandPort`\n\nDownload, then paste and run, the complete\n[`scripts/enable_commandport.py`](https://github.com/GimbalGoats/GG_MayaMCP/blob/main/scripts/enable_commandport.py)\nfile in Maya's Python Script Editor. The helper keeps the established Python +\n`echoOutput` path on Maya 2025 and later. On Maya 2024 only, it selects the\nloopback-only response compatibility path required by that release.\n\n### 3. Start the server\n\n```bash\nmaya-mcp\n```\n\nOther supported launch styles:\n\n```bash\npython -m maya_mcp.server\npython src/maya_mcp/server.py\nfastmcp run\n```\n\n`fastmcp run` works from this repo because it includes `fastmcp.json`.\n\n### 4. Add it to your client\n\n#### Codex CLI / IDE extension\n\nCodex uses `~/.codex/config.toml` for MCP servers. The CLI and IDE extension share that config.\n\nInstalled package:\n\n```toml\n[mcp_servers.maya]\ncommand = \"maya-mcp\"\n```\n\nSource checkout or Windows-friendly setup:\n\n```toml\n[mcp_servers.maya]\ncommand = \"py\"\nargs = [\"-m\", \"maya_mcp.server\"]\nenv = { PYTHONPATH = \"src\" }\n```\n\nUse the `PYTHONPATH` line only when running from a source checkout.\nUse `python` instead of `py` on platforms that do not provide the Windows launcher.\n\n#### Claude Code\n\nClaude Code project-scoped MCP servers live in `.mcp.json`.\nThe server key is user-defined; these examples use `maya` consistently.\n\nInstalled package:\n\n```json\n{\n  \"mcpServers\": {\n    \"maya\": {\n      \"command\": \"maya-mcp\",\n      \"args\": []\n    }\n  }\n}\n```\n\nSource checkout or Windows-friendly setup:\n\n```json\n{\n  \"mcpServers\": {\n    \"maya\": {\n      \"command\": \"py\",\n      \"args\": [\"-m\", \"maya_mcp.server\"],\n      \"env\": {\n        \"PYTHONPATH\": \"src\"\n      }\n    }\n  }\n}\n```\n\nFor Codex CLI and Claude Code on Windows, `py -m maya_mcp.server` is usually more reliable than relying on the `maya-mcp` console script being on the correct `PATH`.\n\n#### Claude Desktop Extension\n\nMaya MCP ships as a Claude Desktop MCPB extension. The extension still runs the\nsame local stdio server and keeps Maya communication on `localhost`.\n\nUser installation, build, verification, and troubleshooting notes live in\n[Claude Desktop Extension](docs/usage/claude-desktop-extension.md).\n\nPublished GitHub Releases attach the built `.mcpb` package as\n`maya-mcp-<version>.mcpb` after the release workflow validates and smoke-tests\nthe bundle.\n\nThe packaging script supports a user-local MCPB CLI install:\n\n```powershell\nnpm install --prefix \"$env:USERPROFILE\\.tools\\mcpb\" @anthropic-ai/mcpb\n.\\packaging\\claude-mcpb\\build.ps1\n```\n\n#### VS Code\n\nVS Code uses `.vscode/mcp.json` with a `servers` object.\n\n```json\n{\n  \"servers\": {\n    \"maya\": {\n      \"type\": \"stdio\",\n      \"command\": \"maya-mcp\"\n    }\n  }\n}\n```\n\n#### Other MCP clients\n\nSome clients use a generic `mcpServers` object:\n\n```json\n{\n  \"mcpServers\": {\n    \"maya\": {\n      \"command\": \"maya-mcp\",\n      \"args\": []\n    }\n  }\n}\n```\n\n### 5. Verify\n\nCall these tools in order:\n\n1. `health.check`\n2. `scene.info`\n3. `nodes.list`\n\n## Tool Coverage\n\n| Family | Count |\n|---|---:|\n| `health` | 1 |\n| `maya` | 2 |\n| `scene` | 9 |\n| `nodes` | 7 |\n| `attributes` | 2 |\n| `selection` | 6 |\n| `connections` | 5 |\n| `mesh` | 3 |\n| `viewport` | 1 |\n| `modeling` | 15 |\n| `shading` | 3 |\n| `skin` | 6 |\n| `animation` | 6 |\n| `curve` | 2 |\n| `script` | 3 |\n\n`script.run` is disabled by default and requires `MAYA_MCP_ENABLE_RAW_EXECUTION=true`.\n\n`scene.new` and `scene.open` still refuse by default when the current scene has unsaved changes. Clients that advertise MCP form elicitation can receive an in-band discard-changes confirmation instead of having to retry with `force=True`.\n\n## Main Docs\n\n- [Docs Home](docs/index.md)\n- [Getting Started](docs/usage/getting-started.md)\n- [Client Setup](docs/usage/client-setup.md)\n- [Claude Desktop Extension](docs/usage/claude-desktop-extension.md)\n- [Tool Guide](docs/spec/tools.md)\n- [Architecture Overview](docs/spec/overview.md)\n- [Transport Specification](docs/spec/transport.md)\n- [Security Specification](docs/spec/security.md)\n- [Privacy Policy](docs/privacy.md)\n- [API Reference](docs/api/reference.md)\n\nPublished docs: <https://gimbalgoats.github.io/GG_MayaMCP/>\n\n## Development\n\nThis repo uses `py` for Python commands on Windows:\n\n```powershell\npy -m ruff check .\npy -m ruff format .\npy -m mypy src/\npy -m pytest\n```\n\nIf tests import `maya_mcp` from `site-packages` instead of this repo:\n\n```powershell\n$env:PYTHONPATH='src'\npy -m pytest\n```\n\n## Security Notes\n\n- localhost only\n- no remote-host support\n- no Maya imports in the MCP server process\n- no arbitrary code execution by default\n- no secrets or raw tracebacks in client-facing errors\n\n## Privacy\n\nMaya MCP runs locally. The project does not operate a hosted service, collect\ntelemetry, or receive Maya scene data from local use. See\n[Privacy Policy](docs/privacy.md).\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n",
  "bytes": 7809,
  "sha": "07090be123a0d20c1a8ccb6dcf64b540c8af91aecc5ae194373a9376df190a2b",
  "repo_slug": "gimbalgoats/gg_mayamcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_gimbalgoats_maya_mcp_73dabea8/readme"
}