museav-mcp
A MCP server for AI agents to generate, edit, and understand images — mix of online (login-required) and local (offline) tools.
Online generation (needs login):
gen_backgroundcreates backgrounds, general images, or videos via a cloud platform, with options for prompt/skill/template, aspect ratio, model, quality, transparent background, and reference images.Local image editing (no login):
remove_bgremoves backgrounds;upscale_imageupscales by 2x/3x/4x;remove_watermarkremoves watermarks with optional mask;compress_imagecompresses and converts format.**All operations take absolute file paths, write results to disk, and return paths — no base64, avoiding context bloat.
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., "@museav-mcpUpscale /home/user/photo.png and then remove the 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.
museav-mcp
把 museav-cli(MUSE AV 出图中台命令行工具)与 mlx-vlm-kit(Mac 本地看图理解)的能力包装成 MCP server,让 Claude Code / DSH / WorkBuddy / 任意支持 MCP 的 AI Agent 直接调用出图、 图片后期、素材查询与看图理解。
传输方式 stdio。图片以绝对路径传入,处理结果写回磁盘并返回路径 —— 不走 base64,大图不炸上下文。
工具(18 个)
工具 | 干什么 | 是否需要登录 |
| 出背景图 / 一般出图 / 出视频(走中台) | ✅ 需要 |
| 抠图去背景(BiRefNet / ISNet / U2Net),输出带 alpha 的 PNG | 免登录,本地跑 |
| 超分放大(Real-ESRGAN + Vulkan GPU),默认 4x | 免登录,本地跑 |
| 去水印(LaMa 修复),自动定位,可传手工掩码 | 免登录,本地跑 |
| 压缩(sharp),可指定最长边 / 质量 / 格式 | 免登录,本地跑 |
| 查可用图片 / 文字模板(挑 | ✅ 需要 |
| 查可用技能(挑 | ✅ 需要 |
| 查可用视频模板(与 | ✅ 需要 |
| 查可用模型; | ✅ 需要 |
| 查上游余额 | ✅ 需要 |
| 查自己的出图工作流(结果 URL、失败原因) | ✅ 需要 |
| 上传素材拿公网直链(垫图要 URL 时用) | ✅ 需要 |
| 图生模板:读图 + 文字层逆向 + 变量化 | ✅ 需要 |
| 读图反推 SCULPT prompt(中台 API)。与 | ✅ 需要 |
| 本地看图理解:描述主体与色调 | 免登录,本地跑 |
| 对图片任意提问 | 免登录,本地跑 |
| 音乐封面语义质检( | 免登录,本地跑 |
| 反推出图 prompt,喂回 | 免登录,本地跑 |
本地后期那四个和 vlm_* 那四个不联网、不消耗中台额度。
两个「先查再调」
gen_background 的 template / skill 是必填二选一,但 id 和 slug 只能从中台实时拉:
先用 list_templates / list_skills 查真实清单,再传进去。凭印象编一个,中台只会报
「模板不存在」,Agent 分不清是自己拼错了还是真没有。
模板自带哪些占位符看清单里「字段:」那一列,取值用 gen_background 的 fields 传
(JSON 对象字符串)。
Related MCP server: DreamLayer image tools
前置条件
这个 MCP 只是包装层,真活是两条命令干的:
npm i -g museav-cli # 出图 / 后期 / 素材(需要 >= 3.6.0)
pipx install git+https://github.com/webkubor/mlx-vlm-kit.git # vlm_* 四个工具需要gen_background 还需要中台 apiKey(按 museav-cli 的说明配置)。
本地工具首次运行会下载对应模型(抠图 ~214MB、超分 ~65MB、去水印 ~200MB、
vlm 的 Qwen3-VL-4B 约 2.9GB)。
两个可执行文件不在全局 PATH 时,用环境变量指定绝对路径:
MUSEAV_BIN(museav)、MLX_VLM_BIN(vlm)。
接到 Agent 上
Claude Code 一行:
claude mcp add museav -- npx -y museav-mcpDSH 在 profile 的 cordis.patch.yml 里加一行:
- id: mcp-museav
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: museav
transport: stdio
command: npx
args: ['-y', 'museav-mcp']或手写配置(任意支持 MCP 的 Agent):
{
"mcpServers": {
"museav": {
"command": "npx",
"args": ["-y", "museav-mcp"]
}
}
}museav 不在全局 PATH 时:
{
"mcpServers": {
"museav": {
"command": "npx",
"args": ["-y", "museav-mcp"],
"env": { "MUSEAV_BIN": "/绝对路径/museav", "MLX_VLM_BIN": "/绝对路径/vlm" }
}
}
}本地开发(改这个仓库时)
pnpm install && pnpm build # 产物在 dist/,package.json 的 bin 指向它配置里把 command 换成 node、args 指向 /绝对路径/museav-mcp/dist/index.js 即可。
验证
node test-mcp.mjs # 起 server 跑 initialize + tools/list,应输出 TOOLS_LIST_OK count = 21说明
gen_background 的 prompt / skill / template 三者必须且只能提供一个:prompt 是直接给提示词,skill 和 template 是让中台在服务端展开提示词(配合 input 传一句业务描述)。
四个本地后期工具的 out 已存在时,CLI 会拒绝覆盖 —— 这是防手滑的语义,MCP 保留它:
要覆盖就显式传 overwrite: true,否则报错原文会回到 Agent 手里。
list_templates / list_skills 取的是 CLI 的人类可读表格(stderr),因为 stdout 只有裸 id;
list_jobs 取 stdout 的完整 JSON(含 cdn_url / status / error)。清单超过 8000 字会截断,
并附一句「输出已截断」——不附的话 Agent 会把截断处当成清单结尾。
本地工具的超时上限是 10 分钟 —— 超分和 LaMa 修复在大图上确实会慢。
License
MIT
Available Tools
5 toolscompress_imageA
本地压缩图片(sharp,免登录),默认同目录 <名>-min.<格式>
| Name | Required | Description | Default |
|---|---|---|---|
| out | No | 输出路径 | |
| file | Yes | 输入图片绝对路径 | |
| format | No | 输出格式 | |
| maxEdge | No | 最长边缩到此像素(等比) | |
| quality | No | jpg/webp 质量,默认 82 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It usefully discloses the auth requirement (no login), processing location (local), implementation library (sharp), and default output behavior (same directory as <name>-min.<format>). It does not explicitly mention whether the original file is preserved or whether existing output files are overwritten, but the default filename strongly implies a new file is created.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is one compact sentence with no unnecessary words. It front-loads the core action and then packs auth, locality, and default output into a short clause. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple image-compression tool with five fully documented parameters and no output schema, the description plus schema covers the essential invocation details: purpose, input, output location, format options, and sizing/quality controls. The lack of an explicit return-value description is a minor gap but the predictable output filename mitigates it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description does not need to compensate for undocumented parameters. The schema already describes file, out, format, maxEdge, and quality. The description adds only the default output path behavior, which is useful but not a significant expansion beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('compress'), a resource ('image'), and a concrete scope ('local, sharp, no login'), which immediately distinguishes it from the sibling tools (gen_background, remove_bg, upscale_image, remove_watermark). The default output naming convention adds further precision. An agent can confidently identify this as the local image-compression tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes clear when to use it: for local image compression without authentication, using the sharp library. It provides context about the local/no-login nature of the operation but does not explicitly name alternatives or state when not to use it, which prevents a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gen_backgroundA
用 MUSE AV 出图中台生成壁纸背景图/一般出图/出视频(在线,需登录)
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | 垫图文件绝对路径,多张用逗号分隔 | |
| input | No | 配合 skill 的一句业务描述 | |
| model | No | 模型名,如 gpt-image-2 | |
| ratio | No | 宽高比 | |
| skill | No | 中台技能 slug,提示词在服务端展开 | |
| video | No | 生成视频 | |
| prompt | No | 出图提示词(与 skill/template 三选一) | |
| quality | No | 质量(仅 gpt-image) | |
| template | No | 图片模板 id,提示词在服务端展开 | |
| transparent | No | 透明背景 PNG(抠掉背景) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It usefully notes that the tool is online and requires login, and the verb '生成' indicates it creates new assets rather than modifying existing ones. However, it does not describe output behavior, potential waiting times, video-vs-image behavioral differences, or failure modes, leaving significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the action, names the platform, enumerates the output types, and adds the operational constraint '在线,需登录'. There is no filler; every segment contributes to a quick understanding of the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 10 parameters, zero required parameters, no output schema, and no annotations, the description carries a heavy burden to explain the overall invocation model, return values, and default behavior. It only gives a high-level capability statement and a login requirement, leaving ambiguity about what happens after generation, how video generation is triggered or awaited, and which parameter combinations are valid. The schema is rich, but the surrounding operational context is too thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description itself adds little parameter-level meaning; it merely hints at video and general-image outputs that relate to 'video' and 'prompt'/'skill'. Since the schema already documents all parameters thoroughly, the description does not need to compensate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb '生成' (generate) and the resources: wallpaper backgrounds, general images, or videos via the MUSE AV platform. This distinguishes it from the sibling tools (remove_bg, upscale_image, remove_watermark, compress_image), which are all post-processing operations rather than generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage is implied: use this tool when generating wallpaper, general images, or video. However, it does not explicitly state when to use this tool versus the sibling alternatives, nor does it give exclusion conditions or guidance on choosing among skill/template/prompt modes. Some guidance exists in the schema, but the description itself stops at implication.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_bgB
本地抠图去背景(ISNet/U2Net,免登录),输出带 alpha 的 PNG
| Name | Required | Description | Default |
|---|---|---|---|
| out | No | 输出路径(默认 <名>-nobg.png) | |
| file | Yes | 输入图片绝对路径 | |
| model | No | 模型,isnet 默认 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the output format (alpha PNG) and the default model (ISNet), but does not disclose important behaviors such as processing time, file size limits, input format constraints, failure modes, or whether the operation is destructive to the input file. With zero annotation coverage, this is a notable gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence that front-loads the core action (抠图去背景), then packs the key differentiators (models, auth-free, output format) without any filler. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-required-parameter tool with a complete schema and no output schema, the description is reasonably complete: the agent knows the action, the models, the output format, and that no login is required. Missing behavioral context—such as expected runtime, input restrictions, or edge cases—prevents a higher score, but the core call path is clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (out, file, model), including the enum for model and the default naming convention. The description adds the default model ('isnet 默认') and the alpha-PNG output detail, but these are minor additions since the schema carries the parameter meanings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('抠图去背景') and resource (local image, with named models ISNet/U2Net and an alpha-PNG output). It clearly identifies what the tool does and distinguishes it from a remote service by noting '免登录' (no login required) and local processing. It could be slightly more explicit about the resource being an image file, but the verb-and-resource clarity is solid.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: to remove backgrounds locally without authentication. It lists no explicit alternatives or exclusions, but the '免登录' note suggests a context where no account/API key is needed. No explicit guidance on when NOT to use it or which sibling tools to prefer, leaving some inference required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_watermarkA
本地去水印(LaMa 修复,免登录),自动定位,复杂画面可用 mask 指定
| Name | Required | Description | Default |
|---|---|---|---|
| out | No | 输出路径(默认 <名>-clean.png) | |
| file | Yes | 输入图片绝对路径 | |
| mask | No | 手工掩码图(白色=去除区),跳过自动定位 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It reveals meaningful traits: works locally, requires no login, uses LaMa inpainting, automatically locates watermarks, and allows manual masks for difficult cases. This goes beyond a simple 'removes watermarks' statement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, compact sentence packs in the core purpose, technical method, access mode, and the auto-detection versus manual mask distinction. Every clause earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with no output schema, the description plus schema cover the function, the behavior, and the output path default. It could be richer with explicit when-not-to-use scenarios or input format constraints, but nothing essential is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all 3 parameters with 100% coverage, including the fact that mask skips auto-detection. The description's mention of auto-locating and mask use for complex scenes slightly reinforces parameter behavior but adds minimal new semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action (remove watermark), the method (LaMa inpainting), and key attributes (local processing, no login). It distinguishes itself from sibling tools like remove_bg (background removal) and upscale_image by targeting watermarks specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use when an image has a watermark, and use a mask for complex scenes. However, there is no explicit guidance on when not to use this tool or how it compares to alternatives like remove_bg for image cleanup tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upscale_imageA
本地超分放大(Real-ESRGAN + Vulkan GPU,免登录),默认 4x 输出 PNG
| Name | Required | Description | Default |
|---|---|---|---|
| out | No | 输出路径 | |
| file | Yes | 输入图片绝对路径 | |
| model | No | 模型 | |
| scale | No | 放大倍数,默认 4 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full transparency burden. It adds useful behavioral context: local processing, GPU-based acceleration via Vulkan, no login required, and PNG output. It does not disclose failure cases or side effects, but the core operational traits are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense, front-loaded sentence that commicates the essential purpose, backend, authentication requirement, default behavior, and output format with no filler. Every segment earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given four parameters, no output schema, and no annotations, the description covers the key operational context: local execution, GPU requirement, no login, default scale, and output format. Minor gaps remain around default model choice and error behavior, but the schema covers the parameters thoroughly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so a baseline of 3 applies. The description goes slightly beyond the schema by specifying '输出 PNG', which clarifies the format of the out parameter, and '默认 4x', which reinforces the scale default. This adds meaningful value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action (super-resolution upscaling), resource (image), engine (Real-ESRGAN + Vulkan), and output behavior (default 4x PNG). This clearly separates it from sibling tools like remove_bg, remove_watermark, and compress_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The purpose and sibling names imply that upscale_image is for enlarging/enhancing images rather than background removal, watermark removal, or compression. However, there is no explicit guidance about when to choose this tool over alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v1.0.0- First observed
compress_image - First observed
gen_background - First observed
remove_bg - First observed
remove_watermark - First observed
upscale_image
TDQS
Scored across 5 tools
Each tool targets a distinct transformation: generation, background removal, upscaling, watermark removal, and compression. There is no meaningful overlap; even the two remove_* tools operate on clearly different subjects.
All tool names follow a verb_noun snake_case pattern: gen, remove, upscale, remove, compress. The use of 'bg' as an abbreviation for 'background' is minor and does not break the overall consistency.
Five tools is a well-scoped set for an image-processing server. Each tool earns its place and together they cover a practical generation-to-optimization workflow without redundancy.
The set covers a coherent image workflow: generate, remove background/watermark, upscale, and compress. Minor gaps exist, such as image format conversion or metadata inspection, but common tasks are not blocked.
Maintenance
Related MCP Connectors
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Generate AI images and videos from any compatible MCP client.
Create images & video from any MCP agent — 17 models, spend limits, one URL.
Create and manage AI image and video generations through Quriov's fixed public MCP tools.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceExposes litmedia.ai text-to-image and image-to-video generation tools via MCP, enabling AI agents to generate images and videos directly from prompts.1MIT
- AlicenseAqualityBmaintenanceImage tools for coding agents: generate from text, edit one reference image, remove backgrounds, upscale 2x, and create reference-based sprite animations. The MCP server, CLI and REST API share one key, credit balance and request history. Needs a DreamLayer API key and paid credits; sprite sheets are beta.7482 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI image processing tools such as vectorization, background removal, upscaling, and logo generation from any MCP-compatible client like Claude Code or Cursor.19 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables MCP-capable agents to generate and edit images through Gemini or OpenAI, returning an absolute file path instead of image bytes to keep context windows clean.MIT