Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
FACTORIO_TAKEOVERNoSet to '1' to take over character even if another session holds it0
FACTORIO_CHARACTERNoThe character this instance controlsagent
FACTORIO_RCON_HOSTNoRCON host127.0.0.1
FACTORIO_RCON_PORTNoRCON port27015
FACTORIO_MCP_WAIT_SNoDefault wait_s for job tools30
FACTORIO_RCON_PASSWORDYesRCON password (required)

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
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
statusA

Connect (if needed) and report the connection, your character's binding, and a summary of its surroundings.

look_aroundB

Your character's position, inventory, equipment and jobs, plus what it knows around it: players and other agent characters in view, resource patches and trees on explored ground, your force's buildings with status counts, visible enemies, research, power and top production.

check_inventoryC

Your character's inventory and equipment.

inspect_entityA

Details of entities near map positions (searched within 1.5 tiles; explored ground only; other forces only while visible): type, status, recipe, crafting progress, inventories, fuel burning, energy buffer (kJ), belt contents, fluids, and for mining drills the ore left in their mining area. Up to 16 per call.

scan_areaB

ASCII tile grid of a square area: one character per tile, rows north to south. Unexplored tiles are '?'. The legend explains every symbol (uppercase = resources, lowercase = your force's buildings, @ = you).

describe_prototypeA

Everything about up to 10 names at once — the item (stack size, fuel value), the entity it places (footprint, power use in kW, crafting/mining speed, mining area, drill drop offset, inserter pickup/drop offsets, module slots, belt speed) and the recipe that makes it (ingredients, products, time, unlocked or not).

analyze_factoryB

Machines of your force in an area (explored ground) grouped by problem — no power, low power, no fuel, missing ingredients (with which ingredient when detectable), output full, depleted ore, idle — plus power summary.

can_placeA

Check whether items could be placed at explored positions right now (no side effects). Up to 24 placements per call. Answers yes, or no with the blocker when identifiable.

find_buildable_areaA

Nearest width x height rectangle of free land (no water, cliffs or entities; trees allowed and counted) on explored ground near a point.

production_statsA

Your force's item and fluid production and consumption on your surface, per minute over a time window (like the production statistics window), plus all-time totals.

list_trainsB

Trains on your surface (id, state, mode, cars, position, station, schedule, cargo) and the known train stop names.

list_blueprintsB

Blueprints your character carries (inventory and books, nested books included).

read_blueprintA

Decode a carried blueprint by label into relative entity positions and its item bill (read in windows).

import_blueprintA

Decode a blueprint export string into relative entity positions (top-left entity at 0,0), directions, recipes and the item bill. Does not build.

export_blueprintA

Capture your force's buildings in an explored rectangle (max 200x200 tiles) as a blueprint export string, with entity counts and the map anchor of its top-left entity.

read_chatB

Chat messages since your last read (or since since_id): players and other agents; your own lines excluded.

get_eventsC

Events since your last read (or since since_id): your jobs finishing or failing, your character attacked or killed, research finished, supply warnings of duties.

wait_for_eventsA

Block until new chat or a new event arrives, or timeout_s passes (polls about twice per second).

sayA

Say something in game chat as your character.

start_researchC

Queue a technology for research for your force.

equipA

Move a gun, ammo and/or armor from your main inventory into your equipment slots.

exit_vehicleA

Leave the vehicle you are in.

set_train_scheduleB

Set a train's schedule (existing stop names with wait conditions) and switch it to automatic.

respawnA

Create a new body for your character at the spawn point (after death), with the scenario's respawn kit.

walk_toA

Walk to a map position with the game pathfinder at normal walking speed. The goal must be on explored ground or within the exploration radius (default 64 tiles) of you.

drive_toA

Board the nearest free car (fuelling it from your inventory if needed) and drive to a position.

follow_playerA

Persistent job: follow a player at a distance until cancelled. Replaces your current jobs.

mineA

Mine by hand (vanilla mining time and reach): either the minable thing at x,y, or count mining operations of a resource name ("iron-ore", "coal", "stone", "tree", "rock", ...) found on explored ground within 80 tiles.

place_entityA

Place a building from your inventory (walks within build range; normal placement rules).

craft_itemsA

Hand-craft with your character's crafting queue (real crafting time; missing intermediates are queued too).

insert_itemsB

Move items from your inventory into the entity at x,y (walks within reach).

extract_itemsA

Take items out of the entity at x,y into your inventory: specific counts, or all=true (walks within reach).

set_recipeB

Set the recipe of the crafting machine at x,y (walks within reach).

rotate_entityB

Rotate the entity at x,y one step, or to a 16-way direction (walks within reach).

build_planA

Build many entities as ONE job: steps are placed in order (walking within build range, items from your inventory, normal placement rules), each optionally setting a recipe and inserting items. Failed steps are reported and skipped unless stop_on_error. auto_craft hand-crafts missing placeable items first. dry_run=true only checks the plan (items, recipes, placement, overlaps) without building.

build_blueprintA

Build a whole blueprint as ONE job, anchored so its top-left entity lands at (anchor_x, anchor_y): from an export string, or a carried blueprint by label. Up to 1000 entities; per-step failures are reported.

run_planA

Queue a sequence of actions (craft, insert, extract, mine, place, set_recipe, rotate, walk_to) as chained jobs. If one fails, the rest of the chain is cancelled. Waits for the last one up to wait_s.

deconstructA

Mine your force's own buildings back into your inventory (vanilla mining time): the nearest one at x,y, or all within area_radius (max 10 tiles, 50 buildings).

fightA

Fight visible enemies around a point with your equipped gun (walks into range, shoots, next target); anchored to the radius; retreats below flee_below health.

defend_areaA

Persistent job: guard an area — shoot enemies that come near, refill ammo turrets and repair structures from your inventory — until cancelled. Replaces your current jobs.

keep_fueledB

Persistent job: keep burner machines around a point fuelled from your inventory until cancelled. Replaces your current jobs.

job_statusA

Status of one of your jobs, or (without job_id) your running job, queue and recently finished jobs.

job_waitC

Wait up to timeout_s for one of your jobs to finish.

job_cancelA

Cancel one of your jobs, or all of them (all=true), stopping your character.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.1/5.0

Scored across 44 tools

Disambiguation4/5

Most tools target clearly distinct resource+action pairs (mine vs deconstruct, insert_items vs extract_items, build_plan vs run_plan). A few overlaps exist, particularly status/look_around/check_inventory all reporting character state and read_blueprint/import_blueprint both decoding blueprints, but the descriptions provide enough distinction.

Naming Consistency3/5

The majority use a readable verb_noun snake_case pattern, but there are notable deviations: status is a bare noun, job_cancel/job_status/job_wait put the object first, and production_stats is noun_noun. The style is still consistent enough to be readable, but not uniform.

Tool Count2/5

44 tools is well above the 25+ threshold and feels heavy even for a complex game agent. Many tools are granular and individually useful, but the surface could likely be consolidated (e.g. unified job management or movement tools) without losing capability.

Completeness4/5

The tool set covers character state, movement, mining, building, blueprints, inventory, combat, trains, research, jobs, events, and factory analysis. Minor gaps exist—such as no dedicated manual repair tool or broader logistics/rail construction tools—but the core gameplay workflows are well supported.

Maintenance

ActivityMaintained
ResponsivenessNo issues