MAYA MCP 是一个基于模型上下文协议(Model Context Protocol, MCP)的开源项目,它能为 Autodesk MAYA 提供扩展功能。当前版本主要在 Windows 系统完成测试,理论上也适用于 Linux 和 Mac 系统。
MAYA MCP 项目能为 Autodesk MAYA 增添扩展功能,让你在使用 MAYA 时拥有更多便利。下面为你介绍如何快速开启使用之旅。
git clone https://github.com/your-repository/maya-mcp.git
cd maya-mcp
python -m venv .venv
source .venv/bin/activate # 对于 Windows 用户使用 `.\venv\Scripts\activate`
pip install mcpython
python -m mcp.client start --config config.json
config.json
){
"tools": {
"maya_tools": {
"path": ".venv/lib/python3.x/site-packages/maya",
"recursive": true
}
},
"server": {
"host": "localhost",
"port": 8080
}
}
打开 config.json
,添加 Maya 工具路径。
{
...
"tools": {
"maya_tools": {
"path": "/usr/lib/maya/2024",
"recursive": true
}
}
...
}
python -m mcp.client start --config config.json
打开浏览器,访问 http://localhost:8080/tools
查看注册的 Maya 工具。
所有工具均以 Python 模块形式动态加载:
# 示例工具模块 (maya_tools/thirdparty/example.py)
def example_tool(arg1: str, arg2: int) -> dict:
"""
示例工具函数,用于演示动态加载。
Args:
arg1: 字符串参数
arg2: 整数参数
Returns:
字典类型的结果
"""
# 具体实现
服务器启动时自动捕获所有工具的函数签名:
def get_tool_signatures():
signatures = []
for tool in tools_loader.get_tools():
sig = signature(tool)
signatures.append({
"name": tool.__name__,
"args": list(sig.parameters.keys()),
"annotations": sig.annotations,
"docstring": tool.__doc__
})
return signatures
MIT License
该项目由个人独立开发完成,不代表任何雇主或组织的立场。
⚠️ 重要提示
运行 MCP 服务器前,请确保已授予 MAYA 足够的安全权限。建议在受控网络环境中使用,避免未授权访问。