The first fully agentic Photoshop-class editing experience. External AI agents compose image edits through 89 MCP tools and submit proposals for human review.
No token to paste. The first time a tool needs your account, Claude Code opens a PaintBox approval page; click Approve once and it refreshes on its own. From a terminal, run scripts/paintbox login. Revoke any agent from Account → Connected Agents.
1. Auth
Add the server with no header. The first tools/call opens a PaintBox approval page.
2. Initialize
POST /api/mcp — JSON-RPC "initialize". Returns a session ID header.
3. Discover
Call list_documents to see what the user has open in their browser.
4. Load
Call set_active_document with a document ID. Context is loaded from the DB.
5. Edit
Call editor tools: set_selection, fill, create_layer, set_opacity, etc.
6. Finish
Call finish with an interpretation explaining what you did and why.
7. Deliver
Call get_proposal. This deposits the proposal in the editor's inbox.
8. Review
The user sees the proposal in their browser with Accept / Reject buttons.
set_layer_styles, rasterize_styles, convert_to_smart_object, replace_smart_object_source, set_opacity, set_visibility, set_blend_mode, rename_node, reorder_node, create_layer, duplicate_layer, import_raster, add_text, set_text, group_layers, ungroup_layers, set_locked, set_clipping, set_mask_from_selection, clear_mask, merge_down, merge_group, merge_visible, flatten
set_selection, clear_selection, invert_selection, modify_selection, select_all, grow_selection, named_selection, select_color_range
create_pattern, erase_selection, fill, fill_gradient, fill_shape, add_vector, rerender_vector
set_adjustment, create_adjustment_layer, apply_preset
apply_filter
set_transform, align_nodes, distribute_nodes, set_crop, resize_canvas, resample_document, flip
trim_to_content, remove_background, create_document_from_asset
set_export_spec, delete_export_spec, apply_export_preset, rename_document, export_bundle
make_cutout, make_favicon_package, uniform_asset, apply_proposal_headless, sync_develop_settings
generate_image, request_image_edit, restyle_layer, generative_expand
compare_revisions, get_history
list_variants, create_variant, create_variant_grid, switch_variant, compare_variants
describe_document, inspect_layer, inspect_channel, get_headless_job
set_guides
apply_edit, ask_clarification, finish
list_documents, set_active_document, set_document_context, list_skills, describe_skill, run_skill, get_proposal
Skill tools are per-user and dynamic: a signed-in tools/list also carries each of the user's pinned skills, up to 10, as skill_<slug> with that skill's own input schema. They are not in the tool count. list_skills and run_skill reach every skill, pinned or not.
JSON-RPC 2.0 endpoint — 82 editor tools + 7 session tools. Signs in with OAuth; no token to paste.
Discovery manifest with tools, workflow, and install command.
Skills, interfaces, and provider metadata.
Machine-readable REST API description.
LLM-readable summary of the tool surface and workflow.
Every tool with its description and parameters, generated from the registry.
One index of the MCP endpoint, its auth, the OpenAPI spec and these docs.
Discovery URLs for AI crawlers.