Skip to main content
Glama
JupiterianSoul

Abiotic Factor Mod Editor MCP server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ABIOTIC_MCP_PORTNoSet ABIOTIC_MCP_PORT to change the listener port for the Abiotic Factor Mod Editor MCP server. Defaults to 47821.47821

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
editor_statusA

Report whether the Mod Editor is connected, its version and the open mod.

list_modsA

List local mod projects (works without the editor open).

list_assetsC

List assets under a content path, such as /Game/Blueprints/Items or /MyMod.

search_assetsC

Find assets under a path by package path substring and/or exact class name.

read_assetB

Read an asset's properties as JSON. DataTables return their rows.

list_datatablesB

List DataTable assets, optionally filtered by path substring.

read_datatableC

Read rows from a DataTable. Pass row names, or page with offset and limit.

list_row_asset_typesA

List row asset classes a mod can create, such as RecipeModRowAsset.

upsert_datatable_rowsA

Create or update rows in the active mod. Call save_all afterwards.

Mods add one asset per row, stored at //DataTables//<row_name>. Each entry is {"row_name": str, "override_existing_row": bool, "values": {...}}, with values in the snake_case form that read_asset returns.

Fields left out of a new row keep struct defaults, not vanilla values. To change part of a vanilla row, use clone_row with override_existing_row=True and the same row name, then set only what differs. When a row refers to another row in this mod, use <mod_prefix>_<row_name> (see editor_status).

clone_rowC

Copy a vanilla row into a new row asset in the active mod, as a starting point.

duplicate_assetB

Copy an asset into the active mod. The destination must be inside that mod.

set_propertiesC

Set properties on an asset in the active mod. Call save_all afterwards.

save_allB

Save every changed asset in the active mod.

validate_modB

Run the editor's asset validators over the active mod.

list_templatesB

List mod templates the editor exposes to scripting.

create_modC

Create a mod project from a template, if the editor exposes templates to scripting.

package_modA

Save and validate the active mod, open the upload panel, and explain the next step.

Packaging happens inside the editor's upload flow, so this stops before it. It never creates a mod.io page or uploads anything.

open_mod_panelA

Open the editor's Mod Management Tool. It presses nothing and uploads nothing.

check_blueprint_symbolA

Check a class or function against Deep Field's Blueprint filter.

Check before generating Blueprint logic and never use a blocked symbol. Example: class_path="/Script/Engine.GameplayStatics", function="GetPlayerController".

run_pythonA

Run Python inside the editor, with unreal imported, and return its output.

This is an escape hatch and is not limited to the active mod. Use it for inspection and for gaps in the other tools. Do not use it to bypass the write guards, delete assets, or upload to mod.io without the user asking.

get_logC

Tail the editor log, with auth codes and API keys removed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.2/5.0

Scored across 21 tools

Disambiguation4/5

Most tools have clearly distinct purposes, especially the write-path tools (upsert_datatable_rows, clone_row, duplicate_asset, set_properties). There is some overlap between list_datatables and list_assets/search_assets, and between read_asset and read_datatable, though descriptions mostly clarify the boundaries.

Naming Consistency4/5

The set predominantly follows a snake_case verb_noun convention (list_assets, read_asset, create_mod, validate_mod). Minor deviations like editor_status (noun phrase) and verb-only names save_all/package_mod are readable but slightly inconsistent.

Tool Count3/5

At 21 tools, the surface is on the heavy side for a mod editor, falling into the 16-25 borderline zone. Most tools appear purposeful, but some listing/reading variants could potentially be consolidated.

Completeness3/5

Core workflows are covered: listing, reading, writing datatable rows, cloning, duplicating, saving, validating, packaging, and a Python escape hatch. However, there are notable gaps around deletion/removal of rows or assets, and no explicit mod metadata editing beyond creation.

Maintenance

ActivityMaintained
ResponsivenessNo issues