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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@nova-mind-cloud/ftp-uploads-mcp

v1.0.3

Published

MCP Server for FTP image uploads with automatic optimization

Downloads

14

Readme

@gdm-pixel/ftp-uploads-mcp

npm version License: NMCL Subscription Required

🔐 Subscription-Based FTP Uploads MCP

FTP uploads with automatic image optimization.

⚠️ Requires Nova-Mind Cloud subscription - Starting at €39/month


💎 Open Source Code + Cloud Services

Code is open - Audit, learn, modify freely
🔐 Usage requires subscription - Backend authentication & infrastructure

👉 View pricing | Plans: €39 / €89 / €149 per month


✨ Features

  • 📤 Direct FTP Upload - Upload images to your FTP server
  • 🖼️ Auto Optimization - Automatic WebP conversion + JPEG optimization
  • 📏 Smart Resizing - Intelligent image resizing for web performance
  • 🔗 Public URLs - Instant public URLs after upload
  • 🎨 Multi-format - Supports JPEG, PNG, WebP, GIF
  • Fast & Efficient - Sharp-based image processing

📦 Installation

With Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "ftp-uploads": {
      "command": "npx",
      "args": ["-y", "@gdm-pixel/ftp-uploads-mcp@latest"],
      "env": {
        "FTP_HOST": "ftp.your-server.com",
        "FTP_USER": "your-username",
        "FTP_PASSWORD": "your-password",
        "FTP_PORT": "21",
        "FTP_TARGET_DIR": "/public/images/",
        "FTP_PUBLIC_URL": "https://your-domain.com/images/"
      }
    }
  }
}

Config location:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

⚙️ Configuration

Required Environment Variables

| Variable | Description | Example | |----------|-------------|---------| | FTP_HOST | FTP server hostname | ftp.example.com | | FTP_USER | FTP username | [email protected] | | FTP_PASSWORD | FTP password | your-secure-password | | FTP_PORT | FTP port (default: 21) | 21 | | FTP_TARGET_DIR | Target directory on FTP | /public/img/ | | FTP_PUBLIC_URL | Public URL base | https://example.com/img/ |


🚀 Usage

Upload and Optimize Image

Upload this image to the server: /path/to/image.jpg

What happens:

  1. Image is optimized (WebP + JPEG formats)
  2. Uploaded to your FTP server
  3. Public URLs returned instantly

List Server Images

Show me the images on the server

Delete Image

Delete image-name.jpg from the server

Test Connection

Test the FTP connection

📋 Available Tools

upload_image_to_server

Upload and optimize an image to FTP server.

Parameters:

  • imagePath (required) - Local path to image
  • filename (optional) - Custom filename
  • optimize (optional) - Enable optimization (default: true)
  • formats (optional) - Output formats: ["jpeg", "webp"]

list_server_images

List images on FTP server.

Parameters:

  • limit (optional) - Max images to list (default: 20)

delete_server_image

Delete an image from FTP server.

Parameters:

  • filename (required) - Filename to delete

test_ftp_connection

Test FTP connection and display config.


🔧 Troubleshooting

Connection Issues

Problem: "Connection refused" or timeout errors

Solutions:

  • Verify FTP_HOST is correct
  • Check firewall allows FTP (port 21)
  • Confirm FTP credentials are valid
  • Try passive mode if behind NAT

Upload Fails

Problem: Upload fails but connection works

Solutions:

  • Check FTP_TARGET_DIR exists on server
  • Verify write permissions for FTP user
  • Ensure sufficient disk space on server
  • Check filename doesn't contain invalid characters

Optimization Issues

Problem: Image optimization fails

Solutions:

  • Verify image file exists and is readable
  • Check image format is supported (JPEG, PNG, WebP, GIF)
  • Ensure sufficient local disk space for temp files
  • Try with optimize: false to isolate issue

📄 License

MIT © Charles Annoni


🔗 Links


🙏 Credits

Created by Charles Annoni (GDM-Pixel)

Part of the Nova-Mind ecosystem - AI-powered coaching platform.