photoshop-mcp-pro
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@photoshop-mcp-pro create a new document 800x600 with a white background"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Photoshop MCP Pro
A professional Model Context Protocol server that lets AI assistants drive Adobe Photoshop directly — create and edit documents, manage layers, run filters and adjustments, build shapes and text, and apply higher-level design intelligence like palette generation, font pairing, and effect recipes.
It runs locally over stdio and controls Photoshop by executing ExtendScript through a platform-specific executor (macOS and Windows supported). Photoshop is launched lazily on the first tool call, so the server starts instantly and only opens Photoshop when you actually use it.
Features
Core editing tools
Document — create, open, save, export, resize, crop, flatten
Layer — create, duplicate, group, reorder, mask, blend modes, opacity
Selection — rectangular/elliptical, by color, invert, feather, modify
Transform — move, scale, rotate, skew, flip
Shape & Path — vector shapes, paths, fills, strokes
Text — text layers, fonts, alignment, color
Image — adjustments, filters, blur, sharpen, noise
Adjustment — brightness/contrast, hue/saturation, levels, curves, color balance
Filter — gaussian/motion blur, sharpen, noise, and more
Color — foreground/background, swatches, sampling
Guide — guides and rulers
Smart Object — create and manage smart objects
History — undo/redo, snapshots
Style — layer styles (drop shadow, stroke, glow, etc.)
Export — PNG, JPEG, and document export
Workflow — multi-step composite operations
Script — run arbitrary ExtendScript
Design intelligence
Palette — generate palettes from mood, image, or brand
Typography — suggest font pairings, install fonts, auto-size
Recipe — 12 effect recipes with mood mapping
Analysis — automatic design scoring (color, contrast, typography, composition) via
ps_review
Resources & prompts
Built-in resources for presets, palettes, fonts, recipes, and design knowledge
A
create-designprompt to kick off guided design work
Related MCP server: Photoshop MCP Windows-First
Requirements
Adobe Photoshop (with scripting enabled — the default)
Node.js >= 18
macOS or Windows
Installation
git clone https://github.com/ayushnagvanshi101098-ship-it/photoshop-mcp-pro.git
cd photoshop-mcp-pro
npm install
npm run buildThis compiles the TypeScript in src/ to dist/.
Usage
Add the server to your MCP client. The entry point is dist/index.js.
Claude Desktop / Claude Code
{
"mcpServers": {
"photoshop": {
"command": "node",
"args": ["/absolute/path/to/photoshop-mcp-pro/dist/index.js"]
}
}
}Restart your client. Photoshop opens automatically the first time a tool is called.
Development
npm run dev # tsc --watch — rebuild on change
npm run build # one-off build
npm start # run the compiled serverSource layout:
src/
index.ts # server entry — registers tools, resources, prompts
platform/ # OS detection + ExtendScript executors (macOS / Windows)
tools/ # MCP tool definitions
scripts/ # ExtendScript generators per tool category
resources/ # presets, palettes, fonts, recipes, design knowledge
prompts/ # design prompts
utils/ # color math, design analyzer, font manager, loggingHow it works
Each tool builds an ExtendScript snippet and hands it to a platform executor, which runs it inside Photoshop and returns the result. The connection layer handles lazy launch, reconnection, and relaunch if Photoshop quits mid-session.
License
MIT © Ayush Nagvanshi
Available Tools
32 toolsps_add_adjustmentAdd Adjustment LayerA
Creates a NON-DESTRUCTIVE adjustment layer above the active layer. Supports curves, levels, hue-saturation, color-balance, gradient-map, solid-color, photo-filter, brightness-contrast, and invert. Supply the type and its specific params object.
Inputs: type (required), params.
ps_alignAlign LayerA
Aligns a layer relative to the document bounds. Use center-both to perfectly center a layer, or pick an edge alignment.
Inputs: alignment (required), layerName.
ps_apply_filterApply FilterADestructive
Applies a destructive filter to the active layer. Supported: gaussian-blur, motion-blur, sharpen (unsharp mask), noise (add noise), radial-blur. Supply the filter type and its specific params object.
Inputs: type (required), params (required).
ps_apply_recipeApply Effect RecipeA
Apply a pre-built visual effect recipe to the active layer. Choose a specific recipe by name, or provide a mood to get the best matching recipe automatically. Recipes combine multiple layer styles and adjustments for polished results in one call.
Inputs: recipe, mood, intensity, color, +1 more.
ps_batchBatch OperationsADestructive
Executes multiple tool operations in sequence within a single call. Each operation specifies a tool name and its arguments. Results are returned as a combined array. Use this to chain several steps without round-trips.
Inputs: operations (required).
ps_colorColorA
Manages foreground and background colors. "set-foreground" / "set-background" set the app color (provide color). "swap" swaps foreground and background. "sample-pixel" reads the color at the given x,y coordinate.
Inputs: action (required), color, x, y.
ps_create_designCreate DesignA
HIGH-LEVEL workflow tool that creates an entire design in a single call. Specify a document preset, background (solid/gradient/image), an array of layers (text, image, shape), and optional guides. Generates and executes ONE script for the whole composition. Perfect for quickly scaffolding social media posts, thumbnails, or print layouts.
Inputs: preset (required), background (required), layers (required), guides.
ps_create_documentCreate DocumentA
Creates a new Photoshop document. Use a preset for common social-media / print sizes, or supply custom dimensions. Optionally fill a background color and add guide presets.
Inputs: width, height, resolution, colorMode, +4 more.
ps_create_layerCreate LayerB
Creates a new layer or group in the active document. Optionally positions it below a named layer.
Inputs: type (required), name, below.
ps_create_textCreate Text LayerA
Creates a text layer with full typographic control in a single call — font, size, color, alignment, tracking, leading, and warp. Use type "point" for single-line text or "area" for a bounded text box.
Inputs: text (required), x (required), y (required), type (required), +9 more.
ps_draw_shapeDraw ShapeA
Draws a vector shape on a new shape layer. Supports rectangle, rounded-rectangle, ellipse, line, polygon, star, and custom-path. Supply the type and its specific params.
Inputs: type (required), params (required).
ps_execute_scriptExecute ExtendScriptADestructive
Runs arbitrary ExtendScript code directly in Photoshop. This is the escape hatch for anything the other tools cannot do. The script string is passed to Photoshop as-is. Use with care — there are no guardrails. Returns whatever the script evaluates to.
Inputs: script (required).
ps_exportExport DocumentA
Exports the active document to a file. Supports PNG (with optional scaling), JPEG (with quality), PSD, and TIFF. Provide an absolute file path.
Inputs: format (required), path (required), quality, scale.
ps_get_document_infoGet Document InfoARead-only
Returns the full state of the active document — dimensions, resolution, color mode, layer count, active layer, and selection status. Use this to orient yourself before making changes.
Inputs: no named parameters.
ps_get_layersGet LayersARead-only
Returns the full layer tree of the active document as JSON, including names, types, visibility, opacity, blend modes, and bounds. Use this to understand the document structure before editing.
Inputs: no named parameters.
ps_guideGuidesA
Manages document guides. "add" places a single guide at a position. "add-grid" creates an evenly-spaced grid of guides. "remove-all" clears all guides. "get" returns current guide positions.
Inputs: action (required), orientation, position, columns, +2 more.
ps_historyHistoryADestructive
Manages document history. "undo" steps backward (default 1 step), "redo" steps forward, "get-states" returns the list of history states. Use undo to recover from mistakes.
Inputs: action (required), steps.
ps_manage_layersManage LayersADestructive
Performs a layer operation: delete, duplicate, merge-visible, flatten, rasterize, group, ungroup, lock, unlock, show, or hide. Targets the named layer or the active layer if none is specified. This single tool replaces 10+ individual layer-action tools.
Inputs: action (required), layerName.
ps_maskLayer MaskADestructive
Creates or manages layer masks. "create" adds a reveal-all mask, "create-from-selection" adds a mask from the current selection, "apply" merges the mask into the layer, "delete" removes it.
Inputs: action (required).
ps_palettePaletteA
Generate and work with color palettes. Four actions: "generate" — create a harmony from a base hex color; "from-mood" — pick a curated palette for a design mood; "from-image" — extract dominant colors from the active document/layer; "from-brand" — return the official palette for a known brand (jaipuria, rentdraft).
Inputs: action (required), baseColor, harmony, mood, +3 more.
ps_place_imagePlace ImageA
Places an external image file into the active document. By default it is placed as a Smart Object for non-destructive editing. Optionally set position and dimensions.
Inputs: filePath (required), x, y, width, +2 more.
ps_reorder_layerReorder LayerA
Moves a layer to a new position in the layer stack. Use "top"/"bottom" for absolute positioning, or "up"/"down" for relative moves. Optionally specify a targetLayer for relative placement.
Inputs: position (required), layerName, targetLayer.
ps_resizeResize Canvas or ImageADestructive
Resizes the canvas (adds/removes space around content) or the image (resamples all content). Use "canvas" to change document bounds without scaling, or "image" to scale everything.
Inputs: action (required), width (required), height (required), resampleMethod.
ps_reviewReview DesignARead-only
Takes a screenshot of the current document via ExtendScript and returns it as base64-encoded image data alongside the full document state and a design analysis score (0-100) covering color harmony, contrast/WCAG, typography hierarchy, and composition balance. This is the visual feedback loop tool — use it after making changes to verify the result looks correct.
Inputs: no named parameters.
ps_save_documentSave DocumentA
Saves the active document to disk. Supports PSD, JPEG, and PNG formats. For JPEG, quality ranges from 1 (lowest) to 12 (highest).
Inputs: path (required), format (required), quality.
ps_selectSelectA
Creates or modifies selections. Use "all" to select everything, "none" to deselect, "inverse" to invert, or create geometric / color-range selections. For rectangle/ellipse, provide bounds; for color-range, provide a sample color and fuzziness.
Inputs: type (required), params.
ps_set_layer_propertiesSet Layer PropertiesA
Sets opacity, blend mode, and/or fill opacity on the active layer. Consolidates what was previously three separate tools.
Inputs: opacity, blendMode, fillOpacity.
ps_set_layer_styleSet Layer StyleA
The POWER tool for layer effects. Supply any combination of effects — dropShadow, innerShadow, outerGlow, innerGlow, bevelEmboss, gradientOverlay, patternOverlay, satin, colorOverlay, stroke — and they are all applied in a single call. Omitted effects are left unchanged. This replaces a dozen individual effect tools.
Inputs: dropShadow, innerShadow, outerGlow, innerGlow, +6 more.
ps_smart_objectSmart ObjectA
Manages Smart Objects. "convert" converts the active layer to a Smart Object for non-destructive editing. "place-file" embeds an external file as a new Smart Object layer.
Inputs: action (required), filePath, x, y.
ps_transformTransform LayerB
Applies a transform to the active (or named) layer. Supports move, scale, rotate, flip-horizontal, flip-vertical, and fit-to-document — all in one tool. Supply only the parameters relevant to your action.
Inputs: action (required), layerName, x, y, +3 more.
ps_typographyTypographyA
Font pairing, installation, and size recommendations. Three actions: "suggest" — get a curated font pairing for a mood + purpose combination; "install" — download and install a Google Fonts family to the system; "auto-size" — calculate optimal font sizes for a document (reads dimensions if not provided).
Inputs: action (required), mood, purpose, fontName, +3 more.
ps_update_textUpdate Text LayerA
Updates a single property on the active text layer — content, font, size, color, alignment, tracking, leading, or warp. Targets the currently active layer, so select the text layer first.
Inputs: property (required), value.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 32 tools
Most tools have distinct purposes, but there are clear overlaps: ps_export and ps_save_document both save files with overlapping formats, and ps_place_image and ps_smart_object's 'place-file' action both place external images as smart objects. This could cause an agent to misselect.
All tools start with 'ps_', but naming conventions vary: many use verb_noun (e.g., ps_create_document), but some are single verbs (ps_batch, ps_resize) or nouns (ps_color, ps_history, ps_mask). This inconsistency makes the set less predictable.
At 32 tools, the set is on the high side for an MCP server. While Photoshop is complex and many tools are justified, several tools overlap (e.g., export/save), suggesting some could be consolidated. The count feels slightly bloated.
The tool set covers a wide range of Photoshop operations: document creation, layers, adjustments, filters, text, shapes, selections, masks, guides, transforms, smart objects, color, palettes, typography, history, and export. Missing features like channels or actions are minor, and ps_execute_script acts as an escape hatch.
Maintenance
Related MCP Connectors
Hosted MCP server for AI photo editing: nothing to install, no desktop photo editor needed.
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
The Canva MCP server connects AI assistants (like Claude, ChatGPT, and Cursor) to Canva's API, enabling them to create and manage designs directly within chat conversations. Key capabilities include generating new designs from prompts, autofilling templates, searching and resizing existing designs, importing files from URLs, exporting designs as PDFs or images, and managing folders and comments without switching between tools.
MCP server for Midjourney AI image generation and editing
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn AI-driven integration server that enables natural language control of Adobe Photoshop through the Model Context Protocol. It automates design workflows by facilitating smart asset slicing, layer analysis, and the future generation of UI code from design files.2-
- AlicenseNot gradedqualityDmaintenanceAn MCP server for controlling Adobe Photoshop from AI assistants, with Windows-first workflow, structured state, smoke-tested action playback, and a bundled Codex skill for image editing.4MIT
- FlicenseNot gradedqualityDmaintenanceA full-featured image processing MCP server for AI assistants, exposing ~55 tools across 11 categories for editing, layers, conversion, AI segmentation/cleanup/generation, design analysis, and screenshot-to-code.-
- AlicenseAqualityAmaintenanceEnables AI assistants to control Adobe Photoshop programmatically, supporting recipe workflows, state awareness, and generative AI features through natural language commands.1287,249 npm817MIT