Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
CODEX_BINNoPath to the Codex CLI binary. Use this when the `codex` executable is not available on `PATH`.
CODEX_HOMENoCodex home directory; generated PNGs are picked up from `$CODEX_HOME/generated_images/<thread>/`. If unset, the Codex CLI default is used.

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
generate_imageB

Generate one image with Codex's built-in image tool on the signed-in ChatGPT plan.

Takes ~30-60 s and counts against the plan's Codex usage limits. output_path: absolute path ending in .png; existing files are kept unless overwrite=true. reference_images: local image paths Codex should follow for design, palette or style. reasoning_effort: Codex effort before calling the tool ("low" is fastest).

generate_imagesB

Generate several images in parallel (e.g. every pose of a sprite set).

jobs: list of {"prompt", "output_path", optional "reference_images" and any per-job override of the shared options}. concurrency: parallel Codex runs (default 3; higher may hit rate limits). Returns one result per job in order; failed jobs carry "error".

edit_imageA

Edit only one region of an image; every pixel outside it stays identical to the original.

Pass exactly one region:

  • box: [x0, y0, x1, y1] in the image's pixels (x1, y1 exclusive).

  • mask_path: a PNG the same size as the image; white (or opaque white) pixels may change. Codex redraws the picture from the original and the mask (~30-60 s, plan usage limits); the result is aligned back onto the original and only the region's pixels are taken. background: flat colour a transparent original is shown on; inside the region that colour is keyed back to transparency (tolerance = RGB distance). The result reports alignment (scale, origin, error) and a warning when the match is poor; the full generated image stays at raw_path.

normalize_framesA

Turn separately generated frames into one consistent sprite set (no Codex call, instant).

Frames need a transparent background (generate them with chroma_key). Each frame is scaled so the character's body area (ignoring thin parts like a pick handle) matches reference_path, which keeps the same size whether the pose stands, crouches or lunges. Frames are anchored on a shared feet baseline and centre on one canvas, given hard alpha, and snapped to up to palette_size of the reference's own colours (0 keeps the generated colours). Writes <output_dir>/.png and returns each frame's scale and body height, the shared canvas size and the anchor (feet point) for the engine's sprite offset.

login_statusA

Report whether Codex is signed in and which ChatGPT plan it uses (plus, pro, ...).

start_device_loginA

Start a ChatGPT device-code login for Codex and return the URL and one-time code.

The user opens the URL, enters the code and approves; then call login_status to confirm.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 6 tools

Disambiguation4/5

Each tool targets a distinct action: single generation, batch generation, region edit, frame normalization, and two login operations. The only near-pair is generate_image vs generate_images, but the singular/plural framing plus the jobs/concurrency description make the boundary clear. login_status vs start_device_login is also cleanly separated by status-vs-initiate semantics.

Naming Consistency4/5

Consistent snake_case with verb_noun ordering (generate_image, edit_image, normalize_frames, start_device_login). The one minor deviation is login_status, which is noun-only rather than a verb form like check_login_status, but it stays readable and predictable.

Tool Count5/5

Six tools is well-scoped for an image generation/editing server: generation, batching, editing, post-processing, and login are each covered once. No tool feels redundant or padded.

Completeness3/5

The core lifecycle (login, generate, batch generate, edit, normalize frames) is covered, but normalize_frames' description tells users to 'generate them with chroma_key' — a tool that does not exist in this set, leaving a dead end for transparency generation. There is also no way to inspect an existing image or verify plan usage despite usage limits being emphasized throughout.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues