Enfusion Workbench MCP
Allows setting up destructible buildings in Enfusion/Arma Reforger from a Blender export manifest.
Click on "Deploy 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., "@Enfusion Workbench MCPCreate a HUD widget that shows player health and stamina"
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.
Enfusion Workbench MCP
MCP server for Arma Reforger / Enfusion Workbench modding. Describe what you want to build, and Claude handles the rest — API research (8,971 indexed classes), code generation, project scaffolding, project-wide indexing and refactoring, live Workbench control, and in-editor testing.
Originally derived from steffenbk/enfusion-mcp-BK (MIT) and since grown into a standalone project — see Credits and docs/FORK-NOTES.md for lineage.
112 tools · 4 guided prompts · 3 MCP resources · 1,000+ tests
Install
Clone and build (the reliable path):
git clone https://github.com/Goldwep/enfusion-workbench-mcp.git
cd enfusion-workbench-mcp
npm install
npm run buildClaude Code
claude mcp add --scope user enfusion-mcp -- node <absolute-path-to-repo>/dist/index.jsRestart Claude Code. Verify with /mcp.
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"enfusion-mcp": {
"command": "node",
"args": ["<absolute-path-to-repo>/dist/index.js"]
}
}
}Restart Claude Desktop. Verify with /mcp.
Workbench handler scripts
The live Workbench tools (wb_*) require handler scripts running inside Workbench. These ship in mod/Scripts/WorkbenchGame/EnfusionMCP/ and are installed automatically when Claude launches Workbench via wb_launch.
The EMCP_WB_*.c handlers use the documented Arma Reforger / Enfusion Workbench plugin API surface only (JsonApiStruct, NetApiHandler, Workbench.GetModule, etc.) and ship as dev-time scaffolding — wb_cleanup removes them before publish, and workshop_validate_manifest refuses publish if they're still present. See docs/FORK-NOTES.md for the Bohemia Interactive tools-EULA compliance review.
Related MCP server: DayZ API MCP Server
Usage
Just ask Claude to make a mod:
"Create a HUD widget that shows player health and stamina"
"Make a zombie survival game mode with wave spawning"
"Find every reference to this prefab GUID across my mods"
"Rename this resource and update everything that points at it"
"Set up a Conflict scenario on Everon with three bases"
Or use the guided prompts:
Prompt | Description |
| Full guided mod creation — from idea to built addon |
| Modify or extend an existing mod project |
| Step-by-step mission/scenario scaffold (template, factions, validation) |
| Character animation pipeline explainer (skeleton → AGR → ASI → AGF → clips) |
Tools
Offline authoring (no Workbench needed)
Tool | What it does |
| Search 8,971 Enfusion/Arma Reforger API classes and methods — inherited members, enum-like class detection, related siblings, |
| Search ScriptComponent descendants — filter by category (character, vehicle, weapon, damage, inventory, ai, ui, …) and event handlers |
| Search and read 274 pre-downloaded tutorials and guides from the Enfusion docs and BI Community Wiki |
| Search the bundled modding knowledge base — distilled patterns for scripting, audio, weapons, vehicles, AI, UI, game modes, animation, and more |
| Browse / read / write files in a mod project directory |
| Scaffold a new addon, validate it, or build it via the Workbench CLI |
| Generate Enforce Script ( |
| Create or inspect Entity Template ( |
| Generate UI layout ( |
| Generate config files — factions, mission headers, entity catalogs, editor placeables |
| Generate a dedicated-server |
Base-game access
Tool | What it does |
| Browse and read base-game files — loose files and |
| Search game assets by name across loose files and |
| Duplicate a base-game prefab/config into your mod with a fresh GUID |
| Read Workshop metadata from a mod's |
| Unified vehicle animation-graph tool — inspect, author, validate |
| Set up a destructible building from a Blender export manifest |
Project index & reverse queries
A SQLite-backed index crawls your mods, workshop subscriptions, and the base game, and keeps itself fresh with a file watcher.
Tool | What it does |
| Any 16-hex GUID → defining file, type, class, inheritance parent |
| Paginated list of every file referencing a GUID, filterable by kind |
| Index snapshot — resources, refs, files, per-project counts |
| Resources with zero inbound references (pre-publish cleanup) |
| References to GUIDs that don't exist (ship-blocker check) |
| Walk a prefab's parent chain to the root; flags cycles |
| Paginated browse, filter by source / root type / project |
| A project's declared dependencies with each GUID resolved |
Logs, world & workshop inspection
Tool | What it does |
| Inspect Workbench and game log sessions — crash detection, error-signature grouping, regex filtering |
| World-file analysis — composition summary, broken-ref check, semantic diff |
| Mission/scenario |
| Pre-publish checks — manifest completeness, dependency resolution, dev-handler leak guard |
| Headless Workbench CLI wraps — compile check, curated CLI commands, data build |
| server.json schema validation (secrets redacted); consolidated mod/scenario/faction lint |
Asset inspection
Tool | What it does |
|
|
| UI layout and localization analysis |
| Particle effect inspection; generalized orphaned-asset scan |
Refactoring
Surgical byte-level edits — never parse-and-rewrite. Every write leaves a .bak sidecar, refuses on uncommitted git changes unless forced, and defaults to dry-run where destructive.
Tool | What it does |
| Replace a GUID everywhere it appears, index-driven |
| Move/rename a resource file and update every reference |
| Rename a project's ID in its |
| Sort, dedupe, and validate a Dependencies block |
| Diagnose GUID collisions across projects |
| Emit a reviewed deletion script for orphaned resources (dry-run) |
Enforce Script analysis
A hand-rolled Enforce Script parser drives static analysis without needing Workbench.
Tool | What it does |
| File → AST: classes, modded classes, methods, attributes |
| Find every |
| Style lint (BI conventions) and safe-subset formatter |
| Join engine API hierarchy with your modded chains — ASCII tree |
| Emit a class's public surface as markdown |
| Locate |
Scenario, faction & server management
Tool | What it does |
| Author scenario elements live in Workbench, or generate a complete Conflict MP scenario file-set |
| Clone a rectangular area of a layer with regenerated GUIDs |
| Stamp curated templates (FOB, checkpoint, patrol grid) at a position |
| Scaffold faction configs; group a project's units by faction |
| Export the Game Master spawn catalog as a per-faction table |
| Animation hygiene — unused clips, missing standard weapon tags |
| Managed dedicated-server lifecycle — PID tracking, dry-run default |
| server.json mod resolution, scenario catalog, live A2S query |
Live Workbench control
Control a running Workbench over its NET API (TCP). Handler scripts are installed automatically by wb_launch.
Tool | What it does |
| Start Workbench with handlers installed; remove handlers before publish |
| Connection test, full diagnostic, editor state snapshot |
| Editor lifecycle — play mode, save, undo/redo, script reload |
| Open any resource in its editor; run any menu action by path |
| Full entity CRUD — create from prefab, inspect components, move/rotate/rename/reparent, property get/set, duplicate locked base-game instances into your mod |
| Add, remove, list entity components |
| Terrain height at a coordinate; world bounds |
| Layer queries, resource registration/info, prefab templates + GUID lookup |
| Clipboard ops, Script Editor line access, string-table CRUD, project management |
| Material/texture validation via Workbench's built-in validators |
| Terrain analysis — bounds and stats live; navmesh/roads are placeholder pending handler wiring (see docs/L7-PLAN.md) |
Mod patterns
10 built-in templates for scaffolding:
game-mode custom-faction custom-action spawn-system custom-component modded-behavior admin-tool custom-vehicle weapon-reskin hud-widget
MCP resources
URI | Description |
| Full class docs with inheritance, methods, ancestors/descendants |
| Mod pattern definition with all templates |
| API group with class list |
Configuration
All optional — sensible defaults are used when nothing is set.
Environment variable | Description | Default |
| Mod projects directory (crawled as the |
|
| Arma Reforger Tools install |
|
| Arma Reforger game install (used for base-game data access and as CWD when launching Workbench) | Auto-derived as a sibling of the Tools path |
| Workshop addons directory (crawled as the | Auto-derived from the project path |
| Base-game core addons (crawled read-only as the | Auto-derived from the Tools path |
| SQLite project-index location |
|
| Workbench log sessions directory | Auto-derived from the project path |
| Game log sessions directory | Auto-derived from the project path |
| Optional pre-extracted game-data library (checked before | unset |
| Override the bundled data directory | bundled |
| Default addon folder name for tools that take a mod context | set automatically by |
| Workbench NET API host |
|
| Workbench NET API port |
|
Config can also be loaded from ~/.enfusion-mcp/config.json. Environment variables take priority.
Requirements
Node.js 20+
Arma Reforger Tools (Steam) — needed for
modbuilds and allwb_*tools
Documentation
Doc | Contents |
Install → build → register → first mod walkthrough | |
Field notes on the Enfusion text-format grammar — GUID encodings, vector forms, serializer rules | |
Driving a live Workbench — handler lifecycle, NET API pitfalls, recovery | |
Maintainer checklist for absorbing game updates — re-scrape, GUID re-verify, live re-tests | |
Per-cluster tool references (script, terrain, refactor, scenario, animation) | |
Code style guide for contributors | |
Divergence from upstream + BI tools-EULA compliance review | |
Per-tool error-state reference |
Development
git clone https://github.com/Goldwep/enfusion-workbench-mcp.git
cd enfusion-workbench-mcp
npm install
npm run scrape # Rebuild the API index from your Workbench install's docs
npm run build
npx vitest run --pool=forks --poolOptions.forks.singleFork # 1,000+ tests (counts: npx tsx scripts/count-inventory.ts)See contributing.md for contribution guidelines.
Credits
Originally created by steffenbk (enfusion-mcp-BK, MIT). This fork by Goldwep adds the project-wide GUID/resource index, reverse-query and refactor clusters, Enforce Script analysis, scenario/faction/server tooling, and an expanded live-Workbench surface.
License
MIT — see LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
MCP Server for Slima - AI Writing IDE for Novel Authors with AI Beta Reader.
Build, run and publish 3D games in the Zero engine from Claude Code, Cursor or Codex, over MCP.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceAn MCP server for Arma Reforger and Enfusion engine modding that enables users to create mods, search API classes, and generate scripts through natural language. It provides a comprehensive suite of tools for scaffolding addons, generating prefabs, and building projects using the Workbench CLI.50 npm14-
- AlicenseAqualityCmaintenanceMCP server for DayZ Enforce Script that gives AI coding assistants deep knowledge of the DayZ scripting API with semantic search, code validation, class hierarchy, and reverse call graphs.81MIT
- FlicenseNot gradedqualityDmaintenanceMCP server for Unreal Engine Angelscript development, providing documentation lookup, script file management, test running, and editor interaction through MCP-compatible clients like Claude Code.7-
- AlicenseAqualityAmaintenanceA local, security-focused MCP server for Arma Reforger modding, providing AI coding assistants with tools for project discovery, script analysis, resource validation, log diagnosis, API documentation search, file editing, and Workbench automation.132MIT