
Security News
Happy Birthday, Shai-Hulud
It has been one year since Shai-Hulud made its first appearance on npm.
yaktool-image-mcp
Advanced tools
Local image tools as an MCP server: compress PNG/JPEG with a visually-guarded smart mode or true lossless mode, and convert/resize images to marketplace presets (Amazon, Google Shopping, eBay) with the output rechecked against the platform rules. Same eng
Local image tools as an MCP server — compress PNG/JPEG with a visually-guarded smart mode or true lossless mode, optionally converting to WebP/AVIF.
This is the image suite of the yaktool MCP family. It ships the same engine as the browser compressor — same decision pipeline, same documented behaviours, same numbers for the same file. The pure-algorithm validators (GTIN, feeds, e-invoices…) live in the sibling package yaktool-mcp; the packages are split so nobody downloads wasm codecs they don't use.
report that shows the work (colours, measured PSNR dB, metadata removed, encoder used)kept-original)Claude Code
claude mcp add yaktool-image -- npx -y yaktool-image-mcp
Claude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"yaktool-image": { "command": "npx", "args": ["-y", "yaktool-image-mcp"] }
}
}
Cursor / other MCP clients — any stdio-capable client works with command npx -y yaktool-image-mcp.
Requires Node.js ≥ 20.
compress_image — compress a local PNG or JPEG file by absolute path.
mode: smart (default, visually-guarded lossy) or lossless (pixels byte-identical; metadata and encoding only)quality: 0–100 (default 60) — sets the PNG PSNR floor and the JPEG/WebP/AVIF encoder quality in smart modeformat: same (default), webp or avif — both support true losslessout: optional absolute output path (default: <name>-compressed.<ext> alongside the input)Returns { outcome, path, out?, originalBytes, outputBytes?, savedPercent?, report }. Animated PNGs are skipped, never flattened.
convert_image — convert a local PNG/JPEG/WebP/AVIF file between formats, optionally resizing it to a marketplace preset, and recheck the output against that platform's published rules.
preset: amazon-main, gmc or ebay — sets the target format and size, and the result carries a per-rule verdict list (recheck.verdicts, rule IDs MED-*/IMG-S01) plus recheck.allPasstarget: jpeg | png | webp | avif (defaults to the preset's format, else jpeg)width/height + fit (fit never crops, crop centre-crops, pad fills with white); a single dimension scales proportionallyallowUpscale: default false — when the target is larger than the source the image keeps its size and the report says so (ICV-002), because stretching adds blur, not detailout: optional absolute output path (default: <name>-converted.<ext>)Animated GIFs are refused rather than flattened; JPEG output composites transparency onto white and says so; EXIF/GPS is not carried over and the report states what was dropped. Same resampler (lanczos3) and same rules as the browser converter — the full catalog lives at yaktool.com/mcp.
MIT © yaktool.com
FAQs
Local image tools as an MCP server: compress PNG/JPEG with a visually-guarded smart mode or true lossless mode, and convert/resize images to marketplace presets (Amazon, Google Shopping, eBay) with the output rechecked against the platform rules. Same eng
The npm package yaktool-image-mcp receives a total of 27 weekly downloads. As such, yaktool-image-mcp popularity was classified as not popular.
We found that yaktool-image-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
It has been one year since Shai-Hulud made its first appearance on npm.

Research
/Security News
Operators behind PolinRider used a compromised GitHub account to plant malware in four development versions of a Packagist package with 700,000+ downloads.

Security News
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.