loading…
Search for a command to run...
loading…
MCP server for MarkItUp's AI image-annotation pipeline. Generate polished marketing-visual variations of any screenshot, regenerate, AI outpaint, and remove bac
MCP server for MarkItUp's AI image-annotation pipeline. Generate polished marketing-visual variations of any screenshot, regenerate, AI outpaint, and remove backgrounds — powered by Claude analysis + Gemini rendering.
npm version MCP Registry Glama License: MIT
MCP (Model Context Protocol) server for MarkItUp — AI-powered image annotation and marketing-visual generation. Lets Claude Code, Claude Desktop, Cursor, ChatGPT-with-MCP, and other MCP-compatible clients call MarkItUp directly.
Five tools available: markitup_credit_balance, markitup_generate, markitup_regen, markitup_extend, markitup_remove_background.
npx doesn't require a local Node.js if your MCP client bundles one).Add to your MCP config (~/.claude/mcp.json or project-scoped .mcp.json):
{
"mcpServers": {
"markitup": {
"command": "npx",
"args": ["-y", "markitup-mcp-server"],
"env": {
"MARKITUP_API_KEY": "mk_live_..."
}
}
}
}
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"markitup": {
"command": "npx",
"args": ["-y", "markitup-mcp-server"],
"env": {
"MARKITUP_API_KEY": "mk_live_..."
}
}
}
}
Cursor uses the same JSON shape. Settings → MCP → Add Server:
{
"mcpServers": {
"markitup": {
"command": "npx",
"args": ["-y", "markitup-mcp-server"],
"env": { "MARKITUP_API_KEY": "mk_live_..." }
}
}
}
markitup_credit_balanceReturns the current credit balance and subscription status.
No arguments. Use it to verify your API key works and to check credits before calling generation tools.
markitup_generateGenerates 3 polished marketing-visual variations from a screenshot. Costs 1 credit.
| Argument | Type | Required | Description |
|---|---|---|---|
description |
string | yes | What the image shows and what to highlight |
template_id |
string | yes | One of glassmorphic, clean_minimal, bold_marketing, dark_professional, documentation (and more) |
image_url |
string | one-of | Public HTTPS URL of the source image |
image_base64 |
string | one-of | Base64-encoded image bytes (no data: prefix) |
image_mime_type |
string | no | MIME type when supplying image_base64. Default: image/png |
aspect_ratio |
string | no | One of 1:1, 3:2, 2:3, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 |
image_size |
string | no | 1K, 2K, or 4K |
Returns: the marketing copy (headline, sub-headline) plus 3 generated image variations as base64 image content blocks. The full structured response is also available under structuredContent.
Example prompt (in Claude Code):
Use markitup_generate with the screenshot at https://example.com/dashboard.png — highlight the export button and pitch it for a marketing landing page using the bold_marketing template.
markitup_regenRegenerate one variation from a previous markitup_generate call. Costs 1 credit by default (charge_credit: false to skip).
The LLM must pass back the text_analysis object from the previous generate's structuredContent.text so the regenerated visual stays on-brand with the same headline / sub-headline. variation_index selects which slot (0–2).
markitup_extendAI outpaint — extend an image to a larger canvas / different aspect ratio. Costs 1 credit.
| Argument | Type | Required | Description |
|---|---|---|---|
image_url / image_base64 |
string | one-of | Source image |
aspect_ratio |
string | yes | Target ratio (16:9, 9:16, etc.) |
target_width / target_height |
number | yes | Output pixel dimensions |
image_size |
string | no | 1K, 2K, or 4K |
markitup_remove_backgroundRemove the background from an image via Photoroom's HD model. Returns a transparent PNG. Costs 1 credit (free for active Pro/Power subscribers).
| Argument | Type | Required | Description |
|---|---|---|---|
image_url / image_base64 |
string | one-of | Source image |
| Var | Required | Description |
|---|---|---|
MARKITUP_API_KEY |
yes | API key from your MarkItUp dashboard |
MARKITUP_API_BASE |
no | Override the API base URL. Default: https://markitup.app/api/v1. Useful for testing against staging. |
git clone https://github.com/markitup/mcp-server.git
cd mcp-server
npm install
npm run build
# Point your MCP client config at the local build:
{
"command": "node",
"args": ["/absolute/path/to/mcp-server/dist/index.js"],
"env": { "MARKITUP_API_KEY": "mk_test_..." }
}
MARKITUP_API_KEY to source control.The server surfaces clean human-readable errors for the common cases:
Invalid or missing MARKITUP_API_KEY — set or rotate the key.Out of MarkItUp credits — top up at https://markitup.app/credits.Rate limit exceeded — wait briefly and retry.MIT
Run in your terminal:
claude mcp add markitup-mcp-server -- npx