Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AIFire in da houseCheck it out free

mcp-server-ftp

MCP.Pizza Chef: alxspiker

mcp-server-ftp is a Model Context Protocol server that facilitates seamless interaction with FTP servers. It enables listing directories, downloading and uploading files, creating directories, and deleting files or folders on FTP servers. Designed for integration with LLM platforms like Claude.app, it provides structured, real-time FTP access to enhance AI workflows involving remote file management.

Use This MCP server To

List files and folders on remote FTP servers Download files from FTP servers for processing Upload or update files on FTP servers Create new directories on FTP servers Delete files or directories remotely via FTP

README

MseeP.ai Security Assessment Badge

MCP Server for FTP Access

smithery badge

This Model Context Protocol (MCP) server provides tools for interacting with FTP servers. It allows Claude.app to list directories, download and upload files, create directories, and delete files/directories on FTP servers.

Features

  • List Directory Contents: View files and folders on the FTP server
  • Download Files: Retrieve file content from the FTP server
  • Upload Files: Create new files or update existing ones
  • Create Directories: Make new folders on the FTP server
  • Delete Files/Directories: Remove files or directories

Installation

Installing via Smithery

To install mcp-server-ftp for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @alxspiker/mcp-server-ftp --client claude

Prerequisites

  • Node.js 16 or higher
  • Claude for Desktop (or other MCP-compatible client)

Building from Source

Linux/macOS

# Clone the repository
git clone https://github.com/alxspiker/mcp-server-ftp.git
cd mcp-server-ftp

# Install dependencies
npm install

# Build the project
npm run build

Windows

# Clone the repository
git clone https://github.com/alxspiker/mcp-server-ftp.git
cd mcp-server-ftp

# Run the Windows build helper script
build-windows.bat

The build-windows.bat script handles dependency installation and building on Windows systems, with fallback options if the TypeScript compiler has issues.

Configuration

To use this server with Claude for Desktop, add it to your configuration file:

MacOS/Linux

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "ftp-server": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-server-ftp/build/index.js"],
      "env": {
        "FTP_HOST": "ftp.example.com",
        "FTP_PORT": "21",
        "FTP_USER": "your-username",
        "FTP_PASSWORD": "your-password",
        "FTP_SECURE": "false"
      }
    }
  }
}

Windows

Edit %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "ftp-server": {
      "command": "node",
      "args": ["C:\\path\\to\\mcp-server-ftp\\build\\index.js"],
      "env": {
        "FTP_HOST": "ftp.example.com",
        "FTP_PORT": "21",
        "FTP_USER": "your-username",
        "FTP_PASSWORD": "your-password",
        "FTP_SECURE": "false"
      }
    }
  }
}

Troubleshooting Windows Build Issues

If you encounter build issues on Windows:

  1. Use the provided build-windows.bat script which handles common build issues
  2. Make sure Node.js and npm are properly installed
  3. Try running the TypeScript compiler directly: npx tsc
  4. If you still have issues, you can use the pre-compiled files in the build directory by running:
    node path\to\mcp-server-ftp\build\index.js
    

Configuration Options

Environment Variable Description Default
FTP_HOST FTP server hostname or IP address localhost
FTP_PORT FTP server port 21
FTP_USER FTP username anonymous
FTP_PASSWORD FTP password (empty string)
FTP_SECURE Use secure FTP (FTPS) false

Usage

After configuring and restarting Claude for Desktop, you can use natural language to perform FTP operations:

  • "List the files in the /public directory on my FTP server"
  • "Download the file /data/report.txt from the FTP server"
  • "Upload this text as a file called notes.txt to the FTP server"
  • "Create a new directory called 'backups' on the FTP server"
  • "Delete the file obsolete.txt from the FTP server"
  • "Remove the empty directory /old-project from the FTP server"

Available Tools

Tool Name Description
list-directory List contents of an FTP directory
download-file Download a file from the FTP server
upload-file Upload a file to the FTP server
create-directory Create a new directory on the FTP server
delete-file Delete a file from the FTP server
delete-directory Delete a directory from the FTP server

Security Considerations

  • FTP credentials are stored in the Claude configuration file. Ensure this file has appropriate permissions.
  • Consider using FTPS (secure FTP) by setting FTP_SECURE=true if your server supports it.
  • The server creates temporary files for uploads and downloads in your system's temp directory.

License

MIT

mcp-server-ftp FAQ

How do I install mcp-server-ftp?
You can install mcp-server-ftp automatically via Smithery or manually from its GitHub repository.
Which FTP operations does mcp-server-ftp support?
It supports listing directories, downloading and uploading files, creating directories, and deleting files or directories.
Can mcp-server-ftp be used with multiple LLM providers?
Yes, it is compatible with LLMs like OpenAI, Claude, and Gemini through the MCP protocol.
Is mcp-server-ftp secure for handling FTP credentials?
It follows MCP principles for secure and scoped model interaction, ensuring safe handling of credentials.
Does mcp-server-ftp support both FTP and FTPS?
The server primarily supports FTP; for FTPS support, check the documentation or repository updates.
How does mcp-server-ftp integrate with AI workflows?
It exposes FTP server contents and operations as structured context, enabling LLMs to perform file management tasks programmatically.
Can I use mcp-server-ftp to automate backups via FTP?
Yes, by scripting file uploads and downloads through the MCP interface, you can automate FTP backups.
What platforms can run mcp-server-ftp?
It can run on any platform supporting Node.js or the environment specified in its installation guide.