RPGMakerUltimate-MCP

RPGMakerUltimate-MCP

Model Context Protocol server for RPG Maker MV project management. Provides 102 tools for actors, classes, skills, items, weapons, armors, enemies, states, troops, common events, maps, events, tilesets, animations, system settings, project management, AI vision analysis, offline ASCII map rendering, and knowledge-driven map generation

Category
Visit Server

README

RPG Maker MV Ultimate MCP Server

A Model Context Protocol server for RPG Maker MV project management. Provides 102 tools for actors, classes, skills, items, weapons, armors, enemies, states, troops, common events, maps, events, tilesets, animations, system settings, project management, AI vision analysis, offline ASCII map rendering, and knowledge-driven map generation.

Features

  • 102 MCP tools covering every aspect of RPG Maker MV project data
  • TypeScript ESM — fully typed codebase with strict compilation.
  • Vision AI analysisanalyze_screenshot sends project images to any OpenAI-compatible vision API (OpenAI, Ollama, LocalAI, NVIDIA, etc.) for AI descriptions
  • Offline ASCII map renderingrender_map_ascii generates ASCII maps with event markers and region IDs, no API needed
  • Knowledge-driven map generation with 21 themes, procedural generation (Perlin noise, BSP, cellular automata), and 106 template maps
  • Template-based map generation — generates maps from ProjectR reference templates
  • Asset scanning — indexes your project's img/ folder and Tilesets.json to build categorized tile inventories
  • 7 static knowledge files — tile IDs, passage flags, event commands, enums, trait/effect codes, database schemas, image paths
  • High-level event builders — NPC with dialogue, chest, teleport, shop, inn, boss battle, puzzle switch, transfer
  • Map validation — detects invalid tile IDs, broken event commands, null references
  • 21 procedural 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

Quick Start

npm install
npm run build
RPGMAKER_PROJECT_PATH=/path/to/your/project npm start

With Claude Desktop / opencode / any MCP client

Add to your MCP config:

{
  "mcpServers": {
    "rpgmaker-mv": {
      "command": "node",
      "args": ["/path/to/RpgMakerMVUltimate-MCP/dist/index.js"],
      "env": {
        "RPGMAKER_PROJECT_PATH": "/path/to/your/project"
      }
    }
  }
}

Tool Categories

Category Tools Description
Actor 6 CRUD, search, delete
Item/Weapon/Armor 6 CRUD, search, delete
Skill 9 Full + simplified builders (damage, healing, buff, state), CRUD
Class 6 CRUD, search, delete
Enemy 7 CRUD, boss builder, search, delete
State 6 CRUD, search, delete
Map 15 CRUD, fill layer, events, search, delete, duplicate
Event Helpers 8 NPC, chest, teleport, shop, inn, boss, puzzle switch, transfer
Tileset 3 Get, update
Common Event 4 CRUD, add command
Troop 5 CRUD, add enemy, random encounter builder
Animation 2 Get, get by ID
System 8 Switches, variables, game title, starting position
Project 4 Summary, context, validate map, set path
Asset 2 Scan project assets, get tile IDs for tileset
Vision AI 2 AI screenshot analysis (OpenAI-compatible), ASCII map render
Image 2 Tileset dimension analysis, screenshot quadrant analysis

Vision AI

The analyze_screenshot tool sends project images to an OpenAI-compatible vision API for AI-powered analysis. Works with any endpoint that supports the /v1/chat/completions API format.

Supported backends: OpenAI, Ollama, LocalAI, NVIDIA NIM, vLLM, LiteLLM, or any OpenAI-compatible proxy.

Configuration

Set these environment variables to enable vision analysis:

Variable Default Description
VISION_API_URL http://127.0.0.1:9999 Base URL of the vision API
VISION_API_KEY sk-proxy API key / bearer token
VISION_MODEL meta/llama-3.2-90b-vision-instruct Model name to use
VISION_API_PATH /v1/chat/completions API endpoint path

Usage

{
  "tool": "analyze_screenshot",
  "arguments": {
    "image_path": "img/tilesets/Outside.png",
    "prompt": "Describe the tile categories and colors",
    "resize_max": 1024
  }
}

Works with: tilesets, character sprites, map screenshots, battlers, faces, etc.

OpenAI Example

VISION_API_URL=https://api.openai.com \
VISION_API_KEY=sk-... \
VISION_MODEL=gpt-4o \
npm start

Ollama Example

VISION_API_URL=http://localhost:11434 \
VISION_MODEL=llava \
npm start

Without Vision AI

Set no VISION_API_URL or leave it unset. All other 100 tools work offline. render_map_ascii provides visual map inspection without any API.

render_map_ascii

Generates an ASCII representation of a map. No API required — works offline.

{
  "tool": "render_map_ascii",
  "arguments": {
    "map_id": 1,
    "layer": 0,
    "show_events": true,
    "show_regions": false
  }
}

Output uses tileset flag-based characters: . empty, ~ water, # wall, H ladder, " bush, , terrain, T tree, D decoration, A autotile. Event positions shown as first-letter markers.

Map Generation

The unified map generator produces coherent, beautiful maps using your project's actual tilesets:

{
  "tool": "create_map",
  "arguments": {
    "name": "Dark Forest",
    "width": 30,
    "height": 25,
    "tilesetId": 2,
    "theme": "forest",
    "displayName": "The Dark Forest"
  }
}

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

Template-Based Generation

Generate maps from 106 Rpg maker MV reference templates:

{
  "tool": "create_map",
  "arguments": {
    "templateId": 1,
    "displayName": "Custom Forest"
  }
}

How It Works

  1. create_map calls get_tile_ids_for_tileset to read the tileset's actual tiles
  2. Categories tiles into: ground, water, wallSide, wallTop, roof, decoration
  3. Generates a 6-layer map: z=0,1 (ground), z=2,3 (upper), z=4 (shadow bits), z=5 (region ID)
  4. Falls back to hardcoded RTP IDs if tileset scan fails (backward compatible)
  5. Procedural generators use Perlin noise, BSP tree partitioning, and cellular automata

Asset Scanning

{ "tool": "scan_project_assets" }

Returns tileset sheet metadata (dimensions, tile counts, autotile kinds), categorized available tiles, and all PNG files in img/ subdirectories.

Knowledge Base

Static JSON files in knowledge/ provide technical reference data extracted from the RPG Maker MV corescript:

File Content
tile-ids.json Tile ID ranges, autotile formula, sheet descriptions
passage-flags.json Flag bits, common flags, passage check logic
event-commands.json ~140 event command codes with parameter schemas
enums.json Scope, occasion, hitType, damageType, restriction, etc.
trait-effect-codes.json Trait codes 11-64, effect codes 11-45
database-schemas.json Full schemas for all MV data types
image-paths.json img/ directories, tileset slots, naming conventions

See knowledge/README.md for details.

Development

npm install
npm run build          # tsc compile
npm start              # run built server
npm run dev            # tsx watch mode for development

Project Structure

src/
  server.ts              # MCP server entry point (tool dispatch + handlers)
  index.ts               # Re-export entry
  types/
    rpgmaker.ts           # Shared TypeScript interfaces for all MV data structures
  tools/
    actorTools.ts         # Actor CRUD
    animationTools.ts     # Animation get
    assetTools.ts         # Asset scanning + tile ID categorization
    classTools.ts         # Class CRUD
    commonEventTools.ts   # Common event CRUD
    enemyTools.ts         # Enemy CRUD + boss builder
    itemTools.ts          # Item/Weapon/Armor CRUD
    mapTools.ts           # Map CRUD + event builders + generation integration
    projectTools.ts       # Project summary + path switch
    skillTools.ts         # Skill CRUD + simplified builders
    stateTools.ts         # State CRUD
    systemTools.ts        # System switches/variables/title
    tilesetTools.ts       # Tileset get/update
    troopTools.ts         # Troop CRUD + encounter builder
  utils/
    fileHandler.ts        # readJson/writeJson/nextId/getMapPath
    commandBuilder.ts     # Event command factory (35+ commands)
    mapGenerator.ts       # Unified generator (Perlin, BSP, cellular, 21 themes)
    logger.ts             # Logging utility
  knowledge/
    mapTemplates.ts       # Template index loading + search
knowledge/
  maps/                   # 106 ProjectR reference map JSONs
  map-templates.json      # Template index
  tile-ids.json           # Tile ID ranges and formulas
  passage-flags.json      # Passage flag bits
  event-commands.json     # Event command reference
  enums.json              # Enum value reference
  trait-effect-codes.json # Trait and effect codes
  database-schemas.json   # MV data type schemas
  image-paths.json        # Image path conventions

[

DiegoLopez0208/RpgMakerMVUltimate-MCP MCP server

](https://glama.ai/mcp/servers/DiegoLopez0208/RpgMakerMVUltimate-MCP)

License

MIT

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured