← Presidium Image Studio

Image Studio for agents

Image Studio is an MCP server as well as an app. Claude, Cursor, VS Code and any other Model Context Protocol client can make, edit, repair, upscale and search images on your own machine, offline, with the same rules as the window: quality is a setting, never a consequence; every estimate is measured; nothing is uploaded.

Install once: pipx install presidium-imagestudio, then point your client at the command imagestudio serve. The Windows app from the Store or the installer is the same server: ImageStudio.exe cli serve (the exact path is shown under Settings → About in the app).

Client configuration

ClientWhereConfig
Claude Desktopclaude_desktop_config.json (Windows: %APPDATA%\Claude, macOS: ~/Library/Application Support/Claude)
{ "mcpServers": { "imagestudio":
    { "command": "imagestudio", "args": ["serve"] } } }
Claude Codein the project
claude mcp add imagestudio -- imagestudio serve
Cursor.cursor/mcp.json
{ "mcpServers": { "imagestudio":
    { "command": "imagestudio", "args": ["serve"] } } }
VS Code (agent mode).vscode/mcp.json
{ "servers": { "imagestudio":
    { "type": "stdio", "command": "imagestudio", "args": ["serve"] } } }

Ready-made files: examples/mcp in the repository.

Tools

ToolWhat it does
capabilities()Hardware, installed models and how they fit, expected minutes per preset (calibrated on this machine), tool models, licences, policy. Call it first.
write_prompt(brief, current_prompt?, model?)A plain-words brief becomes a prompt tuned to the model that will paint it; the local language model writes it.
generate(prompt, preset="best", …)Queues a render and returns a job id with an honest estimate at once. best is full quality and slow on CPUs by design; balanced and fast only when the user accepts the trade-off.
job_status(id) · job_result(id)Poll every 10-15 s, then fetch the PNG path (or base64). Never block inside one call.
variations · editRe-roll keeping the composition (strength ≤ 0.45 on 4-step models), or change by instruction, optionally inside a mask.
fix_faces · upscale · remove_backgroundRepair faces (one render per face), 4× or 16× with Real-ESRGAN, transparent cutouts.
describe(image, task)Captions, alt text, tags, a prompt that would recreate the image, or your own question, with a local vision model.
search_images(query)Gallery images ranked by meaning (CLIP), so an agent can find “the lighthouse one” without listing everything.
download_model(name, consent)Reports size and licence first; downloads only with consent. The only tool that reaches the internet, and only for pinned, hash-verified files.

Every tool declares MCP annotations (read-only, destructive, idempotent, open-world), so clients that gate on them classify the server correctly.

A typical flow

  1. capabilities(). If no model is installed, tell the user the size and licence, then download_model(…, consent=true).
  2. write_prompt("my cat on a spaceship, movie-poster feel") and show the user the prompt.
  3. generate(prompt), quote the estimate, poll job_status, then job_result.
  4. Refine: fix_faces if faces look wrong, upscale for print, variations for alternatives.

Who renders, and the window

One process renders at a time. If the Image Studio window is open, it renders and the agent's jobs appear in its queue and gallery; if the agent's client starts imagestudio serve first, that server renders and the window shows the queue when opened later, taking over once the worker is idle. Pause in the window holds every submitter, agents included. Everything shares one gallery, one calibration, one set of models.

What to tell users about time

Quote capabilities(), which carries the calibrated numbers for the machine the server runs on. For scale: on a 16 GB laptop without a discrete GPU, FLUX.1-schnell q5 at 1024² took about 22 minutes on fast and just under two hours on best with the CPU build; the Vulkan build was 2.4× faster on the same integrated GPU. Describe takes seconds; the prompt assistant 20-40 s once warm.

Presidium Image Studio is free software (Apache-2.0), made with ♥ by Ratul Roy (royal-programmer). "Presidium" and "Presidium Image Studio" are trademarks; see TRADEMARK.md.