Skip to main content
Glama
wastelandgoats

ReforgerForge MCP

ReforgerForge MCP

The universal AI modding toolkit for Arma Reforger.

Describe what you want to build — your AI agent handles API research, code generation, project scaffolding, Workbench control, and in-editor testing. Works with any MCP-compatible agent: Cursor, Google Antigravity, Claude Desktop, Claude Code, Kiro, Windsurf, VS Code Copilot, Continue.dev, and more.

Forked from steffenbk/enfusion-mcp-BK with permission. ReforgerForge adds universal agent support, simplified setup, and ongoing maintenance as an independent project.

Features

  • 50 MCP tools — API search, wiki, asset browsing, code generation, Workbench live control

  • 8,693 indexed API classes — full Enfusion/Arma Reforger class hierarchy

  • 250+ wiki guides — searchable tutorials and documentation

  • Agent-agnostic — one server, install script for every major AI IDE

  • Zero modding experience required — natural language → built addon

Related MCP server: enfusion-mcp

Quick Start

git clone https://github.com/goatboynz/reforger-forge-mcp.git
cd reforger-forge-mcp
npm install
npm run build

Or on Windows:

.\scripts\setup.ps1

Then install into your agent(s):

# Install into ALL supported agents at once
.\scripts\install-agents.ps1 -All

# Or pick one
.\scripts\install-agents.ps1 -Agent antigravity
.\scripts\install-agents.ps1 -Agent cursor

Restart your agent and verify reforger-forge shows 50 tools.

Configure paths

Copy and edit the config file:

cp reforger-forge.config.example.json reforger-forge.config.json

Key

Description

workbenchPath

Arma Reforger Tools (Steam) install

gamePath

Arma Reforger game install

projectPath

Where your mods are saved

Re-run .\scripts\install-agents.ps1 after changing paths so all agents get updated env vars.


Agent Setup

ReforgerForge uses stdio MCP (local Node.js process). Every agent below runs the same server — only the config file location differs.

Agent

Config file

Install command

Cursor

%USERPROFILE%\.cursor\mcp.json

.\scripts\install-agents.ps1 -Agent cursor

Google Antigravity

%USERPROFILE%\.gemini\config\mcp_config.json

.\scripts\install-agents.ps1 -Agent antigravity

Claude Desktop

%APPDATA%\Claude\claude_desktop_config.json

.\scripts\install-agents.ps1 -Agent claude

Windsurf

%USERPROFILE%\.codeium\windsurf\mcp_config.json

.\scripts\install-agents.ps1 -Agent windsurf

VS Code (Copilot)

%APPDATA%\Code\User\mcp.json + .vscode\mcp.json

.\scripts\install-agents.ps1 -Agent vscode

Continue.dev

%USERPROFILE%\.continue\config.json

.\scripts\install-agents.ps1 -Agent continue

Kiro

.kiro/settings/mcp.json (workspace)

.\scripts\install-agents.ps1 -Agent kiro

All agents

All of the above

.\scripts\install-agents.ps1 -All

Google Antigravity

  1. Run .\scripts\install-agents.ps1 -Agent antigravity

  2. Open Antigravity → SettingsCustomizationsOpen MCP Config

  3. Confirm reforger-forge appears, then click Refresh in Installed MCP Servers

  4. The shared config is at ~/.gemini/config/mcp_config.json (same file used by Antigravity CLI)

Manual config (if needed):

{
  "mcpServers": {
    "reforger-forge": {
      "command": "node",
      "args": ["C:\\full\\path\\to\\reforger-forge-mcp\\dist\\index.js"],
      "env": {
        "ENFUSION_WORKBENCH_PATH": "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Arma Reforger Tools",
        "ENFUSION_GAME_PATH": "C:\\Program Files (x86)\\Steam\\steamapps\\common\\Arma Reforger",
        "ENFUSION_PROJECT_PATH": "C:\\Users\\YOU\\Documents\\My Games\\ArmaReforgerWorkbench\\addons"
      }
    }
  }
}

Cursor

Workspace config: .cursor/mcp.json (included). Global: run install script or merge configs/cursor-global.json.

Restart → MCP: Restart Servers

Claude Desktop

Merge configs/claude-desktop.json or run install script.

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Claude Code

# Windows
claude mcp add --scope user reforger-forge -- cmd /c node "FULL_PATH\reforger-forge-mcp\dist\index.js"

# macOS / Linux
claude mcp add --scope user reforger-forge -- node /path/to/reforger-forge-mcp/dist/index.js

VS Code (GitHub Copilot)

Uses servers key (not mcpServers). Run install script — it writes both user-level and workspace .vscode/mcp.json.

Command palette: MCP: List Servers → verify reforger-forge is running.

Windsurf (Cascade)

Global config only at ~/.codeium/windsurf/mcp_config.json. Run install script, then refresh MCP list in Cascade panel.

Continue.dev

Run install script. MCP servers live inside ~/.continue/config.json under mcpServers.

Any other MCP client

Use the stdio template at configs/agents/stdio-template.json. Replace REPLACE_WITH_ABSOLUTE_PATH with your clone path.

{
  "mcpServers": {
    "reforger-forge": {
      "command": "node",
      "args": ["/absolute/path/to/reforger-forge-mcp/dist/index.js"],
      "env": {
        "ENFUSION_WORKBENCH_PATH": "...",
        "ENFUSION_GAME_PATH": "...",
        "ENFUSION_PROJECT_PATH": "..."
      }
    }
  }
}

Complete Tool Reference (50 tools)

Legend: Offline = no Workbench needed | Live = requires Workbench running (wb_launch)

API & Documentation (Offline)

Tool

What it does

api_search

Search 8,693 Enfusion/Arma Reforger API classes and methods. Includes inherited methods, enum detection, sibling classes, and format: 'tree' for ASCII inheritance hierarchy.

component_search

Find ScriptComponent descendants — filter by category (character, vehicle, weapon, damage, inventory, ai, ui, etc.) and event handlers (e.g. OnDamage, EOnFrame).

wiki_search

Search 250+ pre-downloaded BIKI wiki pages and Enfusion tutorials. Returns previews — use wiki_read for full content.

wiki_read

Read the full content of a wiki page by title, including code examples (up to 100k chars, no truncation).

wb_knowledge

Search the bundled modding knowledge base — scripting, audio, weapons, vehicles, AI, UI, game modes, animation, and more. Use query='index' to list all topics.

Game Assets (Offline)

Tool

What it does

game_browse

Browse base game files (scripts, prefabs, configs) from loose files and .pak archives. Do not use filesystem tools on the game install directly.

game_read

Read a specific base game file — vanilla .c scripts, .et prefabs, .conf configs from loose files or .pak.

asset_search

Search game assets (prefabs, models, textures, scripts, configs) by name across loose files and .pak archives. Returns paths and GUIDs.

game_duplicate

Duplicate a base game prefab/config into your mod folder with full ancestor chain resolved. Optionally flatten=true to bake all inherited components. Registers with Workbench for a new GUID.

workshop_info

Read Workshop metadata from a mod's .gproj — mod ID, GUID, title, dependencies, configurations.

Project & Mod Management

Tool

Workbench?

What it does

project

No

Browse, read, or write files in your mod project directory (action: browse / read / write).

mod

Build only

Manage addons: action=create scaffold new addon, action=validate check structure, action=build compile with Workbench CLI.

workshop_info

No

Read .gproj Workshop publish metadata.

Code Generation (Offline)

Tool

What it does

script_create

Generate Enforce Script .c files — component, gamemode, action, entity, manager, modded, basic. Auto-fetches overridable parent methods from API index.

prefab

action=create: Generate .et prefab with components and ancestry. action=inspect: Full inheritance chain merge showing which ancestor each component/value comes from.

layout_create

Generate UI .layout files — hud, menu, dialog, list, custom widget types.

config_create

Generate .conf files — factions, mission headers, entity catalogs, editor placeables.

server_config

Generate server.json for local dedicated server testing.

Scenarios & Advanced Workflows

Tool

Workbench?

What it does

scenario_create

Live

Place scenario elements in open Workbench world — type=objective (SP/co-op Scenario Framework hierarchy) or type=base (Conflict multiplayer base).

scenario_create_conflict

No

Generate a complete Conflict multiplayer scenario (up to 7 files): mission header, SubScene stub, layer files with game mode, bases, capture zones, defenders, ambient vehicles.

animation_graph

No

Vehicle animation graph tool — action=author (generate .agr/.ast scaffolds), action=inspect (read/validate graphs), action=setup (full guided wizard).

building_setup

No

Set up destructible building from Blender export manifest — creates structure prefab with slot wiring and per-phase destruction components.

Workbench Connection & Diagnostics (Live)

Tool

What it does

wb_launch

Start Arma Reforger Workbench, install handler scripts into mod, wait for NET API. Auto-called by other wb_* tools when needed. Call wb_cleanup before publishing mod.

wb_connect

Test connection to Workbench NET API. Returns connection status and editor mode.

wb_diagnose

Full diagnostic — config, handler script locations, NET API status. Use when wb_launch or wb_connect fails.

wb_cleanup

Remove temporary EnfusionMCP handler scripts from mod before publishing. Safe even if never installed.

wb_state

Full Workbench snapshot — mode (edit/play), entity count, selection, terrain bounds, sub-scene, prefab edit status.

wb_reload

Reload scripts or plugins without restarting Workbench.

Workbench Editor Control (Live)

Tool

What it does

wb_play

Enter play mode (Play in Editor). Compiles scripts and launches world for testing.

wb_stop

Exit play mode, return to World Editor.

wb_save

Save current world. Optionally Save As to new path. Edit mode only.

wb_undo_redo

Undo or redo the last World Editor action.

wb_open_resource

Open a resource in its editor (.et → Prefab Editor, .c → Script Editor, etc.).

wb_execute_action

Run any Workbench menu action by path (e.g. Tools,Reload Scripts). Destructive actions blocked.

Workbench Entities (Live)

Tool

What it does

wb_entity_create

Create entity from prefab at position/rotation. Optional name and target layer. Edit mode only.

wb_entity_delete

Delete entity by name. Edit mode only.

wb_entity_list

List entities in current world with pagination and optional name filter.

wb_entity_inspect

Get entity details — components, properties, position, children. By name or index.

wb_entity_modify

Move, rotate, rename, reparent, set/clear/list component properties, manage array items. Edit mode only.

wb_entity_select

Select, deselect, clear, or get current selection.

wb_entity_duplicate

Duplicate a scene entity (including locked base-game instances) into your mod as a standalone .et with new GUID.

wb_component

Add, remove, or list components on an entity. Edit mode only for add/remove.

wb_clipboard

Copy, cut, paste, paste at cursor, duplicate selected entities, check clipboard content.

Workbench World & Resources (Live)

Tool

What it does

wb_terrain

Query terrain height at coordinates or get world bounds (min/max extents).

wb_layers

Create, delete, rename layers; set active layer; toggle visibility/lock. Edit mode only for mutations.

wb_resources

Register new resources, rebuild resource databases, get resource info, open in editor.

wb_prefabs

Create entity templates, save prefab changes, GUID lookup, locate prefabs by path. Edit mode only for create/save.

wb_projects

List loaded addon projects, locate project by name, open .gproj file in Workbench.

wb_localization

Insert, delete, modify string table entries, or get full localization table.

wb_script_editor

Read/write lines in the open Script Editor file — get file, read/write/insert/remove lines, line count.

wb_validate

Validate material or texture resources using Workbench built-in validators. Returns errors and warnings.

Run node scripts/list-tools.mjs anytime to verify all 50 tools register on your machine.


Usage Examples

Create a HUD widget that shows player health and stamina
Make a zombie survival game mode with wave spawning
Search the API for all vehicle damage components
Launch Workbench, load my mod, and enter play mode
Generate a Conflict scenario for Everon with 3 bases
Inspect the inheritance chain for Rifle_M16A2.et

Configuration

Environment variables override config files:

Variable

Description

Default

ENFUSION_WORKBENCH_PATH

Arma Reforger Tools path

Steam default

ENFUSION_GAME_PATH

Arma Reforger game path

Sibling of Tools

ENFUSION_PROJECT_PATH

Mod output directory

~/Documents/My Games/.../addons

ENFUSION_WORKBENCH_HOST

NET API host

127.0.0.1

ENFUSION_WORKBENCH_PORT

NET API port

5775

REFORGER_FORGE_DEBUG

Enable debug logging

off

Config file search order:

  1. reforger-forge.config.json (project root)

  2. ~/.reforger-forge/config.json (user home)

  3. Legacy enfusion-mcp.config.json paths (backward compatible)


Requirements

  • Node.js 20+

  • Arma Reforger Tools (Steam) — for mod build and all wb_* tools

  • Arma Reforger (Steam) — for game asset browsing


Development

npm run build                  # Compile TypeScript
npm test                       # Run test suite (446 tests)
npm run dev                    # Run server in dev mode
node scripts/list-tools.mjs    # Verify all 50 tools register
.\scripts\install-agents.ps1 -All   # Push config to all agents

Project Structure

reforger-forge-mcp/
├── src/                         # TypeScript source
├── data/                        # API index, wiki, patterns, knowledge base
├── mod/                         # Workbench NET API handler scripts
├── configs/agents/              # Manual install templates
├── scripts/
│   ├── setup.ps1                # Build + configure
│   ├── install-agents.ps1       # Install into any AI agent
│   └── list-tools.mjs           # Verify tool registration
├── .cursor/mcp.json             # Cursor workspace
├── .vscode/mcp.json             # VS Code workspace
├── .kiro/settings/mcp.json      # Kiro workspace
└── dist/                        # Built server (generated)

Publishing to GitHub

git remote add origin https://github.com/goatboynz/reforger-forge-mcp.git
git push -u origin main

Credits & Attribution

ReforgerForge MCP is based on:

Used and modified with permission. MIT licensed.

License

MIT — see LICENSE

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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/wastelandgoats/reforger-forge-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server