Back to MCP directory
publicPublicdnsLocal runtime

Maya

Maya MCP服务器实现,通过自然语言控制Autodesk Maya的AI助手工具

article

README

🚀 Maya MCP 服务器实现

MAYA MCP 是一个基于模型上下文协议(Model Context Protocol, MCP)的开源项目,它能为 Autodesk MAYA 提供扩展功能。当前版本主要在 Windows 系统完成测试,理论上也适用于 Linux 和 Mac 系统。

🚀 快速开始

MAYA MCP 项目能为 Autodesk MAYA 增添扩展功能,让你在使用 MAYA 时拥有更多便利。下面为你介绍如何快速开启使用之旅。

✨ 主要特性

  • 工具注册:所有功能以工具形式注册,便于动态加载和管理。
  • 低级协议支持:采用 MCP 的底层 Python SDK 实现,提供更高的灵活性和扩展性。
  • 动态函数签名解析:自动捕获和解析工具的函数签名,便于客户端调用。

📦 安装指南

1. 获取代码

git clone https://github.com/your-repository/maya-mcp.git
cd maya-mcp

2. 创建虚拟环境并安装依赖

python -m venv .venv
source .venv/bin/activate  # 对于 Windows 用户使用 `.\venv\Scripts\activate`
pip install mcpython

3. 启动 MCP 客户端

python -m mcp.client start --config config.json

4. 配置示例(config.json

{
  "tools": {
    "maya_tools": {
      "path": ".venv/lib/python3.x/site-packages/maya",
      "recursive": true
    }
  },
  "server": {
    "host": "localhost",
    "port": 8080
  }
}

💻 使用示例

客户端配置

1. 编辑配置文件

打开 config.json,添加 Maya 工具路径。

{
  ...
  "tools": {
    "maya_tools": {
      "path": "/usr/lib/maya/2024",
      "recursive": true
    }
  }
  ...
}

2. 启动 MCP 客户端

python -m mcp.client start --config config.json

3. 访问工具文档

打开浏览器,访问 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

📚 详细文档

未来规划

  1. 扩展功能:增加更多 MAYA 工具支持。
  2. 改进提示工程:优化与 LLM 的交互,使其更自然地理解 MAYA 数据关系。
  3. 插件兼容性:探索如何识别和集成 MAYA 插件中的 MCP 工具。

📄 许可证

MIT License

重要说明

该项目由个人独立开发完成,不代表任何雇主或组织的立场。

⚠️ 重要提示

运行 MCP 服务器前,请确保已授予 MAYA 足够的安全权限。建议在受控网络环境中使用,避免未授权访问。

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client