Spronta MCP Server
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., "@Spronta MCP ServerUpload https://example.com/banner.jpg and resize it to 1200px width in WebP format"
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.
@spronta/mcp
MCP server for uploading, transforming, and serving images on a global CDN — directly from AI assistants.
Connect Claude, GPT, Cursor, Windsurf, or any MCP-compatible client to the Spronta Image CDN. Upload images from URLs or base64, apply real-time transforms (resize, crop, format conversion, smart crop, blurhash), create reusable presets, generate signed URLs, and monitor usage — all through natural language.
Why use this?
Upload images from AI — give your LLM an image URL and it uploads, optimizes, and returns a CDN link
Real-time transforms — resize, crop, convert to WebP/AVIF/JXL, smart crop with face detection
Global CDN delivery — images served from edge locations worldwide
Blurhash generation — automatic blur placeholders computed on upload
Signed URLs — HMAC-SHA256 signed URLs with expiration for private images
Named presets — create reusable transform configurations (e.g.
thumbnail,hero,og-image)No vendor lock-in — MIT licensed, open source
Quick start
Install
npm install -g @spronta/mcp
# or use directly
npx @spronta/mcpClaude Code
claude mcp add spronta \
-e SPRONTA_API_KEY=spronta_img_... \
-e SPRONTA_PROJECT_ID=your-project-id \
-- npx @spronta/mcpClaude Desktop / Cursor / Windsurf
Add to your MCP configuration file:
{
"mcpServers": {
"spronta": {
"command": "npx",
"args": ["@spronta/mcp"],
"env": {
"SPRONTA_API_KEY": "spronta_img_...",
"SPRONTA_PROJECT_ID": "your-project-id"
}
}
}
}Get your API key
Sign up at app.spronta.com (free tier: 100 images)
Create a project in the dashboard
Copy your API key from project settings
Environment variables
Variable | Required | Description |
| Yes | Your project API key |
| No | Default project ID (can also be passed per-tool) |
| No | API base URL (default: |
18 tools available
Projects
Tool | Description |
| List all image projects |
| Create a new project |
| Get project details with usage stats |
| Update name or custom domain |
| Permanently delete a project |
Upload & Images
Tool | Description |
| Upload from URL or base64 — handles presigned upload, blurhash generation, and CDN URL creation in one call |
| List images with pagination |
| Update alt text and tags |
| Delete an image from CDN and storage |
Transform Presets
Tool | Description |
| List named transform presets |
| Create a preset (use in CDN URLs with |
| Update a preset's name or transforms |
| Delete a preset |
URL Signing
Tool | Description |
| Get URL signing configuration |
| Enable/disable HMAC-SHA256 signing |
| Generate a signed CDN URL with optional expiration |
Analytics & Utility
Tool | Description |
| Get daily metrics (requests, bandwidth, transforms) |
| Build a CDN URL with transform parameters (no API call) |
Example prompts
Once connected, just ask your AI:
> Upload this image to my project: https://example.com/photo.jpg
> Create a thumbnail preset: 200x200, cover crop, face detection, webp format
> How many requests did my project handle this week?
> Generate a signed URL for hero.jpg that expires in 1 hour
> List all my images and update the alt text on the product shots
> Build a CDN URL for banner.png at 1200px wide in avif formatTransform options
When creating presets or building URLs, these transforms are available:
Parameter | Type | Description |
| integer | Output width (1–8192) |
| integer | Output height (1–8192) |
| string |
|
| string |
|
| integer | 1–100 |
| string |
|
| string |
|
| integer | Gaussian blur (1–250) |
| number | Unsharp mask (0–10) |
| integer | Corner radius (1–9999, or "max" for circle) |
| boolean | Convert to grayscale |
| integer | -100 to 100 |
| number | -100 to 100 |
| integer | -100 to 100 |
| boolean | Sepia tone filter |
| integer | 90, 180, 270 |
| string |
|
How upload works
The upload_image tool handles the full upload pipeline in a single call:
You provide an image URL (or base64 data) and a filename
The server fetches the image
Requests a presigned upload URL from Spronta
Uploads the file directly to storage
Confirms the upload — Spronta computes the blurhash and detects dimensions
Returns the confirmed image with CDN URL, blurhash, and metadata
Related packages
@spronta/images— Core URL builder SDK (zero deps)@spronta/images-react— React components@spronta/images-next— Next.js integrationWordPress plugin — Automatic CDN for WordPress
Links
License
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/spronta/mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server