npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@boomlinkai/image-worker-mcp

v0.0.6

Published

MCP server for image worker - Resize, transform, etc...

Downloads

48

Readme

@boomlinkai/image-worker-mcp

Demo: Image Resize and Upload

A fast, plug-and-play MCP server for image processing and cloud uploads, designed for AI assistants and automation workflows.


📝 What is @boomlinkai/image-worker-mcp?

A lightweight server implementing Model Context Protocol (MCP) for automated image manipulation and uploads. It makes image resizing, converting, optimizing, and uploading seamless for devs, AI tools, or automated pipelines.


✨ Features

  • All-in-One Image Processing: Resize, convert, optimize, and transform images with the powerful sharp library.
  • Effortless Cloud Uploads: Integrates with AWS S3, Cloudflare R2, Google Cloud Storage.
  • AI & Workflow Ready: Built for MCP, integrates with any AI assistant or workflow runner.
  • Flexible Input: Works with file paths, URLs, or base64 images.
  • Automatable: Scriptable for batch tasks or as a backend service.

🚀 How to Install

Use npm (or yarn/pnpm):

npm install -g @boomlinkai/image-worker-mcp
# or
yarn global add @boomlinkai/image-worker-mcp
# or
pnpm add -g @boomlinkai/image-worker-mcp

Or use it instantly (no install):

npx @boomlinkai/image-worker-mcp

⚡ Quick Start

Start the MCP Server

npx @boomlinkai/image-worker-mcp

Example: AI Assistant Workflow

Resize an image:

{
  "tool_code": "use_mcp_tool",
  "tool_name": "resize_image",
  "server_name": "image-worker",
  "arguments": {
    "imageUrl": "https://example.com/original.jpg",
    "width": 800,
    "format": "webp",
    "outputPath": "./resized_image.webp"
  }
}

Upload an image:

{
  "tool_code": "use_mcp_tool",
  "tool_name": "upload_image",
  "server_name": "image-worker",
  "arguments": {
    "imagePath": "./resized_image.webp",
    "service": "s3",
    "filename": "my-optimized-image",
    "folder": "website-assets"
  }
}

🛠️ Usage & Configuration

The MCP server works via stdio, making it easy to plug into AI tools and code editors.

Platform Integrations

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "image-worker": {
      "command": "npx",
      "args": ["-y", "@boomlinkai/image-worker-mcp"]
    }
  }
}

🧰 Tools Reference

resize_image

Resize and transform images via:

  • imagePath, imageUrl, or base64Image (input)
  • width, height, fit, format, quality, rotate, etc.
  • Returns path or base64 of processed image

upload_image

Upload any image (by path/url/base64) to:

  • service: s3 | cloudflare | gcloud
  • filename, folder, public, etc.
  • Set credentials as env vars

🔑 Environment Variables

Set these for your chosen cloud provider:

AWS S3

export AWS_ACCESS_KEY_ID=xxx
export AWS_SECRET_ACCESS_KEY=xxx
export S3_BUCKET=your-bucket
export S3_REGION=us-east-1
# Optional: S3_ENDPOINT=https://...

Cloudflare R2

export CLOUDFLARE_R2_ACCESS_KEY_ID=xxx
export CLOUDFLARE_R2_SECRET_ACCESS_KEY=xxx
export CLOUDFLARE_R2_BUCKET=your-bucket
export CLOUDFLARE_R2_ENDPOINT=https://...

Google Cloud Storage

export GCLOUD_PROJECT_ID=xxx
export GCLOUD_BUCKET=your-bucket
# Optionally: GCLOUD_CREDENTIALS_PATH=/path/to/key.json

Default upload service:

export UPLOAD_SERVICE=s3

⚠️ Never commit credentials to source control. Use environment variables or secret managers.


🏗️ Requirements

  • Node.js 18.x or higher
  • No system dependencies; sharp is auto-installed

🐞 Troubleshooting / FAQ

  • Install fails on ARM/Apple Silicon? Run brew install vips (sharp dependency) or use Node 18+.
  • Credentials not working? Check env var spelling/casing.
  • Image output is blank or corrupt? Confirm input image type and size.

🤝 Contributing

PRs and issues welcome! Please open an issue or submit a pull request.


👤 Author

Vuong NgoBoomLink.ai


🌐 Connect with Us

Discord X.com LinkedIn


📄 License

MIT


💖 Sponsored by BoomLink.ai

BoomLink.ai Logo