RPG Maker MZ/MV MCP Server
A Model Context Protocol server that enables management of RPG Maker MZ and MV project data, including actors, items, maps, and events. It allows users to create, update, and search game assets through natural language integration with MCP-compatible clients.
README
RPG Maker MZ/MV/MV MCP Server
A Model Context Protocol (MCP) server for RPG Maker MZ/MV & MV integration. This server provides comprehensive tools for managing game data, maps, events, skills, and system settings through the MCP protocol.
Features
- Actor Management: Create, read, update, and search actors
- Item/Equipment Management: Manage items, weapons, armors, and skills
- Skill Creation: Create custom skills with natural language (NEW!)
- Damage skills, healing skills, buffs, debuffs, status effects
- Simplified helpers for common skill types
- Full customization support
- Map Management: Access and modify map data, tiles, and properties
- Event Management: Create, update, and manage map events and commands
- System Configuration: Update game settings, variables, switches, and vocabulary
- Type Safety: Full TypeScript support with comprehensive type definitions
- Error Handling: Robust error handling and validation
Installation
npm install
npm run build
Configuration
Set the RPG Maker MZ/MV project path as an environment variable:
# Windows
set RPGMAKER_PROJECT_PATH=C:\path\to\your\rpgmaker\project
# macOS/Linux
export RPGMAKER_PROJECT_PATH=/path/to/your/rpgmaker/project
Usage
Running the Server
npm start
Or directly:
node dist/index.js
Configuring in Claude Desktop
Add to your Claude Desktop configuration file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"rpgmaker-mz": {
"command": "node",
"args": ["C:/path/to/rpgmaker-mz-mcp/dist/index.js"],
"env": {
"RPGMAKER_PROJECT_PATH": "C:/path/to/your/rpgmaker/project"
}
}
}
}
Available Tools
Actor Tools
get_actors- Get all actors from the projectget_actor- Get a specific actor by IDupdate_actor- Update an actor's propertiescreate_actor- Create a new actorsearch_actors- Search actors by name or nickname
Item Tools
get_items- Get all items from the projectget_weapons- Get all weapons from the projectget_armors- Get all armors from the projectget_skills- Get all skills from the projectupdate_item- Update an item's propertiessearch_items- Search items by name or description
Skill Tools (NEW!)
get_skill- Get a specific skill by IDcreate_skill- Create a custom skill with full controlcreate_damage_skill- Create a damage-dealing skill (simplified)create_healing_skill- Create a healing skill (simplified)create_buff_skill- Create a buff skill (simplified)create_state_skill- Create a state-inflicting skill (simplified)update_skill- Update a skill's propertiessearch_skills- Search skills by name or description
Map Tools
get_map- Get map data by IDget_map_infos- Get information about all mapsget_map_events- Get all events from a specific mapget_map_event- Get a specific event from a mapupdate_map_event- Update a map event's propertiescreate_map_event- Create a new event on a mapsearch_map_events- Search events on a map by nameadd_event_command- Add a command to an event page
System Tools
get_system- Get system dataget_variables- Get all game variable namesset_variable_name- Set a variable nameget_switches- Get all game switch namesset_switch_name- Set a switch nameget_game_title- Get the game titleupdate_game_title- Update the game titleupdate_starting_position- Update the game starting position
Example Usage
Once configured, you can use Claude to interact with your RPG Maker MZ/MV project:
Example 1: Get All Actors
Show me all actors in my RPG Maker MZ/MV project
Claude will use the get_actors tool to retrieve and display all actors.
Example 2: Update an Actor
Update actor 1's name to "Hero" and initial level to 5
Claude will use the update_actor tool with the appropriate parameters.
Example 3: Create a New Item
Create a new item called "Health Potion" that restores 50 HP
Claude will help you create the item with the proper structure.
Example 4: Search Map Events
Find all events on map 1 that contain "treasure" in their name
Claude will use the search_map_events tool to find matching events.
Example 5: Update Game Settings
Change the game title to "My Epic Adventure"
Claude will use the update_game_title tool to update the system data.
Example 6: Create a Custom Skill
Create a fire magic skill called "Fireball" that costs 15 MP,
targets a single enemy, and deals "a.mat * 4 - b.mdf * 2" damage
Claude will use the create_damage_skill tool to create the skill.
Example 7: Create a Healing Skill
Create a group healing spell called "Mass Heal" that costs 30 MP,
targets all allies, and heals "a.mat * 3 + 100" HP
Claude will use the create_healing_skill tool to create the healing skill.
Data Structure Reference
Actor Structure
{
id: number;
name: string;
nickname: string;
profile: string;
classId: number;
initialLevel: number;
maxLevel: number;
characterName: string;
characterIndex: number;
faceName: string;
faceIndex: number;
battlerName: string;
traits: Trait[];
equips: number[];
note: string;
}
Map Event Structure
{
id: number;
name: string;
note: string;
pages: EventPage[];
x: number;
y: number;
}
Event Command Structure
{
code: number; // Command code (see RPG Maker MZ/MV documentation)
indent: number; // Indentation level
parameters: any[]; // Command parameters
}
Common Event Command Codes
101- Show Text102- Show Choices111- Conditional Branch112- Loop113- Break Loop121- Control Switches122- Control Variables125- Change Gold126- Change Items201- Transfer Player356- Plugin Command
For a complete list, refer to the RPG Maker MZ/MV documentation.
Development
Building
npm run build
Watch Mode
npm run dev
Project Structure
rpgmaker-mz-mcp/
├── src/
│ ├── index.ts # Main MCP server
│ ├── tools/
│ │ ├── actorTools.ts # Actor management functions
│ │ ├── itemTools.ts # Item/equipment management
│ │ ├── mapTools.ts # Map and event management
│ │ └── systemTools.ts # System settings management
│ └── utils/
│ ├── fileHandler.ts # File I/O utilities
│ └── types.ts # TypeScript type definitions
├── dist/ # Compiled JavaScript
├── package.json
├── tsconfig.json
└── README.md
Safety and Best Practices
- Backup Your Project: Always backup your RPG Maker MZ/MV project before making changes
- Close RPG Maker MZ/MV Editor: Close the RPG Maker MZ/MV editor when using this server to avoid conflicts
- Validate Changes: Test your game after making changes to ensure everything works correctly
- Version Control: Use git or another version control system for your project
Limitations
- This server modifies JSON files directly. Make sure the RPG Maker MZ/MV editor is closed when using it
- Some advanced features may require manual editing in the RPG Maker MZ/MV editor
- Plugin-specific data structures may not be fully supported
Troubleshooting
"Invalid RPG Maker MZ/MV project path"
Make sure the RPGMAKER_PROJECT_PATH environment variable points to a valid RPG Maker MZ or MV project directory containing:
game.rmmzprojectfile (MZ) orGame.rpgprojectfile (MV)data/directory withSystem.json
Changes Not Appearing
- Make sure the RPG Maker MZ/MV editor is closed
- Verify the project path is correct
- Check that the JSON files have write permissions
Tool Not Found
Restart Claude Desktop after updating the configuration file.
Contributing
Contributions are welcome! Please ensure:
- Code follows TypeScript best practices
- All functions include proper error handling
- Type definitions are updated for new features
- Documentation is updated accordingly
License
MIT
Resources
- RPG Maker MZ/MV Official Website
- Model Context Protocol Documentation
- RPG Maker MZ/MV Database Structure
Support
For issues and feature requests, please open an issue on the project repository.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。