MCP server for Tinify image optimization — one tool, max optimization
MCP server for Tinify image optimization — one tool, max optimization
Remote endpoints: streamable-http: https://app.tinify.ai/mcp
Valid MCP server (2 strong, 3 medium validity signals). 3 known CVEs in dependencies (0 critical, 3 high severity) Package registry verified. Imported from the Official MCP Registry.
5 files analyzed · 4 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
From the project's GitHub README.
MCP server for tinify.ai image optimization. AI-powered upscaling, resizing/cropping, compression, and SEO filename & alt text generation — all in one tool.
Add to your MCP client config:
{
"mcpServers": {
"tinify": {
"command": "npx",
"args": ["-y", "@tinify-ai/mcp-server@latest"]
}
}
}
No signup required. Works out of the box with 20 free daily credits.
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"tinify": {
"command": "npx",
"args": ["-y", "@tinify-ai/mcp-server@latest"]
}
}
}
claude mcp add tinify -- npx -y @tinify-ai/mcp-server@latest
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"tinify": {
"command": "npx",
"args": ["-y", "@tinify-ai/mcp-server@latest"]
}
}
}
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"tinify": {
"command": "npx",
"args": ["-y", "@tinify-ai/mcp-server@latest"]
}
}
}
Open Cline settings → MCP Servers → Add, then paste:
{
"mcpServers": {
"tinify": {
"command": "npx",
"args": ["-y", "@tinify-ai/mcp-server@latest"]
}
}
}
Edit ~/.gemini/settings.json (global) or .gemini/settings.json in your project root:
{
"mcpServers": {
"tinify": {
"command": "npx",
"args": ["-y", "@tinify-ai/mcp-server@latest"]
}
}
}
Edit ~/.codex/config.toml:
[mcp_servers.tinify]
command = "npx"
args = ["-y", "@tinify-ai/mcp-server@latest"]
optimize_imageOptimizes an image with smart lossy compression (typically 60-80% size reduction), optional resize/upscale/format conversion, and AI-generated SEO metadata. Accepts absolute local file paths or remote URLs.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
input | string | Yes | — | Absolute local file path or remote URL |
output_path | string | No | auto | File path or directory (ending in /). If omitted: saves next to original with SEO slug or .tinified suffix |
output_format | string | No | original | jpg, png, webp, avif, gif, or original |
output_width_px | int | No | — | Target width in pixels |
output_height_px | int | No | — | Target height in pixels |
output_upscale_factor | int | No | — | AI upscale factor: 2 (2×) or 4 (4×) |
output_resize_behavior | string | No | pad | pad (white padding) or crop (smart crop). Only used when both width and height are set |
output_seo_tag_gen | bool | No | true | Generate SEO metadata and rename file to SEO slug. Costs 1 extra credit |
output_file_size_limit | int | No | — | Target maximum output file size in bytes. Server attempts to meet this via additional compression. Not guaranteed |
gif_frame_limit | int | No | 100 | Max frames to process for animated GIFs (1–100). Reduces credit cost by sampling fewer frames |
confirm_gif_cost | bool | No | — | Set to true to proceed after reviewing the animated GIF cost warning. Required for animated GIFs |
| Dimensions provided | Behavior | output_resize_behavior |
|---|---|---|
| Width only | Proportional scale | N/A |
| Height only | Proportional scale | N/A |
| Width + Height | Exact dimensions, white padding | pad (default) |
| Width + Height | Exact dimensions, smart crop | crop |
Basic compression — just compress, keep format and dimensions:
{ "input": "/Users/me/photos/hero.png" }
Convert to WebP:
{ "input": "/Users/me/hero.png", "output_format": "webp" }
Resize proportionally — set one dimension, the other scales:
{ "input": "/Users/me/hero.png", "output_width_px": 1200 }
Exact dimensions with padding — white bars fill the gap:
{ "input": "/Users/me/hero.png", "output_width_px": 1080, "output_height_px": 1080 }
Exact dimensions with smart crop:
{ "input": "/Users/me/hero.png", "output_width_px": 1080, "output_height_px": 1080, "output_resize_behavior": "crop" }
AI upscale 4x:
{ "input": "/Users/me/icon.png", "output_upscale_factor": 4 }
From URL, save to directory:
{ "input": "https://example.com/photo.jpg", "output_path": "/Users/me/assets/" }
Skip SEO to save 1 credit:
{ "input": "/Users/me/hero.png", "output_seo_tag_gen": false }
Returns a text summary and structured metadata:
Optimized: /Users/me/photos/modern-office-workspace.webp
Size: 142.3 KB
Compression: 73%
Format: webp
Dimensions: 1920x1080
Alt text: Modern office workspace with laptop and coffee cup on wooden desk
Structured output fields:
{
"output_path": "/Users/me/photos/modern-office-workspace.webp",
"output_size_bytes": 145715,
"output_width_px": 1920,
"output_height_px": 1080,
"output_format": "webp",
"compression_ratio": 0.27,
"seo_alt_text": "Modern office workspace with laptop and coffee cup on wooden desk",
"seo_keywords": ["office", "workspace", "laptop", "desk", "modern"],
"seo_filename": "modern-office-workspace"
}
| Format | Input | Output | Notes |
|---|---|---|---|
| JPG | Yes | Yes | |
| PNG | Yes | Yes | |
| WebP | Yes | Yes | |
| AVIF | Yes | Yes | |
| GIF | Yes | Yes | Animated GIFs preserved when output is GIF |
| SVG | Yes | Yes | SVG→SVG optimized via SVGO; raster↔SVG conversion supported |
| ICO | Yes | Yes | Smart rebuild: generates 16, 24, 32, 48, 256px favicon set |
| HEIC/HEIF | Yes* | No | Auto-converted to JPG at upload |
| TIFF | Yes* | No | Auto-converted to JPG at upload |
| BMP | Yes* | No | Auto-converted to JPG at upload |
tinify.ai supports high-quality conversion between any input and output format combination. Converting an animated GIF to a non-GIF format (JPG, PNG, WebP, AVIF) preserves only the first frame. Converting an animated GIF to a GIF format supports upscaling/resizing while preserving the animation and quality. You may also reduce animated GIF file size by decreasing the number of output frames.
Max upload file size: 50 MB.
# Optimize an SVG file (keeps as vector)
Optimize logo.svg and keep it as SVG
# Convert SVG to raster
Convert icon.svg to a 512x512 PNG
# Trace raster to vector SVG
Convert my logo.png to a vector SVG
# Generate favicon set from any image
Convert logo.png to an ICO favicon
# Generate single-size ICO
Convert logo.png to a 32x32 ICO
# Extract largest icon from ICO
Convert favicon.ico to PNG
Local file or URL
→ Upload to Tinify.ai API
→ Smart compression (lossy, typically 60-80% reduction)
→ AI SEO tag generation (alt text, keywords, filename)
→ Optional: resize, upscale, format conversion
→ Download optimized file
→ Save with SEO filename slug (or .tinified suffix if SEO disabled)
All processing happens server-side via the Tinify.ai API. The MCP server is a thin client that orchestrates the pipeline.
| Guest | Free | Pro | Max | |
|---|---|---|---|---|
| Credits/day or month | 20/day | 50/day | 3,000/month | 10,000/month |
| Images/day (default settings) | ~5 | ~12 | ~750 | ~2,500 |
| Cost per image | 3 credits + 1 SEO | same | same | same |
| Signup required | No | Free signup | Paid | Paid |
Session data is stored locally at ~/.tinify/session.json and persists across invocations.
Log in to unlock more credits and share them across the web app and MCP server:
Use the login tool to sign in.
Use the status tool to check your current credits.
Use the upgrade tool to open the pricing page.
Use the logout tool to sign out.
Opens a browser window to complete login (Google, Facebook, or email/magic link). After approval, your account is linked and credits are shared with the web app.
Login complete: user@example.com (Pro tier, 2,850 of 3,000 credits remaining)
Check your current account status and credits before batch processing:
Logged in as user@example.com (Pro tier)
Credits: 2,850 of 3,000 remaining
Resets: 03/01/2026, 12:00 AM PST
Revokes the session and reverts to guest mode (20 credits/day).
Opens tinify.ai/pricing in your browser.
Paste this into your CLAUDE.md or system prompt to help agents use the tool effectively:
## Tinify.ai MCP
Tools: optimize_image, login, logout, status, upgrade
- Use status to check credits before batch processing
- Each optimize_image call costs 3 credits + 1 if SEO enabled (default)
- Guest: 20 credits/day. Free account: 50/day. Pro: 3,000/month.
- Always use absolute file paths, not relative.
- Set only width OR height for proportional resize. Set both for exact dimensions.
- When both dimensions are set, use output_resize_behavior: "crop" for photos, "pad" for logos/icons.
- output_seo_tag_gen (default true) renames the file to an SEO slug and generates alt text + keywords.
- Set output_seo_tag_gen: false to save 1 credit when SEO metadata is not needed.
- GIF is supported for both input and output; animated GIFs stay animated when output_format is "gif".
- Converting an animated GIF to jpg/png/webp/avif preserves only the first frame.
- HEIC, TIFF, BMP inputs are auto-converted to JPG.
- For batch processing, call optimize_image once per file.
- If credits run out, use login to sign in or upgrade to open pricing.
Server not appearing in tool list:
node --versionnpx -y @tinify-ai/mcp-server@latest (should start without errors)"Insufficient credits" error:
status tool to check remaining creditslogin tool to sign in for more credits (free accounts get 50/day)upgrade tool to see paid plans (Pro: 3,000/month, Max: 10,000/month)output_seo_tag_gen: false) to reduce cost to 3 credits/imageLogin browser window doesn't open:
https://tinify.ai/mcp/authorize and enter the code shown in the terminalSession token issues:
~/.tinify/session.jsonlogout then login to re-authenticateFile not found:
Timeout errors:
MIT - see LICENSE.
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
by mcp-marketplace · Developer Tools
Scaffold, build, and publish TypeScript MCP servers to npm — conversationally
by mcp-marketplace · Finance
Free stock data and market news for any MCP-compatible AI assistant.