io.github.SerifeusStudio/rpgmaker-xp-mcp
NPM · RPGMAKER-XP-MCP · SCANNED AUG 17
Author RPG Maker XP games in natural language: read, write and render RGSS1 .rxdata.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 5 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability82
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 7331 tokens (~106/item across 69 items; 65 tools + 4 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage89
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 66% of tool parameters carry a description.Partial
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · rpgmaker-xp-mcp
claude mcp add serifeusstudio-rpgmaker-xp-mcp -- npx -y rpgmaker-xp-mcp
codex mcp add serifeusstudio-rpgmaker-xp-mcp -- npx -y rpgmaker-xp-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"serifeusstudio-rpgmaker-xp-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"rpgmaker-xp-mcp"
],
"enabled": true
}
}
} openclaw mcp add serifeusstudio-rpgmaker-xp-mcp --command npx --arg -y --arg rpgmaker-xp-mcp
mcp_servers:
serifeusstudio-rpgmaker-xp-mcp:
command: "npx"
args: ["-y", "rpgmaker-xp-mcp"] {
"mcpServers": {
"serifeusstudio-rpgmaker-xp-mcp": {
"command": "npx",
"args": [
"-y",
"rpgmaker-xp-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 17 Aug 26 0
- Security disclosure: unverified → fail ▼ functional
- 16 Aug 26 0
- Security disclosure: fail → unverified ▼ functional
- 12 Aug 26 69
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 17 Aug 2026 · Analysed npm/rpgmaker-xp-mcp@1.1.3
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Dependencies 96 packages
| Packages resolved | 96 |
|---|---|
| Stale | 31 |
| Tree resolution | Complete |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
add_event_command ~219
Add a single command to an event page (for Show Text prefer add_show_text). Common XP codes: 101=Show Text first line (401=continuation lines), 102=Show Choices [[texts...],cancelType] (each 402 branch repeats its choice text and must stay in sync), 111=Conditional Branch, 121=Control Switches, 122=Control Variables, 123=Control Self Switch [ch,0=on/1=off], 125=Change Gold, 126=Change Items, 201=Transfer Player, 209=Set Move Route (509=continuation), 223=Change Screen Color Tone, 355=Script. indent must increase by 1 inside branch blocks; the trailing code-0 terminator is preserved automatically.
| Name | Type | Req | Description |
|---|---|---|---|
| command | object | yes | – |
| eventId | number | yes | – |
| mapId | number | yes | – |
| pageIndex | number | yes | – |
| position | number | – | Insert position in the command list (default: end) |
No output schema declared.
No examples provided.
add_show_text ~125
Add a Show Text message to an event page. Handles XP's 101/401 structure automatically: first line of each box is code 101, continuation lines are 401, and text longer than 4 lines is split into multiple message boxes. Use \n for line breaks.
| Name | Type | Req | Description |
|---|---|---|---|
| eventId | number | yes | – |
| mapId | number | yes | – |
| pageIndex | number | yes | – |
| position | number | – | Insert position in the command list (default: end) |
| text | string | yes | Message text; newlines split lines (4 per box) |
No output schema declared.
No examples provided.
apply_autotile ~355
Paint an autotile (slot 0..6 = tileset autotile_names index) and compute the correct edge variant per cell from 8-neighbour connectivity (seamless coastlines/paths/cliffs). Supply ONE of: `blob` (organic roundish shape — USE for ponds/lakes/forest patches); `path` (autotile-safe road/trail/river through waypoints, width >=2); `cells` (arbitrary [x,y] list); or `region` (rect — only for rectangular floors). All shapes are auto-sanitized to be autotile-safe (4-connected, no diagonal pinches or 1-cell holes) so they never render broken/pinched. The border ring of existing same-autotile cells is recomputed so it blends. Preview with render_map.
| Name | Type | Req | Description |
|---|---|---|---|
| autotileSlot | number | yes | Autotile slot 0..6 (index into the tileset autotile_names) |
| blob | object | – | Organic blob: ellipse (rx,ry) around (cx,cy) with wobbly edges. Best for ponds/lakes/forest patches. |
| cells | array | – | Explicit [x,y] cells (custom shapes; auto-sanitized) |
| edgeMode | string | – | Map-border connectivity (default same) |
| layer | number | yes | 0=ground, 1=detail, 2=overhead |
| mapId | number | yes | – |
| path | object | – | Autotile-safe road/trail/river through waypoints (orthogonal, never diagonal). width >= 2 recommended. |
| region | object | – | Rectangle (only for rectangular things; use blob/cells for nature) |
No output schema declared.
No examples provided.
classify_asset ~150
Inspect a PNG before import and report whether it is a native RMXP asset. Goes beyond canvas dimensions: fingerprints the filename ($/! object sprites, MV/MZ A1-A5 autotile sheets, 48px-divisible MV dimensions) AND detects the true CONTENT tile size via edge-periodicity (16/24/32/48/64px). Catches assets that look fine by size but render 1.5x/2x too large in RMXP's 32px grid, and assets that are not tilesets at all. Returns tier, recommended conversion op, target category, and flags. No writes.
| Name | Type | Req | Description |
|---|---|---|---|
| filePath | string | yes | Absolute path to the PNG to classify |
No output schema declared.
No examples provided.
create_actor ~211
Create a new actor with RMXP defaults (linear stat growth curves unless a parameters Table is provided)
| Name | Type | Req | Description |
|---|---|---|---|
| armor1_id | number | – | Shield ID |
| armor2_id | number | – | Helmet ID |
| armor3_id | number | – | Body armor ID |
| armor4_id | number | – | Accessory ID |
| battler_hue | number | – | – |
| battler_name | string | – | Battler graphic filename (Graphics/Battlers) |
| character_hue | number | – | – |
| character_name | string | – | Character graphic filename (Graphics/Characters) |
| class_id | number | – | – |
| exp_basis | number | – | EXP curve basis (valid range 10-50, default 30) |
| exp_inflation | number | – | EXP curve inflation (valid range 10-50, default 30) |
| final_level | number | – | – |
| initial_level | number | – | – |
| name | string | yes | – |
| weapon_id | number | – | – |
No output schema declared.
No examples provided.
create_armor ~201
Create a new armor (appended to Armors.rxdata). kind: 0=shield, 1=helmet, 2=body, 3=accessory. Defaults match the RMXP editor; override any field.
| Name | Type | Req | Description |
|---|---|---|---|
| agi_plus | number | – | – |
| auto_state_id | number | – | – |
| description | string | – | – |
| dex_plus | number | – | – |
| eva | number | – | – |
| guard_element_set | array | – | – |
| guard_state_set | array | – | – |
| icon_name | string | – | Icon filename (Graphics/Icons) |
| int_plus | number | – | – |
| kind | number | – | 0=shield, 1=helmet, 2=body, 3=accessory |
| mdef | number | – | – |
| name | string | yes | – |
| pdef | number | – | – |
| price | number | – | – |
| str_plus | number | – | – |
No output schema declared.
No examples provided.
create_damage_skill ~226
Create a damage-dealing skill (simplified). Set physical=true for ATK/PDEF based damage, otherwise INT/MDEF based (magic). Engine formula: damage = (power + ATK*atk_f/100 - PDEF*pdef_f/200 - MDEF*mdef_f/200) * (20 + STR*str_f/100 + DEX*dex_f/100 + AGI*agi_f/100 + INT*int_f/100) / 20. Reference: default-DB Fire is power 140, sp 75.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | Skill description |
| elementId | number | – | Element ID from the System elements list (0=none) |
| name | string | yes | Skill name |
| physical | boolean | – | true=physical (ATK/PDEF), false=magical (INT/MDEF, default) |
| power | number | yes | Base damage power |
| scope | number | yes | Target scope (1=one enemy, 2=all enemies) |
| spCost | number | yes | SP cost |
No output schema declared.
No examples provided.
create_healing_skill ~151
Create a healing skill (simplified). In XP healing is negative power. Amount healed = power * (20 + INT*int_f/100) / 20 with int_f=50 (default-DB convention), so it scales with the caster's INT. Reference: default-DB Heal is power 150, sp 80.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | Skill description |
| name | string | yes | Skill name |
| power | number | yes | Base heal power (positive number; actual healing scales up with caster INT) |
| scope | number | yes | Target scope (3=one ally, 4=all allies, 7=user) |
| spCost | number | yes | SP cost |
No output schema declared.
No examples provided.
create_map ~298
Create a new map. SIZE IS THE FIRST DESIGN DECISION: a map is N screens of 20x15 tiles, so pass a `purpose` (interior/room/town/dungeon/overworld/region) to get a sensible default size, or set width/height explicitly. Returns the new map id and a size_advisory (screens, target focal-point count, scatter density, oversize warnings) plus the design guide. Writes the next-free MapXXX.rxdata (blank Table[w,h,3]) + MapInfos entry. Paint with apply_autotile / scatter_tiles / set_map_tiles, preview with render_map.
| Name | Type | Req | Description |
|---|---|---|---|
| height | number | – | Height in tiles. Omit to use the purpose default. Clamped to 15..500. |
| name | string | yes | Display name in the map tree |
| parentId | number | – | Parent map id in the tree (default 0 = root) |
| purpose | string | – | What the map is for. Picks a default size if width/height are omitted, and tunes the size advisory. interior=20x15 one screen; town~40x35; dungeon~45x40; overworld~100x90 (segment). |
| tilesetId | number | – | Tileset id (default 1) |
| width | number | – | Width in tiles. Omit to use the purpose default. Clamped to 20..500. |
No output schema declared.
No examples provided.
create_map_event ~72
Create a new event on a map. If pages are omitted, a default empty page is created.
| Name | Type | Req | Description |
|---|---|---|---|
| mapId | number | yes | – |
| name | string | yes | – |
| pages | array | – | Optional RPG::Event::Page objects |
| x | number | yes | – |
| y | number | yes | – |
No output schema declared.
No examples provided.
create_script ~67
Create a new RGSS script. By default it is inserted just above "Main" (the conventional slot for custom scripts).
| Name | Type | Req | Description |
|---|---|---|---|
| code | string | yes | Ruby source code |
| name | string | yes | Script name |
| position | number | – | Insert position (default: just above Main) |
No output schema declared.
No examples provided.
create_skill ~441
Create a new skill with full control over RPG::Skill fields. XP has no damage formulas: damage = power scaled by stat influence rates (atk_f/str_f for physical, int_f for magical). Negative power heals.
| Name | Type | Req | Description |
|---|---|---|---|
| agi_f | number | – | AGI influence rate 0-100 |
| animation1_id | number | – | User animation ID |
| animation2_id | number | – | Target animation ID |
| atk_f | number | – | ATK influence rate 0-200 (physical) |
| common_event_id | number | – | Common event to call |
| description | string | – | Skill description |
| dex_f | number | – | DEX influence rate 0-100 |
| element_set | array | – | Element IDs (see System elements list) |
| eva_f | number | – | Evasion influence rate 0-100 |
| hit | number | – | Hit rate percentage (0-100) |
| icon_name | string | – | Icon filename (Graphics/Icons) |
| int_f | number | – | INT influence rate 0-100 (magical) |
| mdef_f | number | – | Target MDEF influence rate 0-100 |
| minus_state_set | array | – | State IDs to remove |
| name | string | yes | Skill name |
| occasion | number | – | 0=always, 1=only battle, 2=only menu, 3=never |
| pdef_f | number | – | Target PDEF influence rate 0-100 |
| plus_state_set | array | – | State IDs to add (see States) |
| power | number | – | Base power (positive=damage, negative=healing) |
| scope | number | – | Target scope (0=none, 1=one enemy, 2=all enemies, 3=one ally, 4=all allies, 5=one ally HP 0, 6=all allies HP 0, 7=user) |
| sp_cost | number | – | SP cost |
| str_f | number | – | STR influence rate 0-100 |
| variance | number | – | Damage variance percentage |
No output schema declared.
No examples provided.
create_state_skill ~145
Create a state-inflicting skill (poison, sleep, etc.). State IDs come from States.rxdata (XP defaults: 3=poison, 5=blind, 6=silence, 7=confuse, 8=sleep, 9=paralyze).
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | Skill description |
| hit | number | yes | Hit/success rate percentage (0-100) |
| name | string | yes | Skill name |
| scope | number | yes | Target scope (1=one enemy, 2=all enemies) |
| spCost | number | yes | SP cost |
| stateId | number | yes | State ID to inflict |
No output schema declared.
No examples provided.
create_tileset_identification_harness ~143
Create a review bundle for one tileset that separates engine facts from semantic claims. Produces the exact source sheet, isolated transparent tile images, source-row strips, manifest.json (priority, passage flags, alpha bounds), catalog templates, and an interactive index.html for identifying single tiles and rectangular multi-tile objects. Use this before assigning map-design roles to an uncataloged tileset.
| Name | Type | Req | Description |
|---|---|---|---|
| outDir | string | – | Output directory (default Data/.mcp-tilecatalog/<tileset-id>/) |
| scale | number | – | Integer review-image scale (default 4) |
| tilesetId | number | yes | Tileset id to inspect |
No output schema declared.
No examples provided.
create_transfer_event ~301
Wire two maps together: create a Transfer Player (command 201) event at (x,y) on a map that warps the player to (targetX,targetY) on targetMapId. trigger 0 = action button (a door — give it a graphic); trigger 1 = player touch (an edge teleport — leave it invisible). Validates both endpoints exist and are in-bounds before writing. Use validate_connectivity afterwards to check the whole world graph.
| Name | Type | Req | Description |
|---|---|---|---|
| direction | number | – | Facing after transfer: 0 retain, 2 down, 4 left, 6 right, 8 up (default 0) |
| fade | boolean | – | Fade through black during transfer (default true) |
| graphic | object | – | Optional event appearance (for a visible door). Omit for an invisible touch teleport. |
| mapId | number | yes | Map the event is placed on |
| name | string | – | Event name (default transfer_to_<targetMapId>) |
| targetMapId | number | yes | Destination map id |
| targetX | number | yes | Destination x (tile) |
| targetY | number | yes | Destination y (tile) |
| trigger | number | – | 0 action button (door), 1 player touch (edge teleport, default), 2 event touch |
| x | number | yes | Event x (tile) on this map |
| y | number | yes | Event y (tile) on this map |
No output schema declared.
No examples provided.
create_weapon ~181
Create a new weapon (appended to Weapons.rxdata). Defaults match the RMXP editor; override any field. Equippable in the weapon slot.
| Name | Type | Req | Description |
|---|---|---|---|
| agi_plus | number | – | – |
| animation1_id | number | – | – |
| animation2_id | number | – | – |
| atk | number | – | Attack power |
| description | string | – | – |
| dex_plus | number | – | – |
| element_set | array | – | Element ids this weapon carries |
| icon_name | string | – | Icon filename (Graphics/Icons) |
| int_plus | number | – | – |
| mdef | number | – | – |
| minus_state_set | array | – | – |
| name | string | yes | – |
| pdef | number | – | – |
| plus_state_set | array | – | – |
| price | number | – | – |
| str_plus | number | – | – |
No output schema declared.
No examples provided.
fill_region ~119
Fill a rectangle of a layer with one tile id (or the whole layer if `rect` is omitted). Tile id 0 clears. For autotiles this places the base variant (P1) — smart edges come with apply_autotile.
| Name | Type | Req | Description |
|---|---|---|---|
| layer | number | yes | 0=ground, 1=detail, 2=overhead |
| mapId | number | yes | – |
| rect | object | – | Rectangle in tiles (default whole layer) |
| tileId | number | yes | Tile id to fill with (0 = clear) |
No output schema declared.
No examples provided.
get_actor ~57
Get a specific actor by ID, including its 6x100 parameters table (MaxHP, MaxSP, STR, DEX, AGI, INT per level)
| Name | Type | Req | Description |
|---|---|---|---|
| actorId | number | yes | The ID of the actor to retrieve |
No output schema declared.
No examples provided.
get_actors ~23
Get all actors from the RPG Maker XP project (parameter tables omitted)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_armors ~17
Get all armors from the project
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_database ~68
List all entries of a database file. Kinds: classes, states, enemies, troops, common_events, tilesets, animations (also actors/skills/items/weapons/armors). Tables and command lists are summarized; use get_database_entry for full data.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | yes | – |
No output schema declared.
No examples provided.
get_database_entry ~65
Get one full database entry by ID, including Tables (tileset passages/priorities/terrain_tags, enemy element_ranks, class element_ranks) and event command lists (common events, troop pages)
| Name | Type | Req | Description |
|---|---|---|---|
| id | number | yes | – |
| kind | string | yes | – |
No output schema declared.
No examples provided.
get_game_title ~18
Get the game title (from Game.ini)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_items ~15
Get all items from the project
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_map ~62
Get map data by ID (Data/MapXXX.rxdata). Tile data is summarized unless includeTiles is true.
| Name | Type | Req | Description |
|---|---|---|---|
| includeTiles | boolean | – | Include the full tile data Table (large!) |
| mapId | number | yes | The ID of the map to retrieve |
No output schema declared.
No examples provided.
get_map_design_guide ~74
Return the level/map design guide (MAP-DESIGN.md): layer roles (z0 terrain / z1 ground clutter / z2 overhead), tile priority & passability, the multi-tile-object no-overlap rule, composition principles, and the authoring workflow. Load this before authoring or editing maps.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_map_event ~33
Get a specific event from a map
| Name | Type | Req | Description |
|---|---|---|---|
| eventId | number | yes | – |
| mapId | number | yes | – |
No output schema declared.
No examples provided.
get_map_events ~25
Get all events from a specific map
| Name | Type | Req | Description |
|---|---|---|---|
| mapId | number | yes | – |
No output schema declared.
No examples provided.
get_map_infos ~21
Get information about all maps (names, parent, order)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_map_size_advisory ~116
Size advisory for an EXISTING map: screens (ceil(w/20)*ceil(h/15)), target focal-point and path-junction counts, recommended scatter density, approx clutter tile budget, and oversize/purpose-mismatch warnings. Use this first when editing a map so size and tile budget guide the design. Optionally pass a purpose to check the size against its sweet spot.
| Name | Type | Req | Description |
|---|---|---|---|
| mapId | number | yes | – |
| purpose | string | – | Optional: check the map size against this purpose's sweet spot. |
No output schema declared.
No examples provided.
get_map_tiles ~123
Read a map's tile ids as a 2D grid (rows top-to-bottom). Returns one layer if `layer` is given, else all three. Tile id 0 = empty, 48..383 = autotiles, >=384 = regular tiles. Use `region` to crop and avoid large payloads.
| Name | Type | Req | Description |
|---|---|---|---|
| layer | number | – | Layer 0=ground, 1=detail, 2=overhead (omit for all) |
| mapId | number | yes | – |
| region | object | – | Crop in tiles (default whole map) |
No output schema declared.
No examples provided.
get_script ~32
Get an RGSS script's Ruby source code by index
| Name | Type | Req | Description |
|---|---|---|---|
| index | number | yes | Script index from get_scripts |
No output schema declared.
No examples provided.
get_scripts ~25
List all RGSS scripts in Scripts.rxdata (index, name, source length)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_skill ~30
Get a specific skill by ID
| Name | Type | Req | Description |
|---|---|---|---|
| skillId | number | yes | The ID of the skill to retrieve |
No output schema declared.
No examples provided.
get_skills ~16
Get all skills from the project
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_switches ~20
Get all game switch names (index = switch ID)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_system ~32
Get system data (System.rxdata: party, elements, switches, variables, vocabulary, start position, audio settings)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_tileset_catalog ~58
Read the structured semantic catalog for a tileset together with its generated engine-fact manifest and validation summary. Absence from the catalog means unreviewed, not safe to infer.
| Name | Type | Req | Description |
|---|---|---|---|
| tilesetId | number | yes | Tileset id |
No output schema declared.
No examples provided.
get_variables ~19
Get all game variable names (index = variable ID)
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_weapons ~16
Get all weapons from the project
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
register_tileset ~164
Create a Tilesets.rxdata entry for a graphic already in Graphics/Tilesets, sizing the passability/priority/terrain Tables to the image (384 + height/4). GUARDED: refuses object sprites, MV A-series sheets, non-256px-wide, or non-32px-content assets (pass force:true to override). This is the gate that keeps mis-classified art out of the database.
| Name | Type | Req | Description |
|---|---|---|---|
| autotileNames | array | – | Up to 7 autotile graphic names (optional) |
| force | boolean | – | Override the native-asset guard (default false) |
| graphicName | string | yes | PNG base name in Graphics/Tilesets (with or without .png) |
| name | string | – | Database display name (default = graphicName) |
No output schema declared.
No examples provided.
render_map ~323
Render a map's tile layers to a flat top-down PNG preview (outside the editor) and return the file path. Composites all 3 tile layers using the tileset graphic and autotiles. Use this to SEE a map you built/edited and self-check it. Layout preview only: no priority/overhead draw-order, fog/panorama/weather, autotile animation (frame 0), or event sprites. Reads project Graphics/ then falls back to the RTP (override base with RPGMAKER_RTP_PATH). Writes to Data/.mcp-preview/ by default; Read the returned path to view it.
| Name | Type | Req | Description |
|---|---|---|---|
| drawEvents | boolean | – | Draw events (page-0 sprite/tile, else a marker) and return an event legend (default false) |
| drawGrid | boolean | – | Overlay a 32px tile grid (default false) |
| layers | array | – | Which z-layers (0=ground,1=detail,2=overhead) to draw, in order. Default [0,1,2] |
| mapId | number | yes | Map ID to render |
| outPath | string | – | Output PNG path (default Data/.mcp-preview/map<NNN>.png) |
| passability | boolean | – | Tint cells by passability: red=blocked, orange=partial. Approximate, uses the topmost tile (default false) |
| region | object | – | Crop in tiles (default: whole map) |
| scale | number | – | Integer nearest-neighbour upscale for legibility (default 1) |
No output schema declared.
No examples provided.
render_tileset_atlas ~138
Render a labeled atlas of a tileset to a PNG: the tileset graphic scaled with a grid, each regular tile's id burned in, passability indicators, and the 7 autotile slots. This is a quick numeric reference, not semantic proof; use create_tileset_identification_harness before assigning map-design roles.
| Name | Type | Req | Description |
|---|---|---|---|
| outPath | string | – | Output PNG path (default Data/.mcp-preview/tilesetNNN-atlas.png) |
| scale | number | – | Integer upscale for legibility (default 2) |
| tilesetId | number | yes | Tileset id (a map's tileset_id) |
No output schema declared.
No examples provided.
save_tileset_catalog ~142
Validate and save reviewed semantic findings for a tileset. Accepts incremental tile/object/autotile arrays or the complete catalog JSON exported by the review page. Generated engine facts cannot be overwritten by catalog claims.
| Name | Type | Req | Description |
|---|---|---|---|
| autotiles | array | – | Reviewed autotile-slot semantics |
| catalog | object | – | Complete catalog JSON exported by the review page; replaces semantic maps while preserving trusted tileset identity |
| entries | array | – | Reviewed regular-tile semantic entries |
| objects | array | – | Reviewed rectangular multi-tile object definitions |
| replace | boolean | – | Replace instead of merge (default false) |
| tilesetId | number | yes | Tileset id |
No output schema declared.
No examples provided.
scatter_tiles ~186
Scatter clutter tile ids over a region with natural random distribution at a target density (fraction of cells), skipping occupied cells. Optional focal point with falloff for a density gradient (denser near a landmark). Use for flowers/bushes/rocks/tall grass instead of hand-placing lone tiles — fixes sparse/corner-clustered decoration. Deterministic given seed.
| Name | Type | Req | Description |
|---|---|---|---|
| avoidOccupied | boolean | – | Skip non-empty cells (default true) |
| density | number | – | Fraction of cells to fill, 0..1 (default 0.12) |
| focal | object | – | Density gradient toward a point |
| layer | number | yes | Usually 1 (ground clutter) |
| mapId | number | yes | – |
| region | object | yes | – |
| seed | number | – | – |
| tileIds | array | yes | Tile ids to scatter (picked at random per cell) |
No output schema declared.
No examples provided.
search_actors ~28
Search actors by name
| Name | Type | Req | Description |
|---|---|---|---|
| searchTerm | string | yes | The search term to find actors |
No output schema declared.
No examples provided.
search_items ~28
Search items, weapons and armors by name or description
| Name | Type | Req | Description |
|---|---|---|---|
| searchTerm | string | yes | – |
No output schema declared.
No examples provided.
search_map_events ~33
Search events on a map by name
| Name | Type | Req | Description |
|---|---|---|---|
| mapId | number | yes | – |
| searchTerm | string | yes | – |
No output schema declared.
No examples provided.
search_scripts ~41
Search all RGSS script sources with a regex pattern; returns matching lines with script name and line number
| Name | Type | Req | Description |
|---|---|---|---|
| pattern | string | yes | Regular expression to search for |
No output schema declared.
No examples provided.
search_skills ~26
Search skills by name or description
| Name | Type | Req | Description |
|---|---|---|---|
| searchTerm | string | yes | Search term |
No output schema declared.
No examples provided.