Tanod Images
by tanod.dev in Documents & files
Image toolkit: resize, convert, compress, crop, metadata, hashes, favicons, OCR, QR codes, barcodes.
https://tanod.dev/mcp/images
Last 30 days
Status and outage history ยท Atom feed
- Uptime
- 100%
- Response time
- 727 ms typical, 817 ms slowest 5%
- Last check
- 8 h ago
- Next check
- any minute now
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"tanod-images": {
"type": "http",
"url": "https://tanod.dev/mcp/images"
}
}
}18 tools
- image_resize
imagepeek: Resize an image. Returns the image resized to `width` and/or `height` (or by `scale`) with `fit` inside (default), contain (letterboxed on `background`), cover (centre crop) or fill (stretched), Lanczos by default; never upscaled unless `upscale` is true (then `upscale
- image_convert
imagepeek: Convert an image to PNG, JPEG, WebP, GIF, TIFF, BMP, ICO or AVIF. Returns the image converted `to` png, jpeg, webp, gif, tiff, bmp, ico (16-256 px icon sizes) or avif, with `quality`, progressive JPEG, optimized PNG or lossless WebP; transparency is flattened onto `bac
- image_compress
imagepeek: Compress an image, optionally to a byte budget. Returns a smaller JPEG, WebP, AVIF or PNG with metadata stripped: at `quality`, or with `max_bytes` the highest quality that fits (`target_met` false when none does); PNG can be quantised to `colors`. It never returns a l
- image_crop
imagepeek: Crop an image to a box or an aspect ratio. Returns the image cropped to a box (`left`, `top`, `width`, `height`; out of bounds is a 422 crop_out_of_bounds) or to an `aspect` ratio such as 16:9 placed by `gravity` (center or a side or corner); the reply carries the appl
- image_rotate
imagepeek: Rotate or flip an image. Returns the image rotated clockwise by `angle` (multiples of 90 are lossless transposes; other angles are bicubic, expanded by default, corners filled with `background`) and/or flipped (horizontal, vertical, both). Input: `url` or `image_base64
- image_thumbnail
imagepeek: Make 1-8 thumbnails of an image in one call. Returns 1-8 thumbnails in one call, each `sizes` entry {width, height} (at most 4096), by `fit` cover (smart centre crop with `gravity`, default) or contain; not upscaled unless `upscale`. The 15 MB output cap covers all of
- image_metadata
imagepeek: Read an image's EXIF, GPS, XMP, IPTC and ICC metadata. Returns an image's header and metadata without decoding its pixels: format, dimensions, mode, frames, dpi, ICC profile, EXIF (camera, lens, dates, exposure, ISO, orientation), GPS (latitude and longitude in decimal
- image_strip_metadata
imagepeek: Strip an image's EXIF, GPS, XMP, IPTC and comment metadata. Returns the image without EXIF (GPS included), XMP, IPTC, comments and text chunks: JPEG, PNG, WebP and GIF are stripped losslessly at the byte level (pixel data unchanged), TIFF, BMP, ICO and AVIF re-encoded;
- image_watermark
imagepeek: Add a text watermark to an image. Returns the image with a text watermark (1-200 printable characters, DejaVu Sans Mono) at one of 9 positions, or `tile`d in a staggered grid, with `opacity`, `font_size` (default 5% of the short side), `color`, `angle` and `margin`; te
- image_colors
imagepeek: Extract the dominant colours of an image. Returns an image's palette of `k` colours (hex, rgb, share), the dominant one and the average colour with its luminance, from a 200 px sample (median cut refined by k-means; transparent pixels ignored). Input: `url` or `image_b
- image_hash
imagepeek: Compute perceptual hashes of an image, optionally compared. Returns perceptual hashes of an image (aHash, dHash, pHash, wHash; 64 or 256 bits, imagehash-compatible) and, with a second image (`compare_url` or `compare_base64`), the Hamming distance and similarity per al
- image_favicon
imagepeek: Generate a favicon set from an image. Returns a favicon set from one image: favicon.ico (16, 32, 48 px), favicon-32x32.png, apple-touch-icon.png (180 px, flattened on `apple_background`, white by default), icon-192.png and icon-512.png, plus the HTML <link> snippet and
- image_blurhash
imagepeek: Generate a BlurHash placeholder string for an image. Returns the BlurHash string of an image (the published woltapp algorithm, identical to the reference package), with `x_components` and `y_components` 1-9 (default 4 x 3), for blurred placeholders while the real image
- read_qr_barcode
imagepeek: Read every QR code and barcode in an image. Returns every code found: `type` (QR, EAN-13, EAN-8, UPC-A, UPC-E, Code128, Code39), decoded `text`, `kind` (url, wifi, vcard, payment_emv, ...), corner `points`, `bbox`; a QR holding an EMVCo payment payload (PIX, QR Ph, SGQ
- ocr_image
sitepeek: OCR the text in a public image. Input: `url` and optional `lang`. Returns width, height, format, text (lines and paragraphs kept), words and confidence_mean (0-100, mean word confidence). Non-images, oversize images and private addresses are a 422 (not charged). Typical
- make_qr_code
utilpeek: make a QR code image. Input: `data`, optional `format`, `scale`, `error` and `border`. Returns `svg` (text) or `data_base64` (PNG), or with `output` "url" a 24 h download link, plus `version`, `modules`, `width_px`, `height_px` and `bytes`. Data too long for a QR code a
- make_barcode
utilpeek: make a 1-D barcode image. Input: `data`, optional `type`, `format` and `text`. Returns `svg` (text, with width_mm/height_mm) or `data_base64` (PNG, with width_px/height_px; `output` "url": a 24 h link), plus `encoded` and `bytes`. A supplied check digit (ean13, ean8, up
- convert_color_check_contrast
utilpeek: Convert a color between hex, RGB, HSL and OKLCH and check WCAG contrast. Returns a CSS color (hex, rgb(), hsl() or a CSS name) as hex, rgb, hsl, hsv, naive cmyk, OKLCH and WCAG relative luminance; with a `background`, the WCAG 2.x contrast ratio and AA / AAA pass or fai
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 8 h ago | Passed | 200 | 451 ms |
| 16 h ago | Passed | 200 | 466 ms |
| 26 h ago | Passed | 200 | 815 ms |
| 35 h ago | Passed | 200 | 282 ms |
| 43 h ago | Passed | 200 | 1.0 s |
| 2 days ago | Passed | 200 | 817 ms |
| 3 days ago | Passed | 200 | 727 ms |
| 3 days ago | Passed | 200 | 745 ms |