MarkItUp - AI Image Marketing and Annotation
The MarkItUp server provides AI-powered tools for generating marketing visuals, editing images, and managing your account — usable from MCP-compatible clients like Claude Desktop, Claude Code, and Cursor.
Check Credit Balance (
markitup_credit_balance): Verify your API key and check remaining credits before running tasks.Generate Marketing Visuals (
markitup_generate): Transform a screenshot or image (URL or base64) into 3 polished marketing-visual variations. Supports multiple templates (e.g.,glassmorphic,bold_marketing,dark_professional), aspect ratios, and output resolutions (1K/2K/4K). Costs 1 credit.Regenerate a Variation (
markitup_regen): Re-render a single variation (slot 0–2) from a previous generate call, preserving the same headline and copy for brand consistency. Costs 1 credit by default.AI Outpainting / Extend (
markitup_extend): Expand an image to a larger canvas or different aspect ratio (e.g., square to 16:9) using AI outpainting — useful for repurposing assets across platforms. Costs 1 credit.Remove Background (
markitup_remove_background): Strip the background from any image using Photoroom's HD AI model, returning a transparent PNG. Costs 1 credit (free for Pro/Power subscribers).
markitup-mcp-server
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.
Prerequisites
A MarkItUp account — sign up at https://markitup.app.
A MarkItUp API key — generate one at https://markitup.app/dashboard.
Node.js 18 or newer (only if installing locally;
npxdoesn't require a local Node.js if your MCP client bundles one).
Related MCP server: Nano-Banana MCP Server
Configure in Claude Code
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_..."
}
}
}
}Configure in Claude Desktop
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_..."
}
}
}
}Configure in Cursor
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_..." }
}
}
}Tools
markitup_credit_balance
Returns 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_generate
Generates 3 polished marketing-visual variations from a screenshot. Costs 1 credit.
Argument | Type | Required | Description |
| string | yes | What the image shows and what to highlight |
| string | yes | One of |
| string | one-of | Public HTTPS URL of the source image |
| string | one-of | Base64-encoded image bytes (no |
| string | no | MIME type when supplying |
| string | no | One of |
| string | no |
|
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_regen
Regenerate 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_extend
AI outpaint — extend an image to a larger canvas / different aspect ratio. Costs 1 credit.
Argument | Type | Required | Description |
| string | one-of | Source image |
| string | yes | Target ratio ( |
| number | yes | Output pixel dimensions |
| string | no |
|
markitup_remove_background
Remove 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 |
| string | one-of | Source image |
Environment variables
Var | Required | Description |
| yes | API key from your MarkItUp dashboard |
| no | Override the API base URL. Default: |
Local development
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_..." }
}Security
Never commit
MARKITUP_API_KEYto source control.If you accidentally expose a key, revoke it immediately at https://markitup.app/dashboard and create a new one.
Keys are SHA-256 hashed on the server; the raw key is shown only once at creation.
Errors
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.
License
MIT
Maintenance
Appeared in Searches
Latest Blog Posts
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/smythmyke/markitup-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server