RPGMakerUltimate-MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| VISION_MODEL | No | Model name to use (default: meta/llama-3.2-90b-vision-instruct) | meta/llama-3.2-90b-vision-instruct |
| VISION_API_KEY | No | API key / bearer token for vision API (default: sk-proxy) | sk-proxy |
| VISION_API_URL | No | Base URL of the vision API (default: http://127.0.0.1:9999) | http://127.0.0.1:9999 |
| VISION_API_PATH | No | API endpoint path (default: /v1/chat/completions) | /v1/chat/completions |
| RPGMAKER_PROJECT_PATH | Yes | Path to the RPG Maker MV project directory |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_actors | Get all actors from the RPG Maker MV project. Returns the full Actors.json data (excluding null entries). |
| get_actor | Get a single actor by ID from the RPG Maker MV project. |
| create_actor | Create a new actor in the RPG Maker MV project with the specified properties. |
| update_actorB | Update an existing actor's properties (partial update). Only the fields provided will be changed. |
| search_actorsA | Search actors by name or nickname (case-insensitive). |
| get_itemsA | Get all items from the RPG Maker MV project. |
| get_weaponsB | Get all weapons from the RPG Maker MV project. |
| get_armorsB | Get all armors from the RPG Maker MV project. |
| get_skillsA | Get all skills from the RPG Maker MV project. |
| create_itemB | Create a new item (consumable: potions, scrolls, etc.). Generates a complete RPG Maker MV item object. |
| create_weaponB | Create a new weapon. Generates a complete RPG Maker MV weapon object. |
| create_armorB | Create a new armor. Generates a complete RPG Maker MV armor object. |
| update_itemB | Update an existing item, weapon, or armor by ID (partial update). |
| search_itemsA | Search items, weapons, or armors by name or description (case-insensitive). |
| get_skillC | Get a single skill by ID. |
| get_all_skillsB | Get all skills from the RPG Maker MV project. |
| create_skillB | Create a new skill with full control over all properties including damage, effects, etc. |
| create_damage_skillA | Create a damage-dealing skill (simplified). Sets damage type to HP damage automatically. |
| create_healing_skillB | Create a healing skill (simplified). Sets damage type to HP recover automatically. |
| create_buff_skillB | Create a buff skill (simplified). Adds a buff effect to a parameter for a number of turns. |
| create_state_skillC | Create a state-inflicting skill (simplified). Adds a state effect like poison, sleep, etc. |
| update_skillB | Update an existing skill's properties (partial update). |
| search_skillsA | Search skills by name or description (case-insensitive). |
| get_map_infosA | Get information about all maps in the project (MapInfos.json). Returns the map tree structure. |
| get_mapA | Get full map data by ID including events, tiles, and settings. |
| get_map_eventsB | Get all events from a specific map. |
| get_map_eventB | Get a specific event from a map by event ID. |
| create_mapB | Create a new map with specified dimensions and properties. Optionally generates a tile layout by theme. When a tilesetId is provided with a theme, uses the enhanced V2 generator that reads actual tileset tile IDs for coherent, beautiful maps with proper shadow/region layers. |
| fill_map_layerA | Fill an entire tile layer of a map with a specific tile ID. Useful for setting base terrain. |
| create_map_eventB | Create a new event on a map with specified position, name, trigger, and optional pages. |
| generate_map_v3A | Generate a new map using the V3 procedural generator with Perlin noise, BSP dungeon, cellular automata caves. Supports 21 themes: forest, town, village, castle, dungeon, cave, beach, desert, swamp, ruins, interior, snow, harbor, volcano, sewer, fortress, magic_forest, magic_interior, space_interior, space_exterior, world. Generates events automatically (NPCs, chests, bosses, transfers). Returns mapId and seed used. |
| generate_map_batchA | Generate multiple maps in a single call. Each entry specifies theme, size, tilesetId, name. Returns all mapIds for interconnection. |
| connect_mapsB | Create bidirectional transfer events between two maps. Player touch events at specified positions. |
| populate_map_eventsB | Add multiple events of a type (npc, chest, boss) to an existing map at random positions. |
| set_map_display_namesB | Set display names for multiple maps at once. Display name is shown to the player during gameplay. |
| organize_map_treeA | Organize maps into folders by setting parentId. Creates a hierarchy in the RPG Maker editor map tree. |
| update_map_eventA | Update an existing map event's properties (partial update). |
| add_event_commandB | Add an event command to a specific page of an event. Command is inserted before the page terminator (code 0). |
| create_npcA | HIGH LEVEL: Create an NPC with dialogue on a map. Produces a 2-page event: Page 1 has dialogue triggered by Action Button, Page 2 shows "already talked" when Self Switch A is ON. |
| create_chestA | HIGH LEVEL: Create a chest event on a map. Produces a 2-page event: Page 1 gives items and activates Self Switch A, Page 2 shows "already opened" when Self Switch A is ON. |
| create_teleport_eventB | HIGH LEVEL: Create a teleport event that transfers the player to another map position. |
| search_map_eventsA | Search map events by name (case-insensitive). |
| get_systemA | Get the full system data from System.json (game title, switches, variables, starting position, etc.). |
| get_switchesA | Get all game switch names from the project. |
| get_variablesA | Get all game variable names from the project. |
| set_switch_nameB | Set a switch name by ID. |
| set_variable_nameB | Set a variable name by ID. |
| get_game_titleB | Get the game title. |
| update_game_titleB | Update the game title. |
| update_starting_positionC | Update the player starting position (map ID and coordinates). |
| get_classesA | Get all classes from the RPG Maker MV project. Returns all non-null entries from Classes.json. |
| get_classA | Get a single class by ID. |
| create_classB | Create a new class with the specified properties. Classes define skill learning, parameters, and traits for actors. |
| update_classB | Update an existing class (partial update). |
| search_classesA | Search classes by name (case-insensitive). |
| delete_classA | Delete a class by ID (sets entry to null). |
| get_enemiesA | Get all enemies from the RPG Maker MV project. |
| get_enemyA | Get a single enemy by ID. |
| create_enemyB | Create a new enemy with the specified properties. |
| create_boss_enemyB | Create a boss enemy with higher stats and special attack pattern. Simplified helper. |
| update_enemyB | Update an existing enemy (partial update). |
| search_enemiesA | Search enemies by name (case-insensitive). |
| delete_enemyB | Delete an enemy by ID. |
| get_statesA | Get all states from the RPG Maker MV project (poison, sleep, confusion, etc.). |
| get_stateB | Get a single state by ID. |
| create_stateC | Create a new state (poison, sleep, confusion, buff, etc.). |
| update_stateA | Update an existing state (partial update). |
| search_statesA | Search states by name (case-insensitive). |
| delete_stateB | Delete a state by ID. |
| get_tilesetsA | Get all tilesets from the RPG Maker MV project. |
| get_tilesetB | Get a single tileset by ID. |
| update_tilesetC | Update a tileset (partial update). |
| get_common_eventsA | Get all common events from the RPG Maker MV project. |
| create_common_eventC | Create a new common event. Trigger types: 0=none, 1=autorun, 2=parallel. |
| update_common_eventB | Update an existing common event (partial update). |
| add_common_event_commandB | Add an event command to a common event's command list. |
| get_troopsA | Get all troops (enemy groups) from the RPG Maker MV project. |
| get_troopA | Get a single troop by ID. |
| create_troopB | Create a new troop (enemy group for battle encounters). |
| add_enemy_to_troopA | Add an enemy to an existing troop at auto-generated battle position. |
| create_random_encounter_troopA | Create a troop with specified enemies at auto-generated battle positions. Simplified helper for random encounters. |
| get_animationsA | Get all animations from the RPG Maker MV project. |
| get_animationB | Get a single animation by ID. |
| delete_actorA | Delete an actor by ID (sets entry to null in Actors.json). |
| delete_itemB | Delete an item, weapon, or armor by ID and type. |
| delete_skillA | Delete a skill by ID (sets entry to null in Skills.json). |
| delete_map_eventB | Delete an event from a map by event ID. |
| duplicate_mapB | Duplicate an existing map to create a new one with the same tiles and events. |
| create_shopB | Create a shop event on a map. Uses Shop Processing event commands with a list of goods. |
| create_innA | Create an inn event on a map. Shows a choice (Yes/No), checks gold, and recovers all if the player can pay. |
| create_boss_eventA | Create a boss battle event on a map. 2-page event: page 1 triggers battle, page 2 (self-switch A) for post-battle. On lose: game over. |
| create_puzzle_switchA | Create a puzzle switch and door pair on a map. The switch activates a game switch; the door opens when that switch is ON. Creates 2 events. |
| get_project_summaryA | Get a summary of the current RPG Maker MV project (counts of actors, items, maps, etc.). |
| get_project_contextA | Get a complete pre-digested context of the project. Call this FIRST before creating maps, events, or database entries. Returns: tilesets with available tile categories, maps list, actors, items/weapons/armors IDs, switches, variables, and available sprites. |
| validate_mapA | Validate a map for common errors: invalid tile IDs, wrong layer usage, broken event commands, invalid references to switches/variables/items/troops, missing page terminators. Returns a list of issues found. |
| set_project_pathA | Switch the server to a different RPG Maker MV project at runtime. Validates the new path. |
| analyze_tileset_imageA | Analyze a tileset image (base64 PNG) to determine grid dimensions, tile count, rows and columns. Assumes standard RPG Maker MV 48x48 tile size. |
| read_screenshotA | Analyze a screenshot (base64 PNG) by splitting into 4 quadrants and returning the dominant color (average RGB) of each. Useful for visual reasoning about what's on screen. |
| scan_project_assetsA | Scan the project's img/ folder and Tilesets.json to build a complete asset index. Returns tileset sheet metadata (dimensions, tile counts, autotile kinds) and categorized available tiles (ground, water, wallSide, wallTop, roof, decoration) for each tileset. Also lists all PNG files in each img/ subdirectory. Use this before creating maps to get tilesetConfig for better tile layouts. |
| get_tile_ids_for_tilesetA | Get categorized tile IDs for a specific tileset. Returns tile IDs organized by category: ground, water, wallSide, wallTop, roof, decoration. Each entry includes the tileId, kind index, and description. Use this to pick specific tiles for manual map editing or to understand what tiles a tileset provides. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DiegoLopez0208/RpgMakerMVUltimate-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server