RPG Maker MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@RPG Maker MCPdry-run scene S03_014 on Map001"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
RPG Maker MCP
RPG Maker MCP is an MVP toolkit for RPG Maker MZ. It builds a high-level
EventSpec from a .scene tag DSL file and applies the generated managed event
to an RPG Maker MZ data/MapXXX.json file.
RPG Maker MZ向けの .scene タグDSLから高レベル EventSpec を生成し、MZ
data/MapXXX.json に管理イベントを反映するMVP実装です。
The MCP server does not read story text bodies or image contents. .scene
parsing/building is handled by the Builder CLI/API, while the MCP stdio server
only handles EventSpec objects and ID manifests under mcp/*-manifest.json.
MCPサーバは本文や画像実体を読みません。.scene のparse/buildはBuilder側のCLI/APIで行い、MCP
stdioサーバは EventSpec と mcp/*-manifest.json のID台帳だけを扱います。
Concept: Writer AI and Content-Blind MCP
This project assumes that the scenario has already been written in .scene
format by either a Writer AI or a human author. That .scene file may contain
adult scenario text, dialogue, staging notes, and other sensitive creative
content.
The Writer AI is the creative authoring side of the workflow. It may generate
or edit .scene files from prompts, and it may work with adult scenario content
when the user intentionally uses it for writing. The Writer AI is not
content-blind.
This MCP is the structural application side of the workflow. It is designed so that a separate AI worker can apply, validate, diff, back up, restore, and inspect RPG Maker MZ events without reading adult scenario text or image contents.
Recommended separation:
Writer AI or human author
-> writes adult or sensitive scenario as .scene
-> local Builder converts .scene to EventSpec / manifests
-> content-blind MCP worker applies EventSpec to RPG Maker MZ JSONIt is possible to ask a Writer AI to create .scene files from prompts, or to
describe .scene-equivalent event structure in a prompt. However, once the work
moves to this MCP worker, pass redacted EventSpec, IDs, and manifests instead
of raw scenario text.
Related MCP server: RPGMakerUltimate-MCP
コンセプト: Writer AI と内容非参照 MCP
このプロジェクトは、Writer AI または人間の作者が、成人向けシナリオを含み得る内容を
すでに .scene 形式で記述している、という前提のツールです。.scene ファイルには、
成人向け本文、会話、演出メモ、その他の秘匿したい創作内容が含まれる可能性があります。
Writer AI は創作・執筆側の役割です。ユーザーが意図して執筆用途に使う場合、Writer AI は
プロンプトから .scene を生成・編集でき、成人向けシナリオ本文を扱うことがあります。
つまり Writer AI は内容非参照ではありません。
この MCP は構造適用側の役割です。別の作業AIが成人向け本文や画像内容を読まずに、 RPGツクールMZ のイベントを適用・検証・差分確認・バックアップ・復元・調査できるように 設計されています。
推奨する分担:
Writer AI または人間の作者
-> 成人向けまたは秘匿シナリオを .scene として記述
-> ローカル Builder が .scene を EventSpec / manifest に変換
-> 内容非参照 MCP worker が EventSpec を RPGツクールMZ JSON に適用Writer AI にプロンプト経由で .scene を作らせることや、.scene 相当のイベント構造を
プロンプトで記述することは可能です。ただし、この MCP worker に作業を渡す段階では、
raw scenario text ではなく、redacted EventSpec、ID、manifest を渡してください。
Files
src/sceneParser.js .scene tag DSL parser
src/builder.js .scene -> EventSpec builder
src/validator.js EventSpec / manifest validator
src/mzCommands.js EventSpec -> RPG Maker MZ event commands
src/mapStore.js data/MapXXX.json read/write helpers
src/project.js apply, backup, restore, dry-run, diff
src/mcp-server.js MCP stdio server
src/cli.js local CLI
schemas/ JSON Schema
fixtures/ sample .scene and RPG Maker MZ project data
tests/ node:test coverageUsage - English
Requirements
Node.js 18 or later
An RPG Maker MZ project directory with
data/MapXXX.json
This package has no runtime npm dependencies. Run commands from this repository root, or use the installed bin names if you install/link the package.
Quick start with the sample project
npm test
node src/cli.js build-scene fixtures/story/ch03/S03_014.scene --project fixtures/project
node src/cli.js dry-run fixtures/story/ch03/S03_014.scene --project fixtures/project
node src/cli.js apply-scene fixtures/story/ch03/S03_014.scene --project fixtures/projectInitialize an RPG Maker project for MCP
Create the default manifest files under <project>/mcp/:
node src/cli.js init --project /path/to/rpg-maker-projectThe generated files are:
mcp/text-manifest.json
mcp/image-manifest.json
mcp/anchor-manifest.json
mcp/project-manifest.jsonBuild and validate a scene
Convert a .scene file into an EventSpec:
node src/cli.js build-scene story/ch03/S03_014.scene --project /path/to/project --out /tmp/S03_014.event.jsonValidate an existing EventSpec JSON file against schemas and project manifests:
node src/cli.js validate-event /tmp/S03_014.event.json --project /path/to/projectUse --update-manifest with build-scene when you want generated text IDs from
the scene to be merged into mcp/text-manifest.json:
node src/cli.js build-scene story/ch03/S03_014.scene --project /path/to/project --update-manifestPreview, diff, and apply
Preview changes without writing to the RPG Maker project:
node src/cli.js dry-run story/ch03/S03_014.scene --project /path/to/projectShow a compact diff summary for the managed event:
node src/cli.js diff story/ch03/S03_014.scene --project /path/to/projectApply the scene to the target map JSON:
node src/cli.js apply-scene story/ch03/S03_014.scene --project /path/to/projectIf an existing managed event has a different stored hash, the update is rejected
by default. Use --force only when you intentionally want to overwrite it:
node src/cli.js apply-scene story/ch03/S03_014.scene --project /path/to/project --forceInspect project data
node src/cli.js list-maps --project /path/to/project
node src/cli.js read-map --project /path/to/project --map 12
node src/cli.js list-events --project /path/to/project --map 12
node src/cli.js list-anchors --project /path/to/project --map 12
node src/cli.js resolve-anchor bed_side --project /path/to/project --map 12Back up and restore
Create a backup for one map file:
node src/cli.js backup-project --project /path/to/project --map 12Restore a backup created by backup-project or apply-scene:
node src/cli.js restore-backup <backupId> --project /path/to/projectsave-project is a no-op acknowledgement because file writes are flushed
immediately:
node src/cli.js save-projectRun the MCP stdio server
node src/mcp-server.jsIf the package is installed or linked, these bin names are also available:
rpgmaker-mcp help
rpgmaker-mcp-serverThe MCP server exposes tools for applying, diffing, validating, reading maps,
listing events/anchors, backing up, and restoring. It expects already-built
EventSpec input; build .scene files with the CLI/API first.
Configure static AI worker instructions
The content-blind rule should be saved as static project instructions whenever your AI client supports it. Do not rely on pasting the same system prompt at the start of every session.
Use the instruction mechanism supported by your client, for example:
AGENTS.md Codex-style repository instructions
CLAUDE.md Claude Code-style repository instructions
.cursor/rules/*.mdc Cursor project rules
Project instructions Hosted or desktop AI client settingsRecommended static instruction:
This repository is a content-blind RPG Maker MZ MCP tool.
Do not read, summarize, infer, rewrite, translate, classify, or quote adult
story text, dialogue bodies, image contents, CG descriptions, or other sensitive
creative content.
You may only work with EventSpec JSON, mcp/*-manifest.json files, RPG Maker MZ
data/*.json structure, IDs, validation results, diffs, backups, and tool outputs
that do not expose story text or image contents.
Do not open .scene files unless the user explicitly confirms that the file is
safe and non-sensitive. Prefer redacted EventSpec input over raw scene content.
Use dry-run before applying changes. Report IDs and structural changes, not
story content.After saving the static instructions, normal user prompts can stay short, such as:
Apply this already-built EventSpec to the project. Run dry-run first, then apply
if validation passes. Report the map ID, event name, backup ID, and validation
result.Minimal .scene example
@scene S03_014
@title Inn Night
@map 12
@anchor bed_side
@trigger autorun
@actors hero heroine
@say heroine
"Welcome back."
@choice
- "Rest" -> rest
- "Leave" -> leave
@label rest
@switch 42 true
@jump end
@label leave
@call_common_event CE_LEAVE_INN
@jump end
@label end
@end使用方法 - 日本語
必要なもの
Node.js 18 以上
data/MapXXX.jsonを含む RPGツクールMZ プロジェクト
このパッケージには実行時 npm 依存はありません。コマンドはこのリポジトリのルートで実行してください。 インストールまたはリンク済みの場合は bin 名も使えます。
サンプルプロジェクトで試す
npm test
node src/cli.js build-scene fixtures/story/ch03/S03_014.scene --project fixtures/project
node src/cli.js dry-run fixtures/story/ch03/S03_014.scene --project fixtures/project
node src/cli.js apply-scene fixtures/story/ch03/S03_014.scene --project fixtures/projectRPGツクールプロジェクトを初期化する
<project>/mcp/ に既定の manifest ファイルを作成します。
node src/cli.js init --project /path/to/rpg-maker-project作成されるファイルは以下です。
mcp/text-manifest.json
mcp/image-manifest.json
mcp/anchor-manifest.json
mcp/project-manifest.jsonシーンをビルド・検証する
.scene ファイルを EventSpec に変換します。
node src/cli.js build-scene story/ch03/S03_014.scene --project /path/to/project --out /tmp/S03_014.event.json既存の EventSpec JSON をスキーマとプロジェクト manifest に対して検証します。
node src/cli.js validate-event /tmp/S03_014.event.json --project /path/to/projectシーンから生成されたテキストIDを mcp/text-manifest.json に反映したい場合は、
build-scene に --update-manifest を付けます。
node src/cli.js build-scene story/ch03/S03_014.scene --project /path/to/project --update-manifestプレビュー・差分確認・適用
RPGツクールプロジェクトに書き込まずに適用結果を確認します。
node src/cli.js dry-run story/ch03/S03_014.scene --project /path/to/project管理イベントの差分サマリを表示します。
node src/cli.js diff story/ch03/S03_014.scene --project /path/to/projectシーンを対象マップJSONへ適用します。
node src/cli.js apply-scene story/ch03/S03_014.scene --project /path/to/project既存の管理イベントに保存された hash と入力の hash が異なる場合、通常は更新が拒否されます。
意図して上書きする場合だけ --force を使ってください。
node src/cli.js apply-scene story/ch03/S03_014.scene --project /path/to/project --forceプロジェクト情報を確認する
node src/cli.js list-maps --project /path/to/project
node src/cli.js read-map --project /path/to/project --map 12
node src/cli.js list-events --project /path/to/project --map 12
node src/cli.js list-anchors --project /path/to/project --map 12
node src/cli.js resolve-anchor bed_side --project /path/to/project --map 12バックアップ・復元
マップファイル単位でバックアップを作成します。
node src/cli.js backup-project --project /path/to/project --map 12backup-project または apply-scene が作成したバックアップを復元します。
node src/cli.js restore-backup <backupId> --project /path/to/projectsave-project は、書き込みが即時反映されるため no-op の確認応答です。
node src/cli.js save-projectMCP stdio サーバを起動する
node src/mcp-server.jsパッケージをインストールまたはリンクしている場合は、以下の bin 名も使えます。
rpgmaker-mcp help
rpgmaker-mcp-serverMCPサーバは、適用・差分・検証・マップ読み取り・イベント/アンカー一覧・バックアップ・復元のツールを提供します。
入力にはビルド済みの EventSpec が必要です。.scene ファイルは先に CLI/API でビルドしてください。
作業AIへの静的 instruction 設定
内容非参照ルールは、利用しているAIクライアントが対応している場合、静的な project instructions として保存してください。セッション開始ごとに同じシステムプロンプトを貼る運用には依存しない方が安全です。
利用中のクライアントがサポートする instruction 機構を使います。例:
AGENTS.md Codex系のリポジトリ指示
CLAUDE.md Claude Code系のリポジトリ指示
.cursor/rules/*.mdc Cursorのプロジェクトルール
Project instructions ホスト型/デスクトップ型AIクライアントの設定保存する静的 instruction の例:
このリポジトリは、内容非参照型の RPGツクールMZ MCP ツールです。
成人向け本文、会話本文、画像内容、CG説明、その他の秘匿したい創作内容を読んだり、
要約・推測・改稿・翻訳・分類・引用したりしてはいけません。
扱ってよいものは EventSpec JSON、mcp/*-manifest.json、RPGツクールMZ の data/*.json 構造、
各種ID、本文や画像内容を含まない検証結果、差分、バックアップ、ツール出力のみです。
ユーザーが安全かつ非秘匿であると明示しない限り、.scene ファイルを開かないでください。
raw scene content ではなく redacted EventSpec を優先してください。
変更適用前には dry-run を実行してください。報告するのはIDと構造的な変更であり、本文内容ではありません。静的 instruction を保存した後は、通常のユーザープロンプトは短くできます。
このビルド済み EventSpec をプロジェクトへ適用してください。先に dry-run を実行し、
検証に通ったら適用してください。map ID、event名、backup ID、検証結果を報告してください。最小 .scene 例
@scene S03_014
@title 宿屋の夜
@map 12
@anchor bed_side
@trigger autorun
@actors hero heroine
@say heroine
「おかえり。」
@choice
- 「休む」 -> rest
- 「外へ出る」 -> leave
@label rest
@switch 42 true
@jump end
@label leave
@call_common_event CE_LEAVE_INN
@jump end
@label end
@endSafety
Before writing a map JSON file, applyEventSpec() creates a backup under mcp/backups/.
Managed events are identified by both event name and the leading @AI_META comment. If the stored hash differs from the incoming normalized .scene hash, updates are rejected unless force is passed.
安全性
マップJSONを書き込む前に、applyEventSpec() は mcp/backups/ 配下へバックアップを作成します。
管理イベントはイベント名と先頭の @AI_META コメントの両方で識別されます。保存済み hash が入力された正規化済み
.scene hash と異なる場合、force を指定しない限り更新は拒否されます。
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/namimon-mahjong/rpg-maker-secret'
If you have feedback or need assistance with the MCP directory API, please join our Discord server