
Read-only knowledge of Nightbreak Minecraft plugins: wiki, source, config schemas and validation.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Fetch a file from a mirrored plugin source repo. Optional line slicing for large files.
Repo-relative path, e.g. "src/main/java/com/magmaguy/elitemobs/powers/lua/LuaPowerRuntime.java".
Optional. Read up to and including this line.
Optional. Read from this line (1-indexed).
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http forge https://forge.nightbreak.io/mcp
Fetch a file from a mirrored plugin source repo. Optional line slicing for large files.
| Argument | Type | Description |
|---|---|---|
| path* | string | Repo-relative path, e.g. "src/main/java/com/magmaguy/elitemobs/powers/lua/LuaPowerRuntime.java". |
| repo* | string | |
| line_end | number | Optional. Read up to and including this line. |
| line_start | number | Optional. Read from this line (1-indexed). |
{
"type": "object",
"required": [
"repo",
"path"
],
"properties": {
"path": {
"type": "string",
"description": "Repo-relative path, e.g. \"src/main/java/com/magmaguy/elitemobs/powers/lua/LuaPowerRuntime.java\"."
},
"repo": {
"enum": [
"elitemobs",
"magmacore",
"betterstructures",
"freeminecraftmodels",
"cannonrtp",
"resurrectionchest"
],
"type": "string"
},
"line_end": {
"type": "number",
"description": "Optional. Read up to and including this line."
},
"line_start": {
"type": "number",
"description": "Optional. Read from this line (1-indexed)."
}
}
}Fetch and extract readable content from a specific Nightbreak wiki page such as "EliteMobs/lua_getting_started". Page names change as the wiki grows: take them from search_wiki results. A missing page returns `suggestions` with the closest existing pages.
| Argument | Type | Description |
|---|---|---|
| path* | string | Wiki page path relative to the site root, for example "EliteMobs/lua_getting_started" or "EliteMobs/creating_bosses". |
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"description": "Wiki page path relative to the site root, for example \"EliteMobs/lua_getting_started\" or \"EliteMobs/creating_bosses\"."
}
}
}Where each config type's files go and the plugin rules Forge's own assistant follows: per-type notes, the newer plugins' knowledge, boss movement and combat AI, and the Lua hook quick reference. Read it once before writing files.
No arguments.
{
"type": "object",
"properties": {}
}One config type's fields as Forge edits and validates them: key, value type, default, whether it is required, description and allowed values. Long option lists are shortened; pass field to get one field with all its options.
| Argument | Type | Description |
|---|---|---|
| type* | string | A type from list_config_types, such as "custom-boss" or "fmm-pet". |
| field | string | Optional field key; returns only that field, with every allowed value. |
{
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string",
"description": "A type from list_config_types, such as \"custom-boss\" or \"fmm-pet\"."
},
"field": {
"type": "string",
"description": "Optional field key; returns only that field, with every allowed value."
}
}
}Read the current Nightbreak Forge local Lua validator/editor reference. Use this to see which hooks, fields, methods, exact values, and handle helpers the editor currently knows about. **Pass `script_type` matching the file you are working on:** `"lua-power"` (default, EliteMobs boss powers — includes context handles, `em`, and exact values), `"fmm-script"` (FMM props), or `"npc-script"` (EliteMobs NPC scripts in `npc_scripts/`), or `"mind-behavior"` (EliteMobs Mind AI programs in `behaviors/`, selected by a boss's `behavior` field), `"fmm-pet-behavior"` (FreeMinecraftModels pet behavior modules in `pet_behaviors/`, id `fmm:pet/<file name>`; loaded from FMM 2.13.0), or `"em-enchantment-script"` / `"fmm-enchantment-script"` (the Lua effect of an EliteMobs or FreeMinecraftModels enchantment in `enchantments/`). Each returns that script type's own hooks and `context.*` namespaces — the boss reference does NOT contain NPC, FMM, Mind or enchantment APIs, so query the matching type.
| Argument | Type | Description |
|---|---|---|
| scope | string | Optional scope. For lua-power: "hooks", "context", "boss", "player", "event", "script", "handles", "em", or "values". For fmm-script/npc-script: "hooks", "context", or a context namespace name (e.g. "npc", "player", "prop", "projectile"). |
| script_type | string | Which script type's reference to return. Defaults to "lua-power". |
{
"type": "object",
"properties": {
"scope": {
"type": "string",
"description": "Optional scope. For lua-power: \"hooks\", \"context\", \"boss\", \"player\", \"event\", \"script\", \"handles\", \"em\", or \"values\". For fmm-script/npc-script: \"hooks\", \"context\", or a context namespace name (e.g. \"npc\", \"player\", \"prop\", \"projectile\")."
},
"script_type": {
"enum": [
"lua-power",
"npc-script",
"mind-behavior",
"em-enchantment-script",
"fmm-script",
"fmm-enchantment-script",
"fmm-pet-behavior"
],
"type": "string",
"description": "Which script type's reference to return. Defaults to \"lua-power\"."
}
}
}The config file types Forge knows for the released plugins, with each type's plugin, label, server path, format and wiki page. Pass a type to get_config_schema or as the path when validating.
| Argument | Type | Description |
|---|---|---|
| plugin | string | Optional plugin id to filter by, such as "elitemobs", "betterstructures" or "fmm". |
{
"type": "object",
"properties": {
"plugin": {
"type": "string",
"description": "Optional plugin id to filter by, such as \"elitemobs\", \"betterstructures\" or \"fmm\"."
}
}
}Search the EliteMobs, MagmaCore, BetterStructures, FreeMinecraftModels, CannonRTP and ResurrectionChest source code for a query. By default searches every mirrored repo by file content (grep). MagmaCore contains shared core functionality (Lua engine, base entity tables, scripting helpers) used by every plugin — always check it for hooks, helpers, or context methods that feel like they should be common across plugins. FreeMinecraftModels (freeminecraftmodels) has its own LuaItemTable / LuaPropTable and prop-specific hooks. Use this BEFORE answering plugin-specific questions or generating Lua/YAML files.
| Argument | Type | Description |
|---|---|---|
| mode | string | "content" (default) greps file contents; "path" matches file paths. |
| query* | string | Text or regex to grep for. Symbol names, hook names, error messages. |
| repos | array | Optional. Defaults to every mirrored repo. |
| max_results | number | Default 20. |
| path_prefix | string | Optional. Restrict to a subdirectory like "src/main/java/". |
{
"type": "object",
"required": [
"query"
],
"properties": {
"mode": {
"enum": [
"content",
"path"
],
"type": "string",
"description": "\"content\" (default) greps file contents; \"path\" matches file paths."
},
"query": {
"type": "string",
"description": "Text or regex to grep for. Symbol names, hook names, error messages."
},
"repos": {
"type": "array",
"items": {
"enum": [
"elitemobs",
"magmacore",
"betterstructures",
"freeminecraftmodels",
"cannonrtp",
"resurrectionchest"
],
"type": "string"
},
"description": "Optional. Defaults to every mirrored repo."
},
"max_results": {
"type": "number",
"description": "Default 20."
},
"path_prefix": {
"type": "string",
"description": "Optional. Restrict to a subdirectory like \"src/main/java/\"."
}
}
}Search the Nightbreak wiki for relevant pages and snippets. Matching is by word and case-insensitive, ranked by title, page name and body. Each result has a `page` value to pass to fetch_wiki_page. Use for high-level docs, examples, and tutorials — not for symbol verification (use search_plugin_source for that).
| Argument | Type | Description |
|---|---|---|
| query* | string | Keywords to search for, such as "lua power files", "creating bosses", or "elitescript bridge". |
| max_results | number | Maximum number of results to return. Defaults to 10. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "Keywords to search for, such as \"lua power files\", \"creating bosses\", or \"elitescript bridge\"."
},
"max_results": {
"type": "number",
"description": "Maximum number of results to return. Defaults to 10."
}
}
}Validate plugin config files (YAML and Lua) with Forge's validator: required fields, allowed values, plugin rules, Lua analysis, and references between the files you send (a boss's powers, a dungeon's bosses). Send each file with its server path, such as "plugins/EliteMobs/custombosses/frost_king.yml", so Forge can tell its type. A reference to a file you did not send is reported as not found in the workspace, which here means this call's files. Up to 50 files per call. Nothing is stored.
| Argument | Type | Description |
|---|---|---|
| files* | array | The files to check together. |
{
"type": "object",
"required": [
"files"
],
"properties": {
"files": {
"type": "array",
"items": {
"type": "object",
"required": [
"path",
"content"
],
"properties": {
"path": {
"type": "string",
"description": "Server path or plugin-relative path, such as \"plugins/EliteMobs/powers/frost_nova.lua\"."
},
"content": {
"type": "string",
"description": "The full file content."
}
}
},
"description": "The files to check together."
}
}
}Validate a draft Lua script against the local Nightbreak Forge Lua validator. Use this before finalizing generated Lua files to catch unknown helpers, invalid fields, or malformed file structure. **IMPORTANT: pass `script_type` matching the file you are generating.** Use `"lua-power"` (default) for EliteMobs custom-boss Lua powers (files in `powers/`), `"fmm-script"` for FreeMinecraftModels prop scripts (files in `scripts/`), `"npc-script"` for EliteMobs NPC scripts (files in `npc_scripts/`), `"mind-behavior"` for Mind programs and modules (files in `behaviors/`), `"fmm-pet-behavior"` (FreeMinecraftModels pet behavior modules in `pet_behaviors/`, id `fmm:pet/<file name>`; loaded from FMM 2.13.0), or `"em-enchantment-script"` / `"fmm-enchantment-script"` for EliteMobs or FreeMinecraftModels enchantment scripts (files in `enchantments/`). They have different valid hook names and context namespaces — passing the wrong type produces false-positive errors (e.g. `on_right_click` is valid for `fmm-script`, `on_npc_interact` for `npc-script`, but both are rejected for `lua-power`).
| Argument | Type | Description |
|---|---|---|
| path | string | Optional path such as "powers/example.lua" or "scripts/fireball_wand.lua" for reporting context. |
| content* | string | Full Lua script file content to validate. |
| script_type | string | Which validator ruleset to apply. `"lua-power"` for EliteMobs boss powers, `"fmm-script"` for FMM prop scripts, `"npc-script"` for EliteMobs NPC scripts, `"mind-behavior"` for behaviors/ programs and modules, `"fmm-pet-behavior"` (FreeMinecraftModels pet behavior modules in `pet_behaviors/`, id `fmm:pet/<file name>`; loaded from FMM 2.13.0). Defaults to `"lua-power"`. |
{
"type": "object",
"required": [
"content"
],
"properties": {
"path": {
"type": "string",
"description": "Optional path such as \"powers/example.lua\" or \"scripts/fireball_wand.lua\" for reporting context."
},
"content": {
"type": "string",
"description": "Full Lua script file content to validate."
},
"script_type": {
"enum": [
"lua-power",
"npc-script",
"mind-behavior",
"em-enchantment-script",
"fmm-script",
"fmm-enchantment-script",
"fmm-pet-behavior"
],
"type": "string",
"description": "Which validator ruleset to apply. `\"lua-power\"` for EliteMobs boss powers, `\"fmm-script\"` for FMM prop scripts, `\"npc-script\"` for EliteMobs NPC scripts, `\"mind-behavior\"` for behaviors/ programs and modules, `\"fmm-pet-behavior\"` (FreeMinecraftModels pet behavior modules in `pet_behaviors/`, id `fmm:pet/<file name>`; loaded from FMM 2.13.0). Defaults to `\"lua-power\"`."
}
}
}