@glassypic/mcp-server
[npm version]
[License: MIT]
[MCP]
MCP server for GlassyPic. One tool that turns raw images into production-ready assets: upscaling, resizing and cropping, compression, file format conversion, and SEO filename and alt text generation. Describe the outcome you want in natural language.
Quick Start
Add to your MCP client config:
No signup required. Works out of the box with 20 free daily credits.
Windows users: If the server doesn't appear after editing a JSON config, your client likely can't resolve npx from PATH (a common, silent failure). Wrap the command with cmd /c:
This applies to the hand-edited JSON configs below (Claude Desktop, Cursor, Windsurf, Cline). The CLI commands (Claude Code, Gemini CLI, Codex CLI) are unaffected.
Client-Specific Setup
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Claude Code
Cursor
Add to .cursor/mcp.json in your project root:
Windsurf
Edit ~/.codeium/windsurf/mcp_config.json:
Smithery
Install via Smithery: [](https://smithery.ai/servers/glassypic/mcp-server)
Cline
Open Cline settings → MCP Servers → Add, then paste:
Gemini CLI
Or edit ~/.gemini/settings.json (global) or .gemini/settings.json in your project root:
Verify it's running inside Gemini CLI with /mcp list.
OpenAI Codex CLI
Or edit ~/.codex/config.toml manually:
Tool: optimize_image
One tool that turns a supplied image into a production-ready asset through a fixed server-side pipeline (typically 60-80% size reduction), with optional resize, upscale, format conversion, and SEO metadata generation. Inputs include JPEG, PNG, WebP, AVIF, GIF, SVG, ICO, HEIC, TIFF, and BMP. Outputs are JPEG, PNG, WebP, AVIF, GIF, SVG, and ICO. Accepts absolute local file paths or remote URLs.
Parameters
Resize Behavior
Examples
Basic compression — just compress, keep format and dimensions:
Convert to WebP:
Resize proportionally — set one dimension, the other scales:
Exact dimensions with padding — white bars fill the gap:
Exact dimensions with smart crop:
AI upscale 4x:
From URL, save to directory:
Skip SEO to save 1 credit:
Output
Returns a text summary and structured metadata:
Structured output fields:
Supported Formats
GlassyPic 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.
SVG & ICO Examples
How It Works
All processing happens server-side via the GlassyPic API. The MCP server is a thin client that orchestrates the pipeline.
Credits
Guests can use the tool with no signup. Logging in links your GlassyPic account and shares its credits with the web app. Allowances differ by plan and change over time: run the status tool for your live balance, or see glassypic.com/pricing for plans. A default run (compress + SEO tags) costs 4 credits per image.
Session data is stored locally at ~/.glassypic/session.json and persists across invocations.
Automatic upscaling
When a resize target exceeds the source image by more than 1.2×, GlassyPic
automatically runs an AI upscale before resizing, so enlargements ship sharp
instead of blurred. This happens without output_upscale_factor being set and
adds 2 credits.
A resize-only call therefore costs the same as a full pipeline when the source is
smaller than the target:
Animated GIFs are billed per frame — see the confirm_gif_cost parameter.
Account & Credits
Log in to unlock more credits and share them across the web app and MCP server:
login
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.
status
Check your current account status and credits before batch processing:
logout
Revokes the session and reverts to guest mode.
upgrade
Opens glassypic.com/pricing in your browser.
Tips for AI Agents
Paste this into your CLAUDE.md or system prompt to help agents use the tool effectively:
Troubleshooting
Server not appearing in tool list:
- Restart your MCP client after editing the config
- Ensure Node.js >= 18 is installed:
node --version
- Try running directly:
npx -y @glassypic/mcp-server@latest (should start without errors)
- On Windows: if the server silently never loads, wrap the command with
cmd /c ("command": "cmd", "args": ["/c", "npx", "-y", "@glassypic/mcp-server@latest"]) — see the Windows note under Quick Start
"Insufficient credits" error:
- Use the
status tool to check remaining credits
- Use the
login tool to sign in for more credits
- Use the
upgrade tool to open the pricing page and compare plans
- Disable SEO tags (
output_seo_tag_gen: false) to save 1 credit; note that resizing up past 1.2× the source still adds an automatic 2-credit upscale regardless
Login browser window doesn't open:
- Open this URL manually:
https://glassypic.com/mcp/authorize and enter the code shown in the terminal
- Ensure a browser is installed and accessible
Session token issues:
- Session data is stored at
~/.glassypic/session.json
- Delete this file to reset and start fresh
- Use
logout then login to re-authenticate
File not found:
- Use absolute paths for local files
- For URLs, ensure the image is publicly accessible
Timeout errors:
- Large images or AI upscaling can take 30-60 seconds
- The server has a 60-second timeout per job
Privacy Policy
Full policy: https://glassypic.com/privacy/
What is transmitted. Images you optimize are uploaded to the GlassyPic API
(https://api.glassypic.com) for processing, along with your authentication
token. Images are retained according to your account tier and then deleted —
both the original upload and the processed version. See the policy for the
retention schedule.
When you pass a remote URL to the tool, the GlassyPic API fetches it server-side; the URL itself is sent to GlassyPic, and the request to the image host originates from GlassyPic's servers rather than from your machine.
What is stored locally. When you use the login tool, your access token and
account email are written to ~/.glassypic/session.json with file mode 0600
(owner read/write only). If you optimize an image without logging in, the
first upload mints a guest session token, which is written to that same file
so subsequent calls stay attached to the same guest session's credits — no
account, email, or personal information is attached to it. Running the
logout tool removes the file's token. See also
Account & Credits and Troubleshooting.
What is not collected. When run as a local connector, this server sends no
telemetry and makes no network call other than to the GlassyPic API. (The
remote HTTP transport additionally calls Supabase for authentication.)
Configuration
The value must be an https URL. Plain http is accepted only for localhost
and 127.0.0.1, because your images and Bearer token are sent to this host. An
invalid value produces a clear error naming the variable rather than a silent
request to the wrong endpoint.
Requirements
- Node.js >= 18
- An MCP-compatible client (Claude Desktop, Claude Code, Cursor, Windsurf, Cline, OpenAI Codex CLI, Gemini CLI, etc.)
Security
Report vulnerabilities privately. See SECURITY.md. Do not file a public issue for an unfixed security report.
License
MIT - see LICENSE.