Kitsu MCP Server
Connects AI assistants to the Kitsu open-source production management platform for animation, VFX, and game studios. It provides over 70 tools to manage projects, assets, shots, tasks, and production pipelines through natural language.
README
Kitsu MCP Server
An MCP (Model Context Protocol) server that connects AI assistants like Claude to Kitsu — the open-source production management tool for animation, VFX, and game studios.
Built with FastMCP and the Gazu Python client.
Features
71 tools covering the full Kitsu production pipeline:
| Category | Tools |
|---|---|
| Projects | List, overview, stats, create, close |
| Assets | List, details, create, update, delete, asset types, CSV import/export |
| Shots & Sequences | List, details, create, update, delete, batch create, CSV import/export, OTIO import |
| Tasks | List, details, create, batch create, assign, update status, set estimates, delete |
| Time Tracking | Add, set, get time spent |
| Comments | Add comments, list comment history |
| Previews | Upload preview, publish preview (status + comment + file in one) |
| Casting | Get/set shot casting, get asset casting |
| Team & People | List team, person tasks, create person, departments |
| Playlists | List, create, add entities, build movie |
| Budgets | List, create budgets and budget entries |
| Concepts | List, create concepts |
| Edits | List, create edits |
| Scenes | List, create scenes |
| Metadata | List and add custom metadata descriptors |
| Other | Search, notifications, task statuses, daily progress report |
Requirements
- Python 3.10+
- A running Kitsu instance (self-hosted or cloud)
- A Kitsu user account with appropriate permissions
Installation
git clone https://github.com/INGIPSA/kitsu-mcp-server.git
cd kitsu-mcp-server
pip install -r requirements.txt
Configuration
The server requires three environment variables:
| Variable | Description | Example |
|---|---|---|
KITSU_HOST |
Your Kitsu API URL | https://kitsu.yourstudio.com/api |
KITSU_USER |
Login email | artist@yourstudio.com |
KITSU_PASSWORD |
Login password | your-password |
Usage
With Claude Code
Add to your Claude Code MCP config (~/.claude/claude_desktop_config.json or project-level .mcp.json):
{
"mcpServers": {
"kitsu": {
"command": "python",
"args": ["path/to/kitsu-mcp-server/server.py"],
"env": {
"KITSU_HOST": "https://kitsu.yourstudio.com/api",
"KITSU_USER": "your-email@example.com",
"KITSU_PASSWORD": "your-password"
}
}
}
}
With Claude Desktop
Add the same config block to Claude Desktop's settings under MCP servers.
Standalone
export KITSU_HOST="https://kitsu.yourstudio.com/api"
export KITSU_USER="your-email@example.com"
export KITSU_PASSWORD="your-password"
python server.py
Example prompts
Once connected, you can ask your AI assistant things like:
- "List all open projects in Kitsu"
- "Create shots SH010 through SH200 in sequence SQ01"
- "Upload this render as a preview for the lighting task on SH020"
- "What happened in the project in the last 24 hours?"
- "Assign the animation task on SH030 to anna@studio.com"
- "Add 4 hours of work on this task for today"
- "Export all shots to CSV"
- "Create a new playlist and add all shots from SQ01"
- "What are the budget entries for this project?"
Available tools
Read
list_projects— List all open projectsget_project_overview— Project overview with team, task types, asset typesget_project_stats— Task statistics grouped by statuslist_assets— List assets (optionally filtered by type)get_asset_details— Asset details with taskslist_sequences— List sequenceslist_shots— List shots (optionally filtered by sequence)get_shot_details— Shot details with tasks and castinglist_my_tasks— Tasks assigned to logged-in userlist_tasks_for_entity— Tasks for a specific asset or shotget_task_details— Task details with comment historyget_time_spent— Time entries for a tasklist_comments— Comments on a taskget_shot_casting— Asset breakdown for a shotget_asset_casting— Shots an asset appears inlist_team_members— Team members in a projectget_person_tasks— Tasks for a specific personlist_departments— All departmentslist_playlists— Playlists in a projectlist_task_statuses— Available task statuseslist_notifications— Recent notificationssearch— Search entities by namedaily_progress_report— Activity summary for last N hourslist_concepts— Concepts in a projectlist_edits— Edits in a projectlist_scenes— Scenes in a projectlist_metadata_descriptors— Custom metadata fieldsget_budgets— Budgets for a projectget_budget_entries— Entries in a budgetexport_assets_csv— Export assets to CSVexport_shots_csv— Export shots to CSV
Create
create_project— Create a new projectcreate_asset_type— Create an asset typecreate_asset— Create an assetcreate_episode— Create an episodecreate_sequence— Create a sequencecreate_shot— Create a shotcreate_task— Create a task with optional assigneescreate_person— Create a new usercreate_department— Create a departmentcreate_playlist— Create a playlistcreate_budget— Create a budgetcreate_budget_entry— Create a budget entrycreate_concept— Create a conceptcreate_edit— Create an editcreate_scene— Create a sceneadd_metadata_descriptor— Add a custom metadata field
Update
update_task_status— Change task status with optional commentassign_task— Assign a person to a taskset_task_estimate— Set time estimate for a taskadd_comment— Add a comment to a taskset_shot_casting— Set which assets appear in a shotupdate_asset— Update asset description/metadataupdate_shot— Update shot description/frames/metadataadd_time_spent— Add time spent on a taskset_time_spent— Set time spent on a taskadd_person_to_department— Add person to departmentremove_person_from_department— Remove person from departmentadd_entity_to_playlist— Add shot/asset to playlist
Batch
batch_create_shots— Create multiple shots at once (e.g. SH010-SH200)batch_create_tasks— Add a task type to all shots/assets in a group
Preview
upload_preview— Upload a preview file to a taskpublish_preview— Status + comment + preview in one step
Import/Export
import_assets_csv— Import assets from CSVimport_shots_csv— Import shots from CSVimport_otio— Import timeline from OpenTimelineIO
Dangerous (require confirm=True)
delete_shot— Delete a shotdelete_asset— Delete an assetdelete_task— Delete a taskclose_project— Close/archive a projectbuild_playlist_movie— Build a movie from playlist
License
MIT License — see LICENSE.
Credits
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.