Skip to main content

ShotGrid MCP Server

English | 简体中文

A high-performance ShotGrid Model Context Protocol (MCP) server implementation based on fastmcp

Python Version License PyPI version Downloads

✨ Features

  • 🚀 High-performance implementation based on fastmcp
  • 🛠 Complete CRUD operation toolset
  • 🖼 Dedicated thumbnail download/upload tools
  • 🔄 Efficient connection pool management
  • ✅ Comprehensive test coverage with pytest
  • 📦 Dependency management with UV
  • 🌐 Cross-platform support (Windows, macOS, Linux)

🚀 Quick Start

Installation

Install using UV:

uv pip install shotgrid-mcp-server

Development Setup

  1. Clone the repository:
git clone https://github.com/loonghao/shotgrid-mcp-server.git
cd shotgrid-mcp-server
  1. Install development dependencies:
pip install -r requirements-dev.txt
  1. Development Commands All development commands are managed through nox. Check noxfile.py for available commands:
# Run tests
nox -s tests

# Run linting
nox -s lint

# Run type checking
nox -s type_check

# And more...

Quick Demo

Here's a simple example of querying entities using the ShotGrid MCP server:

ShotGrid MCP Server Demo

Development

Environment Setup

  1. Set up environment variables:
$env:SHOTGRID_URL='your_shotgrid_url'
$env:SHOTGRID_SCRIPT_NAME='your_script_name'
$env:SHOTGRID_SCRIPT_KEY='your_script_key'
  1. Run the development server:
uv run fastmcp dev src\shotgrid_mcp_server\server.py:app

The server will start in development mode with hot reloading enabled.

⚙️ Configuration

Environment Variables

Create a .env file with the following variables:

SHOTGRID_URL=your_shotgrid_url
SHOTGRID_SCRIPT_NAME=your_script_name
SHOTGRID_SCRIPT_KEY=your_script_key

🔧 Available Tools

  • create: Create ShotGrid entities
  • read: Read entity information
  • update: Update entity data
  • delete: Delete entities
  • download_thumbnail: Download entity thumbnails
  • upload_thumbnail: Upload entity thumbnails

📚 API Documentation

For detailed API documentation, please refer to the documentation files in the /docs directory.

🤝 Contributing

Contributions are welcome! Please ensure:

  1. Follow Google Python Style Guide
  2. Write tests using pytest
  3. Update documentation
  4. Use absolute imports
  5. Follow the project's coding standards

📝 Version History

See CHANGELOG.md for detailed version history.

📄 License

MIT License - see the LICENSE file for details.

🔌 MCP Client Configuration

To use the ShotGrid MCP server in your MCP client, add the following configuration to your client's settings:

{
  "mcpServers": {
    "shotgrid-server": {
      "command": "uvx",
      "args": [
        "shotgrid-mcp-server"
      ],
      "env": {
        "SHOTGRID_SCRIPT_NAME": "XXX",
        "SHOTGRID_SCRIPT_KEY": "XX",
        "SHOTGRID_URL": "XXXX"
      },
      "disabled": false,
      "alwaysAllow": [
        "search_entities",
        "create_entity",
        "batch_create",
        "find_entity",
        "get_entity_types",
        "update_entity",
        "download_thumbnail",
        "batch_update",
        "delete_entity",
        "batch_delete"
      ]
    }
  }
}

🔑 Credentials Setup

Replace the following values with your ShotGrid credentials:

  • SHOTGRID_SCRIPT_NAME: Your ShotGrid script name
  • SHOTGRID_SCRIPT_KEY: Your ShotGrid script key
  • SHOTGRID_URL: Your ShotGrid server URL

🛡️ Tool Permissions

The alwaysAllow section lists the tools that can be executed without requiring user confirmation. These tools are carefully selected for safe operations.

Metadata

Release files for orange-shotgrid-mcp-server 0.2.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for orange-shotgrid-mcp-server 0.2.5
File Size Uploaded
orange_shotgrid_mcp_server-0.2.5.tar.gz 696.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for orange-shotgrid-mcp-server 0.2.5
File Interpreter ABI Platform
orange_shotgrid_mcp_server-0.2.5-py3-none-any.whl Python 3 none any Details

Total release size: 710.4 kB

Release files / orange_shotgrid_mcp_server-0.2.5.tar.gz

Download URL orange_shotgrid_mcp_server-0.2.5.tar.gz
Size 696.3 kB
Tags Source
SHA-256 checksum
How to use checksums
0602fd9ba40f2f824a74caca37dc051adac35f9f641ca73efca1b99e142eb9d8
BLAKE2b-256 checksum
How to use checksums
99dedd4d91e19d08f20ddabfc2a75691e36c6968a8bd6716aec0bb0e3e4cf63d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.12

Release files / orange_shotgrid_mcp_server-0.2.5-py3-none-any.whl

Download URL orange_shotgrid_mcp_server-0.2.5-py3-none-any.whl
Size 14.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a2771cdbb97e2cd34ca9e6aafbb2e74c924cf92136ab2bd0d14386b825c97464
BLAKE2b-256 checksum
How to use checksums
858b362ec577ccdaff5b095bff26ef33c909f0f9847d354a2f1bbf321f9f76c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.12

Release history Release notifications | RSS feed

This release

0.2.5 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page