
Pruna
- 2 repo stars
- Updated July 14, 2026
- charlesrapp/pruna-mcp-server
Pruna is a MCP server that runs ultra-fast Pruna AI image generation, editing, upscaling, and video generation from your agent.
About
Pruna MCP wires Pruna AI’s fast image and video APIs into any MCP-capable coding agent through a stdio server published on PyPI as pruna-mcp-server. Developers shipping landing pages, social clips, or in-app creative features use it to draft visuals, iterate edits, upscale assets, and generate short video without context-switching to a separate studio UI. You must supply a PRUNA_API_KEY from pruna.ai; complexity sits at intermediate because you are managing API quotas, prompts, and asset pipelines inside the agent. It is phase-specific to Build integrations—not a hosting or analytics layer—so tag it where you first plug a generative media vendor into your stack.
- Ultra-fast image generation, editing, and upscaling via Pruna AI
- Video generation exposed alongside image tools through one MCP server
- stdio PyPI package pruna-mcp-server (0.1.1) with required PRUNA_API_KEY
- Repository: github.com/charlesrapp/pruna-mcp-server
Pruna by the numbers
- Data as of Jul 15, 2026 (Skillselion catalog sync)
claude mcp add --env PRUNA_API_KEY=YOUR_PRUNA_API_KEY pruna-mcp-server -- uvx pruna-mcp-serverAdd your badge
Show developers this MCP server is listed on Skillselion. Paste this into your README.
| repo stars | ★ 2 |
|---|---|
| Package | pruna-mcp-server |
| Transport | STDIO |
| Auth | Required |
| Last updated | July 14, 2026 |
| Repository | charlesrapp/pruna-mcp-server ↗ |
What it does
Generate, edit, upscale images, and create video clips from the agent without wiring custom Pruna REST calls.
Who is it for?
Best when you ship content-heavy SaaS, landing pages, or agent demos and want one MCP hook to Pruna’s media stack.
Skip if: Skip if you need on-prem models only, zero external API spend, or fine-grained batch pipelines without agent oversight.
What you get
Your agent can produce and refine Pruna-powered images and videos in-thread, ready to drop into prototypes, ads, or app asset folders.
- Generated or edited images via Pruna inference
- Upscaled image assets for web or app use
- Short-form video outputs for demos or social distribution
By the numbers
- Server version 0.1.1, registryType pypi, identifier pruna-mcp-server
- Four capability areas stated: image generation, editing, upscaling, video generation
README.md
🎨 pruna-mcp-server
MCP server for Pruna AI — ultra-fast image generation, editing, upscaling, and video generation directly from your AI assistant.
Pruna AI is an inference API specialized in image and video generation. It offers sub-2-second image generation starting at $0.005/image, with models for text-to-image, image editing, upscaling, and video generation. This MCP server wraps their API so any MCP-compatible client (Claude Desktop, Kiro, Cursor) can generate visual content natively.
Conforms to MCP Specification 2025-11-25.
Features
- 6 MCP Tools:
generate_image,edit_image,upscale_image,generate_video,list_models,upload_file - 7 MCP Prompts: Product photos, virtual staging, social media visuals, game concept art, ad creatives, video ads, image enhancement
- 2 MCP Resources:
pruna://modelscatalog for model discovery without tool calls - 18 models: 10 text-to-image, 3 editing, 1 upscale, 4 video
- Smart sync/async: Sync for fast image models, async with polling for video
- Transparent file handling: Pass local paths or URLs — auto-upload handled
- Native MCP image return:
ImageContentblocks for clients that support inline display - Full MCP compliance: Tool annotations, structured content, progress notifications
Quick Start
# With uvx (zero install)
uvx pruna-mcp-server
# Or with pip
pip install pruna-mcp-server
pruna-mcp
Set your API key — get one at pruna.ai (go to the developer portal or contact Pruna to request access):
# macOS Keychain (recommended)
security add-generic-password -a $USER -s PRUNA_API_KEY -w "your-api-key"
# Linux (GNOME Keyring)
secret-tool store --label="Pruna API Key" service pruna-mcp-server key api_key <<< "your-api-key"
# Windows (PowerShell)
[System.Environment]::SetEnvironmentVariable("PRUNA_API_KEY", "your-api-key", "User")
# Or environment variable (all platforms)
export PRUNA_API_KEY="your-api-key"
MCP Client Configuration
Kiro CLI
Add to your agent config (e.g. ~/.kiro/agents/default.json):
In mcpServers:
"pruna": {
"command": "sh",
"args": ["-c", "PRUNA_API_KEY=$(security find-generic-password -a $USER -s PRUNA_API_KEY -w) uv run --directory /path/to/pruna-mcp-server pruna-mcp"],
"autoApprove": ["generate_image", "edit_image", "upscale_image", "generate_video", "list_models", "upload_file"]
}
In tools, add: "@pruna/*"
In allowedTools, add: "generate_image", "edit_image", "upscale_image", "generate_video", "list_models", "upload_file"
Note: Kiro agents use a
toolswhitelist with@server-name/*syntax and anallowedToolslist. Both must include the Pruna tools for them to be available.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"pruna": {
"command": "sh",
"args": ["-c", "PRUNA_API_KEY=$(security find-generic-password -a $USER -s PRUNA_API_KEY -w) /path/to/uv run --directory /path/to/pruna-mcp-server pruna-mcp"]
}
}
}
Important: Use the full path to
uv(e.g./Users/you/.local/bin/uv) — Claude Desktop launches processes with a minimal PATH that doesn't include~/.local/bin.
Note: Claude Desktop does not render
ImageContentinline in the chat. The image is generated and saved locally — Claude will reference the file path in its response.
Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"pruna": {
"command": "uvx",
"args": ["pruna-mcp-server"],
"env": { "PRUNA_API_KEY": "your-api-key" }
}
}
}
Tools
| Tool | Description | Pricing |
|---|---|---|
generate_image |
Text-to-image with 10 models | From $0.0001/image |
edit_image |
Edit 1-5 images with text instructions | From $0.010/image |
upscale_image |
AI upscaling to 1-8 megapixels | From $0.005/image |
generate_video |
Text/image/audio to video | From $0.005/s |
list_models |
Browse all available models with pricing | Free |
upload_file |
Upload files for editing/video workflows | Free |
Image tools return both a JSON metadata block and a native MCP ImageContent block (base64, for images < 5MB).
Prompts
Built-in workflow templates for common use cases:
| Prompt | Use Case | Example |
|---|---|---|
product-photo |
E-commerce product shots | "white leather sneakers on clean background" |
virtual-staging |
Real estate room staging | Stage empty rooms with furniture |
social-media-visual |
Platform-optimized visuals | Auto aspect ratio per platform |
game-concept-art |
Game assets & environments | Characters, weapons, landscapes |
ad-creative |
Digital ads with text overlay | Headlines rendered in the image |
video-ad |
Short video ads | Talking heads, product demos |
image-enhance |
Upscale + enhance workflow | AI-generated image refinement |
Configuration
| Environment Variable | Required | Default | Description |
|---|---|---|---|
PRUNA_API_KEY |
✅ | — | Your Pruna AI API key |
PRUNA_OUTPUT_DIR |
— | ./pruna-output |
Directory for downloaded files |
PRUNA_POLL_INTERVAL |
— | 2 |
Seconds between async polls |
PRUNA_TIMEOUT |
— | 120 |
HTTP timeout in seconds |
PRUNA_MAX_RETRIES |
— | 3 |
Max retries on transient errors |
Client Compatibility
| Client | Transport | Status | Notes |
|---|---|---|---|
| Kiro CLI | STDIO | ✅ Tested | Requires tools + allowedTools config |
| Claude Desktop | STDIO | ✅ Tested | Use full path to uv; no inline image display |
| Cursor | STDIO | 🔲 Planned | — |
| Claude Code | STDIO | 🔲 Planned | — |
Development
git clone https://github.com/charlesrapp/pruna-mcp-server.git
cd pruna-mcp-server
uv sync --extra dev
# Run tests (100 tests, 94% coverage)
uv run pytest --cov
# Lint & type check
uv run ruff check src/ tests/
uv run mypy src/
See CONTRIBUTING.md for guidelines.
License
MIT — see LICENSE.
Recommended MCP Servers
How it compares
Pruna media API MCP bridge, not a local Stable Diffusion skill or generic image prompt pack.
FAQ
Who is Pruna MCP for?
Developers and founders using Claude Code or similar agents who want Pruna AI images and video without hand-writing HTTP clients.
When should I use Pruna MCP?
Use it during Build when you need hero images, ad variants, upscaled assets, or short video for a launch while staying inside your agent workflow.
How do I add Pruna MCP to my agent?
Install the PyPI pruna-mcp-server stdio package, set PRUNA_API_KEY from pruna.ai, register the server in your MCP config, then call the Pruna tools from your client.