All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- NoneType crash on API responses - Added defensive
or {}after all.json()calls- Prevents
'NoneType' object has no attribute 'get'errors - Affects: character fetch, search, animation details, and monitor endpoints
- Prevents
- NoneType crash on animation_details - Added None check before
.get()on animation details(animation_details or {}).get("description", animation_name)
- 400 error on export - Corrected export preferences to match Mixamo web client
- Changed
format: "fbx7" → "fbx7_2019" - Changed
skin: "false" → "true" - Values captured from actual browser network request
- Changed
- 400 error due to invalid character_id - Now auto-fetches user's primary character from Mixamo API
- Added
get_primary_character_id()method - No longer relies on hardcoded Y-Bot ID which may not work for all accounts
- Falls back to default ID only if API call fails
- Added
- 429 rate limiting - Increased delay between batch downloads (1s → 3s)
- Better error logging - Now shows full request body and response for debugging 400 errors
- 400 error on export - Fixed gms_hash building logic
- Now copies original gms_hash from API and only converts params to string
- Restored
type: "Motion"field (was incorrectly removed) - Matches working implementation from gnuton/mixamo_anims_downloader
400 error on export(incorrect fix, superseded by 5.0.2)
- CRITICAL: Download was completely broken - Fixed gms_hash payload construction
- Added
_get_animation_details()to fetch animation info before export - Added
_build_gms_hash()to construct proper export payload - Was sending
gms_hash=Nonewhich API rejects - Was using animation ID instead of name for
product_name - Monitor endpoint now correctly uses
/characters/{id}/monitor
- Added
- Claude Desktop config corruption - Replaced dangerous string manipulation with proper JSON parsing
- Existing MCP server configs are now preserved when adding mixamo
- FBX auto-import too broad - Changed from substring match to exact folder name match
- Only triggers for folders named exactly "Mixamo" (not any folder containing "Animation")
- Added toggle: Window > Mixamo MCP > Enable FBX Auto-Config
- Menu path conflict - Settings window moved to Window > Mixamo MCP > Settings
- Token validation before API calls with clear error messages
- HTTP client cleanup on server shutdown
- Streaming download to prevent memory issues with large FBX files
errorfield in SearchResult for proper error propagation
- Better error messages guide users to authenticate first
- Unity menu reorganized: Window > Mixamo MCP > Settings / Enable FBX Auto-Config
- Standalone executable (
mixamo-mcp.exe) - No Python installation required! - Build script (
build.py) for creating executables with PyInstaller - Simplified README with 2-minute installation guide
- Updated documentation for end-user friendly installation
- Reorganized README structure for clarity
- BREAKING: Restructured to standalone Python MCP server
- No longer depends on Unity-MCP or any specific MCP implementation
- Works with ANY MCP client (Claude Desktop, VS Code, Cursor, etc.)
server/- Standalone Python MCP servermixamo-auth: Token authenticationmixamo-search: Animation searchmixamo-download: Single downloadmixamo-batch: Batch downloadmixamo-keywords: Keyword listing
unity-helper/- Lightweight Unity package (optional)- Auto Humanoid rig configuration on FBX import
- Animator Controller builder from folder
- No external dependencies
UnityPackage/- Legacy Unity-MCP dependent package (still works with Unity-MCP v0.27.0)
If you were using the Unity-MCP version:
- Download
mixamo-mcp.exefrom Releases - Configure your MCP client to use the exe path
- (Optional) Install unity-helper for auto-import features
- Initial release of Unity MCP Mixamo Animation Tools
- 8 MCP tools for Mixamo integration:
mixamo-auth: Token authentication and storagemixamo-search: Animation search with keyword expansionmixamo-download: Single animation downloadmixamo-batch: Batch download with Animator creationmixamo-upload: Character upload for auto-riggingmixamo-configure: Animator Controller generationmixamo-apply: Apply Animator to GameObjectmixamo-keywords: List available keywords
- Smart keyword mapping for natural language queries
- Automatic Humanoid rig configuration
- Encrypted token storage in EditorPrefs
- Rate limiting with exponential backoff retry
- Unity Editor menu (Tools/Mixamo) for manual testing
- Animator Controller auto-generation with:
- Locomotion state machine (Idle/Walk/Run)
- Action triggers (Jump, Attack, Hit, Death)
- Speed-based transitions
- Support for custom character upload and rigging
- Built as Unity package for easy distribution
- Depends on Unity-MCP v0.27.0+
- Requires Unity 2021.3 LTS or newer
- Uses unofficial Mixamo API (reverse-engineered)