trenchbroom-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ERICW_TOOLS_DIR | No | Directory containing ericw-tools binaries (qbsp, vis, light). If not set, tools are looked up on PATH. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| map_overviewA | Summarize a .map file: entity/brush counts, bounds, format, TrenchBroom layers/groups, textures in use, and entity class histogram. |
| list_entitiesA | List entities with index, classname, targetname, origin, brush count, and bounds. Optionally filter by classname substring or a property key/value. |
| get_entityA | Full detail for one entity: all properties, brush list with per-brush bounds and face count. |
| add_entityA | Add a point entity (e.g. a light, monster, item). Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| set_entity_propertiesA | Set and/or remove properties on an existing entity. Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| delete_entityA | Delete an entity (and all its brushes). Refuses to delete worldspawn. Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| add_brush_boxA | Add an axis-aligned box brush. Defaults to worldspawn (entity 0); pass entity_index to add to a brush entity like func_door. Matches the map's existing texture format; on an empty map inside a Shogo workspace it writes Standard, which is the only format that game's converter reads. Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| delete_brushA | Delete one brush from an entity. Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| translate_entityA | Move an entity by a delta: shifts all brush geometry (keeping textures locked in Valve format) and/or the origin property. Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| undo_last_editA | Restore the map to its state before the most recent edit made by this server (snapshot-based; one step per call). Writes the file; TrenchBroom-HL reloads it automatically, but asks first - and defaults to KEEPING the editor version - if the document has unsaved edits. |
| list_backupsA | List snapshot backups (made automatically before every edit) for a map. |
| render_previewA | Render a 2D orthographic preview of the map as an SVG file: brush footprints (worldspawn gray, brush entities orange) and point entities (blue dots with labels). Views: top (X/Y), front (X/Z), side (Y/Z). |
| compile_mapA | Compile a .map with ericw-tools and report what the compiler said. Runs qbsp by default; pass stages for a full build. Detects leaks, which the compiler reports as a warning and still exits successfully, and returns the coordinate the leak escaped from. |
| compile_shogo_mapA | Compile a .map for Shogo: Mobile Armor Division and report what the compiler produced. This is a DIFFERENT toolchain from compile_map - Shogo uses the SDK's Processor.exe (.map -> .ed -> .dat), not ericw-tools, and the two are not interchangeable. Drives the Shogo mapping kit, so it inherits the compiler's documented traps rather than repeating them. Reports light map nodes, which is the number that says whether the world is lit or will render black. |
| launch_mapA | Launch a compiled map in a Quake engine. Copies the .bsp into the game's maps directory, starts the engine on that map, and reports anything the engine said if it refused to start. Compile the map first: the engine loads the .bsp, not the .map. |
| fgd_classesA | List entity classes defined in an FGD file (name, type, description). Use this to learn what entities a game supports. |
| fgd_classA | Full definition of one FGD entity class with inherited properties and spawnflags resolved from its base classes. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/KyodanCFG/trenchbroom-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server