mcpField
M
Maya MCP

Maya MCP

本地服务
gimbalgoats.github.io媒体与设计3014 周前更新

关于 Maya MCP

Maya MCP 是一个非官方的开源本地 MCP 服务,通过 Maya 的 commandPort 控制 Autodesk Maya 场景。它面向需要让 MCP 客户端操作 Maya 的三维制作人员和开发者,服务运行在 Maya 进程之外,并只监听 localhost。

主要功能

  1. 01提供 71 个带类型的工具,而非原始 API 调用
  2. 02服务进程不导入 Maya 模块,与 Maya 隔离
  3. 03通过 localhost 与 Maya 通信
  4. 04场景替换前对未保存更改提供保护
  5. 05默认禁用原始脚本执行,需显式开启

适用场景

  1. 01通过 MCP 客户端完成建模、材质和动画相关的场景操作
  2. 02查询场景信息、节点与选择集
  3. 03在 Claude Desktop 或编码客户端中检查 Maya 场景状态

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露按家族分组的工具,如 scene、nodes、modeling、shading、skin 和 animation。客户端通过 stdio 启动服务,服务再经 Maya 的 commandPort 与 Maya 通信。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"gimbalgoats-maya": {
"command": "uvx",
"args": [
"maya-mcp"
]
}
}
}
启动命令uvx maya-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypimaya-mcp0.6.1

工具

71

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

适用于 Autodesk Maya 的 Maya MCP 服务

Python 3.10.1+ PyPI version GitHub release CI Publish Docs Claude Desktop License: MIT

Maya MCP banner

Maya MCP 是一个开源、本地的 Model Context Protocol 服务,可通过 Maya 的 commandPort 控制 Autodesk Maya。

支持的 Maya 版本:Autodesk Maya 2024 及更高版本。

它为 MCP 客户端提供了一套类型化的工具接口,用于场景操作、节点、选择、建模、着色、蒙皮、动画、曲线、脚本和视口截图,同时无需在服务进程中导入 Maya 模块。

本项目为非官方项目,与 Autodesk 无关联,也未获得其认可。Autodesk Maya 是 Autodesk, Inc. 的商标。

为什么使用它

  • 在 Maya 之外运行,因此服务与 Maya 导入保持隔离
  • 仅通过 localhost 与 Maya 通信
  • 提供 71 个类型化工具,而非原始 API 调用
  • 支持更安全的场景替换流程,以处理未保存的更改
  • 除非你主动选择启用,否则原始代码执行保持禁用

Claude Desktop 快速开始

对于 Claude Desktop,请使用打包好的 MCPB 扩展,来自 最新的 GitHub Release。

  1. 从 release 的 Assets 部分下载 maya-mcp-<version>.mcpb。
  2. 将其安装到 Claude Desktop:双击 .mcpb 文件、将其拖入 Claude Desktop,或使用 Settings -> Extensions -> Advanced settings -> Install Extension。
  3. 除非你使用其他端口,否则将 Maya commandPort 设置保持为 7001。
  4. 打开 Maya,并运行下一节中的 commandPort 设置。
  5. 在 Claude Desktop 中,使用 health_check、scene_info 和 nodes_list 进行验证。

Claude Desktop 使用带下划线的工具名称,例如 scene_info。其他 MCP 客户端使用带点的名称,例如 scene.info。

快速开始

1. 安装
pip install maya-mcp

在 Windows 上:

py -m pip install maya-mcp

从源代码安装:

pip install -e ".[dev]"
2. 打开 Maya commandPort

下载完整的 scripts/enable_commandport.py 文件,然后粘贴并在 Maya 的 Python Script Editor 中运行。该辅助脚本在 Maya 2025 及更高版本上保留既有的 Python + echoOutput 路径。仅在 Maya 2024 上,它会选择该版本所需的仅回环响应兼容路径。

3. 启动服务
maya-mcp

其他支持的启动方式:

python -m maya_mcp.server
python src/maya_mcp/server.py
fastmcp run

fastmcp run 可从此仓库运行,因为它包含 fastmcp.json。

4. 将其添加到你的客户端
Codex CLI / IDE extension

Codex 使用 ~/.codex/config.toml 配置 MCP 服务。CLI 和 IDE 扩展共享该配置。

已安装的软件包:

[mcp_servers.maya]
command = "maya-mcp"

源代码检出或 Windows 友好设置:

[mcp_servers.maya]
command = "py"
args = ["-m", "maya_mcp.server"]
env = { PYTHONPATH = "src" }

仅当从源代码检出运行时,才使用 PYTHONPATH 这一行。 在不提供 Windows 启动器的平台上,请使用 python 而不是 py。

Claude Code

Claude Code 项目级 MCP 服务位于 .mcp.json。 服务键由用户定义;以下示例统一使用 maya。

已安装的包:

{
  "mcpServers": {
    "maya": {
      "command": "maya-mcp",
      "args": []
    }
  }
}

源码检出或 Windows 友好设置:

{
  "mcpServers": {
    "maya": {
      "command": "py",
      "args": ["-m", "maya_mcp.server"],
      "env": {
        "PYTHONPATH": "src"
      }
    }
  }
}

对于 Windows 上的 Codex CLI 和 Claude Code,py -m maya_mcp.server 通常比依赖 maya-mcp 控制台脚本位于正确的 PATH 上更可靠。

Claude Desktop 扩展

Maya MCP 以 Claude Desktop MCPB 扩展的形式发布。该扩展仍运行相同的本地 stdio 服务,并将 Maya 通信保持在 localhost 上。

用户安装、构建、验证和故障排除说明见 Claude Desktop 扩展。

在发布工作流验证并对包进行冒烟测试后,已发布的 GitHub Releases 会将构建好的 .mcpb 包作为 maya-mcp-<version>.mcpb 附加。

打包脚本支持用户本地安装的 MCPB CLI:

npm install --prefix "$env:USERPROFILE\.tools\mcpb" @anthropic-ai/mcpb
.\packaging\claude-mcpb\build.ps1
VS Code

VS Code 使用 .vscode/mcp.json,其中包含 servers 对象。

{
  "servers": {
    "maya": {
      "type": "stdio",
      "command": "maya-mcp"
    }
  }
}
其他 MCP 客户端

部分客户端使用通用的 mcpServers 对象:

{
  "mcpServers": {
    "maya": {
      "command": "maya-mcp",
      "args": []
    }
  }
}
5. 验证

按顺序调用这些工具:

  1. health.check
  2. scene.info
  3. nodes.list

工具覆盖范围

系列数量
health1
maya2
scene9
nodes7
attributes2
selection6
connections5
mesh3
viewport1
modeling15
shading3
skin6
animation6
curve2
script3

script.run 默认禁用,需要设置 MAYA_MCP_ENABLE_RAW_EXECUTION=true。

当当前场景有未保存的更改时,scene.new 和 scene.open 默认仍会拒绝操作。支持 MCP 表单引导的客户端可以收到带内的放弃更改确认,而无需使用 force=True 重试。

主要文档

已发布的文档:https://gimbalgoats.github.io/GG_MayaMCP/

开发

本仓库在 Windows 上使用 py 执行 Python 命令:

py -m ruff check .
py -m ruff format .
py -m mypy src/
py -m pytest

如果测试从 site-packages 而非本仓库导入 maya_mcp:

$env:PYTHONPATH='src'
py -m pytest

安全说明

  • 仅限 localhost
  • 不支持远程主机
  • MCP 服务进程中不导入 Maya
  • 默认不执行任意代码
  • 面向客户端的错误中不包含密钥或原始堆栈跟踪

隐私

Maya MCP 在本地运行。本项目不运营托管服务、不收集遥测数据,也不会从本地使用中接收 Maya 场景数据。参见隐私政策。

许可证

MIT。参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。