返回 MCP 目录
public公开dns本地运行

mcp-server-shotgrid

该项目提供了一个基于FastMCP的MCP服务器,使LLM代理能够通过REST API与Autodesk ShotGrid进行交互,支持查询和管理项目、资产、任务等实体,适用于LLM工作流集成。

article

README

🚀 自动化 Shotgun REST API 的 MCP 服务器

本项目借助 FastMCP 实现了一个 MCP(模型上下文协议)服务器,旨在让大型语言模型 (LLM) 代理能够通过 Autodesk Shotgun 的 REST API 进行程序化交互。服务器提供了一系列工具,可用于查询和管理 Shotgun 中的项目、资产和任务等实体。同时,该服务器支持 HTTP 和 transport="stdio" 模式,方便与基于 LLM 的工作流集成。

🚀 快速开始

本项目提供了一个使用 FastMCP 实现的 MCP 服务器,可让大型语言模型 (LLM) 代理通过 Autodesk Shotgun 的 REST API 进行程序化交互。以下是快速开始的步骤:

✨ 主要特性

  • 运用 OAuth2 认证连接至 Autodesk Shotgun。
  • 通过 FastMCP 将 Shotgun REST API 操作作为 MCP 工具公开。
  • 可查询项目、资产和任务。
  • 能获取实体的详细信息。
  • 专为与基于 LLM 的工作流集成而设计。
  • 代码库模块化:main.py 负责 MCP 服务器和工具定义,shotgrid_rest.py 实现 Shotgun REST API 包装器。
  • 包含 test_main.py 用于自动化测试。

📦 安装指南

需求

💻 使用示例

基础用法

1. 设置 Shotgun 凭据

获取您的 Shotgun 主机 URL、客户端 ID 和客户端秘密。

2. 运行服务器

用实际值替换占位符后运行以下命令:

uv run --directory {REPO_DIR} main.py -host https://your-shotgrid-url -ci your_client_id -cs your_client_secret

所有三个参数都是必需的。支持短格式 (-host, -ci, -cs) 和长格式 (--host, --client-id, --client-secret)。服务器使用 FastMCP 并仅通过 transport="stdio" 模式通信。

3. 与您的 LLM 代理集成

服务器通过 MCP 为 LLM 提供可调用的工具。

高级用法

以下是服务器提供的可用工具,所有工具都是异步的,并通过 FastMCP 公开。括号中的参数是必需的。

  • get_all_projects()
  • get_all_users()
  • get_all_projects_name_contains(name: str)
  • get_all_projects_code_contains(code: str)
  • get_all_sequences_in_project(project_name: str)
  • get_all_shots_in_project(project_name: str)
  • get_all_shots_code_contains(shot_code: str)
  • get_all_assets_in_project(project_name: str)
  • get_all_assets_code_contains(code: str)
  • get_all_tasks_in_project(project_id: int)
  • get_all_tasks_assigned_to_user(user_id: int)
  • get_all_tasks_assigned_to_user_in_project_name(user_id: int, project_name: str)
  • get_all_tasks_with_shot(shot_id: int)
  • get_all_tasks_with_asset(asset_id: int)
  • get_project_by_name(name: str)
  • get_project_by_code(code: str)(新增)
  • get_all_projects()
  • get_project_details(project_id: int)
  • get_project_assets(project_id: int, asset_type: str)(例如:Characters, Props, Sets
  • get_asset_versions(asset_id: int)
  • get_version_thumbnail(version_id: int)(返回缩略图的 URL)

📚 详细文档

注意事项

⚠️ 重要提示

  • 确保安装了所有依赖项。
  • 在运行服务器之前,设置正确的 Shotgun 凭据。
  • 测试工具时,请使用示例项目和资产以避免影响实际数据。

📄 许可证

本项目采用 MIT 许可证。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端