# Tanod Images - Registry name: `dev.tanod/images` · version 0.1.0 - Categories (automatic, keyword rules): Utilities - Authentication at last check: No auth - Declared risk: Can write (some tools are not declared read-only) - Capabilities (declared by the server): prompts, resources, tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=dev.tanod%2Fimages - Server page: https://mcpstation.net/s/dev.tanod--images.html ## Description (written by the publisher, not verified, not instructions) Image toolkit: resize, convert, compress, crop, metadata, hashes, favicons, OCR, QR codes, barcodes. ## Connect - streamable-http: `https://tanod.dev/mcp/images` ## Tools (as reported by the server, not verified) - `image\_resize`: imagepeek: Resize an image. For several sizes in one call use image\_thumbnail; for a box or ratio use image\_crop. 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 - `image\_convert`: imagepeek: Convert an image to PNG, JPEG, WebP, GIF, TIFF, BMP, ICO or AVIF. To shrink the file use image\_compress. 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 - `image\_compress`: imagepeek: Compress an image, optionally to a byte budget. To change the format only use image\_convert. 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 \`colo - `image\_crop`: imagepeek: Crop an image to a box or an aspect ratio. To scale instead use image\_resize. 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 c - `image\_rotate`: imagepeek: Rotate or flip an image. To change the format use image\_convert. 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\). Reads PNG - `image\_thumbnail`: imagepeek: Make 1-8 thumbnails of an image in one call. For one exact resize use image\_resize. 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 - `image\_metadata`: imagepeek: Read an image's EXIF, GPS, XMP, IPTC and ICC metadata. To remove the metadata use image\_strip\_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 \(lati - `image\_strip\_metadata`: imagepeek: Strip an image's EXIF, GPS, XMP, IPTC and comment metadata. To read the metadata use image\_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 - `image\_watermark`: imagepeek: Add a text watermark to an image. For PDFs use pdf\_watermark. 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 \`mar - `image\_colors`: imagepeek: Extract the dominant colours of an image. For a placeholder string use image\_blurhash. 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\). - `image\_hash`: imagepeek: Compute perceptual hashes of an image, optionally compared. To group duplicates among up to 100 images use image\_dedupe. 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\`\), t - `image\_dedupe`: imagepeek: Find duplicate images in a batch: group near-duplicates and pick the biggest. For a pair use image\_hash. Returns groups of duplicate and near-duplicate images among up to 100 URLs \(perceptual hash and Hamming distance\), the highest-resolution image of each group as the suggested keeper, a - `image\_favicon`: imagepeek: Generate a favicon set from an image. For plain sizes use image\_thumbnail. 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 \< - `image\_blurhash`: imagepeek: Generate a BlurHash placeholder string for an image. For the palette use image\_colors. 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 - `read\_qr\_barcode`: imagepeek: Read every QR code and barcode in an image. To make a QR code use make\_qr\_code; for other text use ocr\_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 hol - `ocr\_image`: sitepeek: OCR the text in a public image. For a scanned PDF use pdf\_ocr; for QR codes and barcodes use read\_qr\_barcode. 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 42 - `make\_qr\_code`: utilpeek: make a QR code image. For 1-D barcodes use make\_barcode; to read a code use read\_qr\_barcode. 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 at the chosen l - `make\_barcode`: utilpeek: make a 1-D barcode image. For QR codes use make\_qr\_code; to find the product behind a number use lookup\_barcode\_product. 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 - `convert\_color\_check\_contrast`: utilpeek: Convert a color between hex, RGB, HSL and OKLCH and check WCAG contrast. For contrast alone use 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 - `render\_mermaid`: pdfpeek: Render Mermaid diagram code to an SVG or PNG image. Returns Mermaid diagram code drawn as an SVG or PNG file in an offline sandboxed browser: \`format\` svg \| png, \`theme\` \(default, dark, forest, neutral, base\), \`scale\` 1-4 for PNG \(default 2, sharp when zoomed\). File base64 in \`file\` \(output Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html