mcp-xmorf
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., "@mcp-xmorfEdit this image to 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.
mcp-xmorf
MCP server for xmorf — AI image editing and generation API.
Tools
Tool | Description |
| Edit images with natural language prompts (8 AI models) |
| Generate images from text descriptions |
| List available editing models |
Edit Models
Model | Description |
| General-purpose AI image editing |
| Enhance realism / anything-to-real |
| Upscale and improve resolution |
| Light & shadow migration (needs reference image) |
| Passionate kiss effect (needs reference image) |
| Skin editing and retouching |
| Multi-angle view generation |
| Scene change / next-scene generation |
Related MCP server: image-forge-mcp
Setup
Get an API token from xmorf.com.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"xmorf": {
"command": "npx",
"args": ["-y", "mcp-xmorf"],
"env": {
"XMORF_API_TOKEN": "xmorf_your_token_here"
}
}
}
}VS Code
Add to .vscode/mcp.json:
{
"servers": {
"xmorf": {
"command": "npx",
"args": ["-y", "mcp-xmorf"],
"env": {
"XMORF_API_TOKEN": "xmorf_your_token_here"
}
}
}
}Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"xmorf": {
"command": "npx",
"args": ["-y", "mcp-xmorf"],
"env": {
"XMORF_API_TOKEN": "xmorf_your_token_here"
}
}
}
}Usage Examples
Edit an image
Edit this photo to remove the backgroundThe xmorf_edit_image tool accepts file paths, data URLs, or raw base64 as input. You can optionally specify an output path to save the result to disk.
Generate an image
Generate a watercolor painting of a mountain landscape at dawnList models
What image editing models are available on xmorf?Environment Variables
Variable | Required | Description |
| Yes | Your xmorf API bearer token |
API Reference
See the full API docs at xmorf.com/docs.
License
MIT
Available Tools
3 toolsxmorf_edit_imageA
Edit an image using AI with a natural language prompt. Models: standard (general-purpose), enhance (realism), upscale (resolution), shadow (light migration, needs reference), kiss (needs reference), skin (retouching), angles (multi-angle), scene (scene change). Input can be a file path or base64 data URL.
| Name | Required | Description | Default |
|---|---|---|---|
| image | Yes | Image to edit: absolute file path, data URL (data:image/png;base64,...), or raw base64 | |
| prompt | Yes | Editing instruction in plain English, e.g. 'Remove the background' | |
| model | No | Editing model (default: standard) | |
| referenceImage | No | Reference image for shadow/kiss models: file path, data URL, or raw base64 | |
| outputPath | No | Save result to this file path instead of returning base64 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears full responsibility for behavioral disclosure. It explains the input format (file path or base64) and several model behaviors, but omits details on side effects, authentication needs, rate limits, return format (base64 vs. file save), or limitations (e.g., file size constraints).
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?
Two sentences: first sentence states purpose, second lists models and input formats. No redundant or empty phrases. The information is front-loaded and efficiently packed.
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?
No output schema is provided, so the description should clarify the return value (base64 image data or file saved). This is missing. Additionally, it lacks guidance on image size limits, required permissions, or error handling. For a tool with 5 parameters and no annotations, the description is incomplete.
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?
Input schema coverage is 100%, so baseline is 3. The description adds value by clarifying that the 'image' parameter can be a file path or base64 data URL, and it explains the purpose of each model value beyond the enum labels, e.g., 'shadow (light migration, needs reference)'.
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 'Edit an image using AI with a natural language prompt', which is a specific verb and resource. The list of models adds detail but does not explicitly differentiate from sibling tools 'xmorf_generate_image' and 'xmorf_list_models', though the edit vs generate distinction is implicit.
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 lists models with brief purposes (e.g., 'enhance (realism)', 'shadow (light migration, needs reference)'), providing some guidance on when to use each. However, it does not explicitly contrast with the 'generate' sibling (which creates new images) or provide exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
xmorf_generate_imageB
Generate an image from a text description using AI
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Text description of the image to generate, e.g. 'A futuristic city at sunset, cyberpunk style' | |
| model | No | OpenAI model to use (default: dall-e-2) | |
| size | No | Image dimensions, e.g. 1024x1024 (default: 1024x1024) | |
| outputPath | No | Save result to this file path instead of returning base64 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description only says 'using AI' without disclosing specifics like API provider (OpenAI), authentication, rate limits, or output handling. Behavioral traits such as cost implications or generation time are missing.
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?
Description is a single sentence, very concise. However, it lacks structured details and is arguably too brief for a tool with 4 parameters. Could be improved with bullet points or additional context.
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 4 parameters, no output schema, and no annotations, the description is insufficient. It omits details like output format (base64 or file), authentication, model defaults, and error handling. The tool's complexity demands more context.
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% (all 4 parameters documented). The description adds no extra meaning beyond the schema. Baseline score is appropriate.
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?
Description clearly states 'Generate an image from a text description using AI'. It specifies the action (generate), resource (image), and input (text description). Siblings (xmorf_edit_image, xmorf_list_models) have different purposes, so this tool is well-differentiated.
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?
No guidance on when to use this tool versus siblings (e.g., when to generate vs edit vs list models). No when-not-to-use or prerequisite information. The description is a generic statement without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
xmorf_list_modelsA
List available xmorf image editing models and their descriptions
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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. It accurately describes a read-only operation (listing models) with no hidden side effects. For a simple list tool, this is adequate and transparent.
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, front-loaded sentence that efficiently conveys the tool's purpose without unnecessary words. Every word 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 the tool has no parameters or output schema, the description is complete. It tells an agent everything needed to understand and invoke the tool: it lists models and descriptions.
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 tool has no parameters, and the schema is fully covered (100%). By baseline for 0 parameters, a score of 4 is appropriate since no additional parameter description is needed.
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 tool lists available xmorf image editing models and their descriptions, using a specific verb and resource. It distinguishes from sibling tools (xmorf_edit_image and xmorf_generate_image) which focus on editing and generating images, not listing models.
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?
While the purpose is clear and sibling tools imply different contexts, the description does not explicitly state when to use this tool versus alternatives, nor does it provide any exclusions or prerequisites. Usage is implied but not guided.
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. Dates show when Glama detected each change.
3 tool updates
v1.0.2- First observed
xmorf_edit_image - First observed
xmorf_generate_image - First observed
xmorf_list_models
TDQS
Each tool has a distinct purpose: generating images, editing images, and listing models. No ambiguity between them.
All tool names follow a consistent pattern: xmorf_verb_noun (edit_image, generate_image, list_models).
Three tools cover the core functionality (generate, edit, model info) without unnecessary clutter, well-scoped for the server's purpose.
The set covers the main operations (generation, editing, model listing). A minor gap could be a tool for deleting or retrieving generated images, but the core workflow is complete.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for Flux AI image generation
MCP server for NanoBanana AI image generation and editing
MCP server for Qwen Image 3 AI image generation
MCP server for Midjourney AI image generation and editing
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server that provides AI image generation and editing capabilities using Google's Gemini 2.5 Flash Image API. It allows users to create new images from text, modify existing files, and perform iterative edits through natural language prompts.6758MIT
- FlicenseNot gradedqualityCmaintenanceAn MCP server for AI-powered image processing (generate, edit, vary, analyze) supporting OpenAI, Gemini, Ideogram, and custom relay endpoints.-
- AlicenseAqualityDmaintenanceMCP server for generating and editing images using Google Gemini API, with support for multi-turn iterative refinement.322MIT
- FlicenseAqualityDmaintenanceMCP server for AI image generation supporting text-to-image and image-to-image editing via any OpenAI-compatible service, with configurable models, aspect ratios, and sizes.2-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/crawde/mcp-xmorf'
If you have feedback or need assistance with the MCP directory API, please join our Discord server