apple-image-mcp
Provides AI image generation on macOS using Apple's Image Playground, with on-device styles (animation, illustration, sketch, emoji) and external ChatGPT styles (oil painting, watercolor, vector, anime, print). Supports automatic cropping to multiple platform sizes.
Allows cropping generated images to Facebook-specific dimensions (post 1200×630, cover 820×312, story 1080×1920).
Allows cropping generated images to Instagram-specific dimensions (post 1080×1080, portrait 1080×1350, story 1080×1920, reel cover).
Allows cropping generated images to Pinterest-specific dimensions (pin 1000×1500, story 1080×1920).
Allows cropping generated images to TikTok-specific dimensions (video cover 1080×1920).
Allows cropping generated images to YouTube-specific dimensions (thumbnail 1280×720, channel art 2560×1440, short 1080×1920).
Click on "Install 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., "@apple-image-mcpgenerate an illustration of a blooming flower using Apple engine"
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.
Why this exists
Other Apple Intelligence MCP servers expose one tool: generate_image. That's it.
apple-image-mcp gives your AI agent a full image pipeline:
8 styles — on-device (animation, illustration, sketch, emoji) + ChatGPT external (oil painting, watercolor, vector, anime, print) via Shortcuts.app
17 tools — generate, crop, batch, watermark, text overlay, filters, social packs
40+ platform presets — Instagram, TikTok, LinkedIn, YouTube, Pinterest, blog headers — all one prompt away
Zero config — runs locally on any Apple Silicon Mac with Apple Intelligence enabled
Related MCP server: Draw Things MCP Server
Quick Start
Option A — npx (recommended, zero setup)
npx mcp-apple-image-playgroundThat's it. Python deps install automatically on first run.
Option B — npm install
npm install -g mcp-apple-image-playground
mcp-apple-image-playgroundOption C — From source
pip install "mcp[cli]" pillow
python3 apple_intelligence_community_manager.pyIDE Integration
Cursor / Windsurf / VS Code
Add to your MCP config (.cursor/mcp.json or Settings → MCP):
{
"mcpServers": {
"apple_image": {
"command": "npx",
"args": ["mcp-apple-image-playground"]
}
}
}Note: If Cursor can't find npx, use the full path:
"command": "/Users/YOU/.nvm/versions/node/v20.x.x/bin/npx"
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"apple_image": {
"command": "npx",
"args": ["mcp-apple-image-playground"]
}
}
}OpenCode
Add to ~/.config/opencode/opencode.json under "mcp":
{
"mcp": {
"apple-image": {
"type": "local",
"command": ["npx", "mcp-apple-image-playground"],
"enabled": true
}
}
}Claude Code / opencode CLI
claude mcp add apple_image \
--scope user \
-- npx mcp-apple-image-playgroundAvailable Tools
Image Generation
Tool | Description |
| Generate from text prompt via Shortcuts.app |
| One prompt → multiple platform-sized crops (Instagram, Twitter, LinkedIn…) |
| Generate for a predefined bundle (e.g. |
| Generate multiple images from a list of prompts |
Image Processing
Tool | Description |
| Add text with custom font, position, color, shadow |
| Brand watermark with opacity control |
| Generate gradient backgrounds (vertical, horizontal, diagonal) |
| Ready-to-post text image (quote, announcement, tip) |
| Blur, sharpen, brightness, contrast, sepia, noir |
| Face-aware crop using Apple's Vision framework |
| Crop existing image to multiple platform sizes |
| Resize to exact dimensions or scale factor |
Discovery
Tool | Description |
| Check which engines are available |
| Show all available styles (on-device + ChatGPT external) |
| All 40+ platform presets with exact dimensions |
| Predefined bundles (full_social, instagram_set, blog_set…) |
Engine Details
On-Device (Apple Intelligence)
Styles:
animation,illustration,sketch,emojiRequires: macOS 15.4+ with Apple Intelligence enabled, Apple Silicon Mac
Privacy: Runs entirely on your machine. No images leave your device.
Speed: ~5-10 seconds per image
ChatGPT External Styles
Styles:
oil_painting,watercolor,vector,anime,printRequires: Internet connection, ChatGPT integrated into Siri
How it works: Routes through Siri's ChatGPT integration via Shortcuts.app
Speed: ~10-30 seconds per image (network dependent)
Platform Presets
One prompt → perfectly sized for every platform:
Instagram: post (1080×1080) · portrait (1080×1350) · story (1080×1920) · reel cover
Twitter/X: post (1200×675) · header (1500×500) · card (1200×628)
LinkedIn: post (1200×628) · article (744×400) · banner (1584×396)
YouTube: thumbnail (1280×720) · channel art (2560×1440) · short (1080×1920)
Pinterest: pin (1000×1500) · story (1080×1920)
Blog: header (1200×630) · hero (1920×1080) · thumbnail (400×300)
Facebook: post (1200×630) · cover (820×312) · story (1080×1920)
TikTok: video cover (1080×1920)Full list: call list_platform_presets on the running server.
Example Agent Calls
Generate a social media pack
generate_social_pack(
prompt="a cozy coffee shop in autumn, warm colors",
platforms=["instagram_post", "twitter_post", "linkedin_post"],
style="illustration"
)
# → 3 images, each cropped to the perfect platform sizeGenerate an oil painting
generate_image(
prompt="a serene mountain landscape at golden hour",
style="oil_painting"
)
# → 1536×1536 oil painting via ChatGPT external styleGenerate a bundle for your blog
generate_bundle(
prompt="a rocket launching into a starry sky",
bundle="blog_set",
style="illustration"
)
# → multiple images: blog_header, blog_inline, blog_thumbnail, og_image, square_thumbnailCreate a text post for social
create_text_post(
text="50% OFF everything this weekend",
width=1080,
height=1080,
bg_color="#1a1a2e",
font_color="#FFFFFF",
gradient=True
)
# → ready-to-post text image with gradient backgroundAdd text overlay to an image
add_text_overlay(
image_path="/path/to/image.png",
text="50% OFF",
position="center",
font_size=72,
font_color="#FF0000",
bg_color="#000000"
)Requirements
Requirement | Details |
macOS | 15.4+ (Sequoia) or 26+ (Tahoe) |
Hardware | Apple Silicon Mac (M1, M2, M3, M4, M5) |
Apple Intelligence | Enabled in System Settings → Apple Intelligence & Siri |
Image Playground | Open once to download models (one-time, ~2GB) |
Node.js | 18+ (for npx) |
Python | 3.10+ (auto-installed with deps if missing) |
Configuration
Environment Variables
Variable | Default | Description |
|
| Where generated images are saved |
|
| Default style |
Troubleshooting
ImagePlayground.ImageCreator.Error.creationFailed
This is a known macOS issue, especially on beta builds. Fixes:
Open Image Playground.app and generate one image manually
Confirm Apple Intelligence is enabled in System Settings
Ensure Image Playground models are fully downloaded
Dock icon flashes during generation
Expected behavior. Apple's ImageCreator requires the app to run in the foreground. The helper temporarily sets a Dock icon, generates, then exits. The icon disappears automatically.
ChatGPT external styles timeout
ChatGPT external styles (oil_painting, watercolor, vector, anime, print) require an active internet connection and ChatGPT integration. If they timeout, check your network and ensure Siri/ChatGPT is configured in System Settings.
Architecture
┌──────────────────┐ ┌──────────────────────────┐ ┌─────────────────┐
│ MCP Client │────▶│ npx launcher │────▶│ Python MCP │
│ (Claude, Cursor │◀────│ (Node.js, auto-deps) │◀────│ (FastMCP) │
│ OpenCode, etc.)│ │ │ │ │
└──────────────────┘ └──────────────────────────┘ ├─ Shortcuts.app │
│ (on-device) │
│ styles: │
│ animation, │
│ illustration, │
│ sketch, emoji │
│ │
├─ ChatGPT │
│ (external) │
│ via Siri │
└─────────────────┘The Node.js launcher handles Python dependency management and Swift compilation automatically. The Python server exposes 17 MCP tools via stdio transport. All image generation goes through Shortcuts.app's GenerateImageIntent — on-device styles use Apple's Image Playground directly, external styles route through Siri's ChatGPT integration.
Project Structure
apple-image-mcp/
├── bin/
│ └── mcp-apple-image-playground # Node.js launcher (npx entry point)
├── apple_intelligence/ # Python package
│ ├── __init__.py
│ ├── server.py # 16 MCP tool definitions
│ ├── engines.py # Shortcuts.app engine
│ ├── processing.py # PIL crop, resize, font utilities
│ ├── platforms.py # 40+ platform presets & bundles
│ └── response.py # Structured response helpers
├── apple_intelligence_community_manager.py # Python MCP server entry point
├── imagegen_helper.swift # Swift binary source
├── postinstall.js # Auto-setup on npm install
├── package.json
├── README.md
└── LICENSEContributing
Contributions welcome. Please open an issue first to discuss what you'd like to change.
License
MIT License. See LICENSE for details.
Acknowledgments
Apple ImagePlayground API — the on-device image generation framework
FastMCP — the MCP server framework
Pillow — image processing
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vakandi/mcp-apple-image-playground'
If you have feedback or need assistance with the MCP directory API, please join our Discord server