Skip to content

Release history

jau123/MeiGen-AI-Design-MCP releases

Supports GPT Image 2, Nanobanana & ComfyUI, with a 1,400+ prompt library, carefully crafted hooks and a multi-task orchestration system

All releases

14 shown

No immediate action
v1.3.2 Breaking risk

Windows path auto‑upload

No immediate action
v1.3.1 Breaking risk

Veo tier expansion + Seedance reference video

v1.3.0 Breaking risk
⚠ Upgrade required
  • If installed via Claude Code plugin marketplace, run `/plugin update` to fetch the new `plugin/.mcp.json`.
  • Pin updates: bump pinned `[email protected]` configurations to `[email protected]`.
  • All new environment variables are optional; existing setups continue functioning without modification.
Security fixes
  • SSRF defense‑in‑depth for `referenceImages` URLs in `generate_image`, `generate_video`, and CLI rejects file://, data:, private IPs (10/172.16‑31/192.168/127), cloud metadata (169.254.169.254).
Notable features
  • `generate_video` MCP tool with Seedance 2.0, Happyhorse 1.0, Veo 3.1 supporting text‑to‑video and image‑to‑video.
  • Standalone `meigen gen` CLI for prompt generation without an MCP host (supports JSON output, no‑wait mode, reference file upload).
  • First‑class multi‑host integration documentation covering Cursor, Codex, Windsurf, Roo Code, Hermes Agent, Claude Code and OpenClaw.
Full changelog

Highlights

  • 🎬 Video generation — new generate_video MCP tool with Seedance 2.0 (fast/pro tiers), Happyhorse 1.0, and Veo 3.1. Supports text-to-video and first-frame / last-frame image-to-video. Local files are auto-uploaded; MP4 saves to ~/Movies/meigen/.
  • 💻 Standalone CLInpx meigen gen --prompt "..." works without an MCP host. Shell-friendly: --json for jq pipelines, --no-wait for CI, --reference for local files (auto-upload). Subcommand sits next to the existing meigen init <host>.
  • 🚀 Multi-host support — first-class integration docs for Cursor, Codex (OpenAI CLI), Windsurf, Roo Code, Hermes Agent (NousResearch), plus all existing Claude Code / OpenClaw flows.
  • 🎯 /meigen:setup is now a real slash command — fixes the long-standing issue where users couldn't configure their API key through the wizard. Also adapts to Windows shells.

What's New

Tools

  • generate_video — new MCP tool. Models: seedance-2-0 (fast/pro), happyhorse-1.0, veo-3.1. First-frame image-to-video via firstFrame param; optional lastFrame for Seedance/Veo. Schema fields (tier, duration, resolution) are z.string() / z.number().positive() so the backend can add new tiers without an MCP release.
  • meigen gen CLIbin/meigen-mcp.js now routes a gen subcommand to src/cli/gen.ts. Supports --prompt, --model, --ratio, --resolution, --quality, --reference, --no-wait, --json. Reuses MeiGenApiClient so behavior matches the MCP tool exactly.

SKILLs / Commands

  • plugin/commands/setup.md — interactive provider configuration wizard, finally a proper slash command. Auto-detects platform (macOS / Linux / Windows) and adapts shell commands. Explicit merge-vs-overwrite guidance prevents users from losing an existing ComfyUI config when adding a MeiGen token.
  • plugin/skills/product-photoshoot/SKILL.md — workflow that turns one product reference photo into a 4-direction asset set (lifestyle / macro / scale / marketing).
  • plugin/skills/social-thumbnail/SKILL.md — 9:16 thumbnail workflow optimized for short-video covers (TikTok / Reels / Shorts).

Docs

  • README repositioning: hero block now lists 9 models (GPT Image 2, Nanobanana 2, Seedream 5.0, Midjourney V8.1, Flux 2 Klein, Seedance 2.0, Happyhorse 1.0, Veo 3.1, local ComfyUI), all 8+ host integrations, and the standalone CLI mode. Dropped the Lovart comparison (unknown to English-speaking dev audience) and the "carefully crafted hooks" jargon.
  • README.zh-CN.md: translated the missing privacy + custom storage backend sections (was English-only before).
  • New DECISIONS.md documents nine load-bearing decisions (no-MCP-defaults, schema-as-string, shared-semaphore, V8.1 unification, mediaType guards, etc.) so future contributors don't reopen settled choices.
  • New evals/scenarios.md — 13 manual smoke-test scenarios for regression catching.

Security

  • SSRF defense-in-depth for referenceImages URLs (src/lib/url-safety.ts). Rejects file://, data:, private IPs (10/172.16-31/192.168/127), and cloud metadata (169.254.169.254). Applied across generate_image, generate_video, and the CLI. Backend provider downloaders still need their own SSRF filter — this is a client-side layer.
  • The setup.md JSON example previously used // comment syntax inside JSON code blocks; rewrote to use markdown headings so an LLM can't accidentally write // into config.json.

Fixes

  • Shared API semaphore (src/lib/generation-shared.ts): generate_image and generate_video now share one Semaphore(4) across the same /api/generate/v2 endpoint. Prior code documented sharing but actually used two independent semaphores, which could burst to 8 concurrent submits and trip the backend's 12/min rate limit.
  • videoUrl || status.imageUrl fallback removed: if a video model id was misrouted to generate_image (or vice versa), the old code could write a JPEG payload as .mp4. Both tools now have symmetric mediaType guards that fail loudly with a redirect message.
  • Setup wizard cross-host: error messages and SERVER_INSTRUCTIONS now branch on Claude Code vs other hosts. Cursor / Codex / Hermes users get the env-var path, not a non-existent /meigen:setup command.
  • Linux save paths: MEIGEN_OUTPUT_DIRXDG_PICTURES_DIR~/Pictures/meigen fallback chain (and same for MEIGEN_VIDEO_OUTPUT_DIRXDG_VIDEOS_DIR~/Movies/meigen).
  • Generate-video timeout: error message now mentions pg_cron cleanup_orphan_generations (backend auto-refund within ~15 minutes for jobs that never started) so users don't immediately retry and double-pay.
  • prompt schema: both generate_image and generate_video now use z.string().trim().min(1) to reject empty and whitespace-only prompts.
  • CLI argv parser: rejects --flag followed by another --flag (i.e. missing value), so meigen gen --prompt --json no longer silently submits --json as the prompt.
  • CLI poll timeout: waitForGeneration errors now surface the generationId so users can check the web before retrying.

Changed

  • Midjourney V8.1 replaces V7 + Niji 7 in all user-facing docs. V8.1 handles photorealistic and stylized/anime output in one model — enhance_prompt(style: 'anime') injects trigger words. Niji 7 remains hidden server-side (extra_config.hidden=true) for legacy modelId compatibility but is not advertised.
  • list_models output now shows Status: (New / Busy / Maintenance from backend extra_config.tags) and Cost: (live credits_per_generation from backend response). Updated DECISIONS.md to clarify: live backend numbers may be rendered, only frozen training-data numbers in shipped strings are forbidden.
  • Status union narrowed from 'pending' | 'processing' | 'completed' | 'failed' to 'processing' | 'completed' | 'failed' — the backend maps 'pending''processing' before responding.

Internal

  • CI (.github/workflows/validate.yml): four jobs — version-sync, pinned-npm-coherence, frontmatter-lint, and typecheck + clean build. The build job asserts that dist/index.js, dist/cli/init.js, and dist/cli/gen.js are produced, catching stale-dist regressions.
  • Frontmatter linter (scripts/ci/check-frontmatter.mjs): catches name: fields in agents/commands (derived from filename) and missing required fields in SKILLs.
  • package.json files: removed stale "skills/" entry (the directory doesn't exist; plugin SKILLs ship via the GitHub marketplace, not the npm tarball).
  • Removed stale dist/tools/upload-reference-image.* artifacts whose source was deleted months ago.

Compatibility

  • Node: ≥18 (unchanged).
  • MCP hosts: Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, Roo Code, Codex CLI, OpenClaw, Hermes Agent, and any MCP-compatible host that surfaces server instructions.
  • No breaking changes to existing tool schemas. tier and duration on generate_video are now string/number instead of enum/range, but accepted values are a superset.

Upgrade Notes

  • If you installed via the Claude Code plugin marketplace: /plugin update to pull the new plugin/.mcp.json pin.
  • If you use npx -y meigen@latest: nothing to do.
  • If you pinned [email protected] in your MCP config: bump to [email protected].
  • New env vars are all optional — existing setups keep working without changes.

Acknowledgements

This release went through four adversarial review rounds plus an end-to-end usability audit. Several "must fix" findings turned out to be false positives on inspection — keeping the verify-before-fixing discipline saved a lot of churn.

v1.2.10 Breaking risk
Breaking changes
  • v1.2.9 pricing regression: GPT Image 2.0 defaulted to 2K (25 credits) instead of 1K; v1.2.9 deprecated on npm
Notable features
  • resolution parameter (1K/2K/4K)
  • quality parameter (low/medium)
  • list_models surfaces resolution and quality tier support
Full changelog

⚠️ Pricing hotfix — please upgrade from 1.2.9

v1.2.9 had a pricing regression: GPT Image 2.0 became the default model but the server-side resolution fallback stayed at 2K, silently doubling credit cost for users who did not pass resolution explicitly.

v1.2.10 fixes it. gpt-image-2* now defaults to 1K / medium = 10 credits, matching the MeiGen platform product default. 1.2.9 has been deprecated on npm.

If you ran generations with 1.2.9 and relied on the default, your cost per image was ~25 credits instead of 10. Sorry about that.

What's new in 1.2.10

Fix

  • gpt-image-2* default resolution: 2K → 1K (10 credits). Other models unchanged.
  • Deprecated 1.2.9 on npm.

New generate_image parameters

  • resolution: "1K" (default) / "2K" / "4K" — for posters, prints, wallpapers.
  • quality: "low" (2 credits @ 1K) / "medium" (default) — for drafts and thumbnails.

Pricing matrix (gpt-image-2): 1K/low ≈ 2, 1K/medium = 10, 2K/medium ≈ 25, 4K/medium ≈ 40 credits.

Better model discovery

  • list_models now surfaces each model's supported resolutions and quality tiers (when the MeiGen API reports them), so the host LLM can make informed resolution decisions.
  • MeiGenModel type extended with media_type, max_reference_images, extra_config.

Host LLM guidance

  • SERVER_INSTRUCTIONS gains a "GPT Image 2.0 resolution / quality" section in Phase 2. Tells the LLM to stay on 1K unless the use case (poster/print/wallpaper) justifies the cost — avoids over-spending on casual chat imagery.

Docs

  • openclaw/providers.md and plugin/skills/visual-creative/SKILL.md — model table updated with the resolution × quality pricing matrix and new 1K default.

Upgrade

npx -y [email protected]

Or via plugin:

/plugin install meigen@meigen-marketplace

Synced across: npm [email protected] • Claude Code plugin marketplace • ClawHub skill [email protected] • ClawHub bundle [email protected] • wshobson/agents (PR pending).

v1.2.9 Breaking risk
Breaking changes
  • GPT Image 1.5 retired from model tables, docs, and examples
Notable features
  • GPT Image 2.0 as default model for text rendering
Full changelog

What's New

  • Default model switched to GPT Image 2.0 (10 credits) — state-of-the-art text rendering for posters, logos, and any typography-heavy imagery
  • Retired GPT Image 1.5 from model tables, docs, and examples across all channels

Other Changes

  • Cleaned up stale dall-e-3 / flux-schnell references in OpenAI-compatible provider examples
  • OpenAI-compatible provider docs now use generic "your model ID" wording — any OpenAI-format endpoint works with any model your service supports
  • ClawHub skill (creative-toolkit) bumped to 1.0.25 with updated model catalog

Synced Across

  • npm [email protected]
  • Claude Code plugin marketplace (meigen)
  • ClawHub skill creative-toolkit (1.0.25)
  • ClawHub bundle plugin meigen-ai-design
  • Third-party marketplaces (wshobson/agents)

Upgrade

npx -y [email protected]

Or via plugin:

/plugin install meigen@meigen-marketplace

Cost note: GPT Image 2.0 costs 10 credits vs Nanobanana 2's 5 credits. If you prefer the previous default for cost reasons, pass model: "nanobanana-2" to generate_image.

v1.2.8 New feature
Notable features
  • Midjourney V7 support with photorealistic guidance
  • Aspect ratio auto by default
  • --sref style reference support for V7/Niji 7
Full changelog

Highlights

Midjourney V7 support

V7 and Niji 7 now have parallel guidance in the MCP server instructions. V7 targets photorealistic / general aesthetics (product photography, portraits, landscapes, cinematic shots); Niji 7 remains anime / illustration only.

Both share the same trade-offs (15 credits, ~60s, 1 reference image max, 4 candidate images per generation) but differ in content focus and prompt enhancement style.

Aspect ratio auto by default

The MeiGen backend now supports an auto aspectRatio value that infers the best ratio from the prompt content. MCP now defaults to auto when the caller doesn't specify a ratio — agents, skills, tool schemas, and preferences have all been updated to reflect this.

--sref clarification

Style reference via --sref <code> is supported for Midjourney V7 / Niji 7, but only with Midjourney style codes (numeric or text). URLs and local file paths are not supported through --sref — pass image references via referenceImages instead.

All other Midjourney --flags (--chaos, --weird, --stylize, --raw, --iw, --v, --style, --no, --tile, --niji, --seed, --q, etc.) are silently stripped by the backend. --sref <code> is the sole exception.

Other changes

  • Bumped pinned version to [email protected] across the Claude Code plugin, marketplace, and README
  • Aligned openclaw skill (creative-toolkit 1.0.23) and ClawHub bundle plugin (meigen-ai-design 1.0.2)
  • Error mapping for unsupported aspect ratios now hints at auto as a fallback

Install / upgrade

{ "mcpServers": { "meigen": { "command": "npx", "args": ["-y", "[email protected]"] } } }

npm: https://www.npmjs.com/package/meigen/v/1.2.8

v1.2.7 Breaking risk
Breaking changes
  • upload_reference_image tool removed
  • /meigen:ref command removed
  • tool count reduced from 8 to 7
Notable features
  • reference images auto-compressed and uploaded inline via generate_image
Full changelog

Changes

  • Remove upload_reference_image tool — local file paths in referenceImages are now auto-compressed and uploaded inline via generate_image. Prevents free storage abuse and resolves ClawHub/VirusTotal security scanner flags.
  • Remove /meigen:ref command — no longer needed.
  • Tool count: 8 → 7
  • Update OpenClaw install to bundle plugin: openclaw bundles install clawhub:meigen-ai-design

How reference images work now

Pass local file paths or URLs directly to generate_image's referenceImages parameter:

  • MeiGen / OpenAI-compatible: local files auto-compressed (max 2MB, 2048px) and uploaded
  • ComfyUI: local files passed directly to the workflow (no upload)

No separate upload step needed.

v1.2.6 New feature
Notable features
  • Niji 7 multi-image support (4 candidates)
  • Enhanced Niji 7 guidance in SERVER_INSTRUCTIONS
  • Prompt enhancement for anime style
Full changelog

What's Changed

Midjourney Niji 7 Support Improvements

  • Anime-only guidance: Niji 7 is exclusively for anime/illustration styles
  • Multi-image support: Niji 7 returns 4 candidate images; MCP server now displays all 4 URLs
  • Prompt enhancement: enhance_prompt recommends style anime for Niji 7
  • SERVER_INSTRUCTIONS: Added Niji 7 usage notes

Documentation & Skill Updates

  • Updated model tables in OpenClaw and Claude Code plugin skills
  • OpenClaw skill version 1.0.16
  • Improved release skill coverage

Full Changelog: https://github.com/jau123/MeiGen-AI-Design-MCP/compare/v1.2.5...v1.2.6

v1.2.5 New feature
Security fixes
  • Magic bytes validation prevents fake file extensions
Notable features
  • Magic bytes validation for file uploads
  • ComfyUI local file path support
  • 24-hour expiry notice for uploaded URLs
Full changelog

What's New

  • 24-hour expiry noticeupload_reference_image now clearly informs users that uploaded URLs expire after 24 hours
  • Magic bytes validation — File uploads now verify actual image content (JPEG/PNG/WebP/GIF signatures), preventing fake file extensions
  • ComfyUI local file support — ComfyUI users can pass local file paths directly to referenceImages, skipping the cloud upload roundtrip entirely
  • OpenAI-compatible provider naming — All descriptions now say "OpenAI-compatible" instead of "OpenAI", reflecting support for any compatible API (Together AI, Fireworks AI, etc.)
  • Custom storage backend docs — README now includes presign API specification for users who want to use their own S3/R2 bucket
  • OpenClaw skill restructured — SKILL.md split into focused core instructions + references/ directory for provider details and troubleshooting
v1.2.4 Maintenance
Notable features
  • Gallery categories renamed (3D→Illustration & 3D, Food→Food & Drink, etc.)
Full changelog

What's New

  • Gallery categories renamed — 3D → Illustration & 3D, Food → Food & Drink, Photograph → Photography, Product → Product & Brand (backward-compatible mapping included)
  • SKILL.md security compliance — Improved wording to pass VirusTotal/ClawHub security scans
  • Model pricing table — Added to SKILL.md for quick reference
  • ClawHub install link — Added to OpenClaw section in READMEs
  • Awesome badges — Updated to Awesome MCP Servers (82k stars), replaced MCP Hub China with Discord invite
v1.2.3 New feature
Notable features
  • Nanobanana 2 model support with 4K
  • Seedream 5.0 Lite model support
  • Default model changed to nanobanana-2
Full changelog

What's New

  • New models — Added support for Nanobanana 2 and Seedream 5.0 Lite
  • Default model — MeiGen provider now defaults to nanobanana-2 (5 credits, 4K support) when no model is specified
  • Updated docs — Model references updated across README, SKILL.md, and plugin metadata
v1.2.2 New feature
Notable features
  • Hybrid vector + keyword search in search_gallery
  • Automatic fallback to local search
Full changelog

What's New

  • Semantic searchsearch_gallery now uses hybrid vector + keyword search, finding conceptually similar results instead of just keyword matches
  • Automatic fallback — gracefully falls back to local keyword search if API is unavailable
  • Glama listing — added glama.json and Dockerfile for Glama directory submission
  • Version sync — fixed MCP server version reporting across all files
v1.2.1 New feature
Notable features
  • Hybrid vector + keyword search in search_gallery
  • Automatic fallback to local keyword search
Full changelog

What's New

  • Semantic searchsearch_gallery now uses hybrid vector + keyword search via website API, finding conceptually similar results instead of just keyword matches
  • Automatic fallback — gracefully falls back to local keyword search if API is unavailable
  • Glama listing — added glama.json and Dockerfile for Glama directory submission

Install / Update

npx -y meigen@latest
v1.2.0 New feature
Notable features
  • 7 MCP tools for image generation
  • 3 provider backends (MeiGen, OpenAI-compatible, ComfyUI)
  • 1,300+ curated prompt library
Full changelog

MeiGen v1.2.0

AI design MCP server with multi-provider image generation.

Features

  • 7 MCP tools: search_gallery, get_inspiration, enhance_prompt, list_models, upload_reference_image, comfyui_workflow, generate_image
  • 3 provider backends: MeiGen Cloud, OpenAI-compatible APIs, local ComfyUI
  • 1,300+ curated prompt library
  • Style-aware prompt enhancement
  • Reference image support across all providers
  • User preferences system
  • Multi-platform init command

Install

npx -y meigen@latest

Beta — feedback welcome: [email protected]