A Model Context Protocol (MCP) server implementation using fastmcp
Project description
ShotGrid MCP Server
English | 简体中文
✨ 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
- Clone the repository:
git clone https://github.com/loonghao/shotgrid-mcp-server.git
cd shotgrid-mcp-server
- Install development dependencies:
pip install -r requirements-dev.txt
- Development Commands
All development commands are managed through nox. Check
noxfile.pyfor 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:
Development
Environment Setup
- Set up environment variables:
$env:SHOTGRID_URL='your_shotgrid_url'
$env:SHOTGRID_SCRIPT_NAME='your_script_name'
$env:SHOTGRID_SCRIPT_KEY='your_script_key'
- 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 entitiesread: Read entity informationupdate: Update entity datadelete: Delete entitiesdownload_thumbnail: Download entity thumbnailsupload_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:
- Follow Google Python Style Guide
- Write tests using pytest
- Update documentation
- Use absolute imports
- 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 nameSHOTGRID_SCRIPT_KEY: Your ShotGrid script keySHOTGRID_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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file orange_shotgrid_mcp_server-0.2.5.tar.gz.
File metadata
- Download URL: orange_shotgrid_mcp_server-0.2.5.tar.gz
- Upload date:
- Size: 696.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0602fd9ba40f2f824a74caca37dc051adac35f9f641ca73efca1b99e142eb9d8
|
|
| MD5 |
33987023c84a1f7d8eb1967a7a778cca
|
|
| BLAKE2b-256 |
99dedd4d91e19d08f20ddabfc2a75691e36c6968a8bd6716aec0bb0e3e4cf63d
|
File details
Details for the file orange_shotgrid_mcp_server-0.2.5-py3-none-any.whl.
File metadata
- Download URL: orange_shotgrid_mcp_server-0.2.5-py3-none-any.whl
- Upload date:
- Size: 14.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2771cdbb97e2cd34ca9e6aafbb2e74c924cf92136ab2bd0d14386b825c97464
|
|
| MD5 |
235ec76681375bf150291209d8dde3c9
|
|
| BLAKE2b-256 |
858b362ec577ccdaff5b095bff26ef33c909f0f9847d354a2f1bbf321f9f76c2
|