ftp-mcp
Enables AI agents to perform FTP/FTPS/SFTP file operations including upload, download, sync, and directory management with multi-server support.
README
ftp-mcp
MCP server for FTP/FTPS/SFTP operations — full FileZilla feature set for AI agents.
Installation
OpenCode
Add to your opencode.json config:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ftp-mcp": {
"type": "local",
"command": ["npx", "-y", "github:kemalabuteliyte/ftp-mcp"],
"enabled": true
}
}
}
Claude Code / Claude Desktop
Add to your MCP config (~/.claude/settings.json or Claude Desktop config):
{
"mcpServers": {
"ftp-mcp": {
"command": "npx",
"args": ["-y", "github:kemalabuteliyte/ftp-mcp"]
}
}
}
Cursor / Windsurf
Add to your MCP settings:
{
"mcpServers": {
"ftp-mcp": {
"command": "npx",
"args": ["-y", "github:kemalabuteliyte/ftp-mcp"]
}
}
}
Manual install
npm install -g github:kemalabuteliyte/ftp-mcp
Then use ftp-mcp as the command in any MCP client config.
Features
36 tools covering all FileZilla operations:
Connection Management
ftp_connect— Connect to FTP/FTPS/SFTP serverftp_disconnect— Close a connectionftp_list_connections— List active connectionsftp_connection_info— Get connection details
Site Manager
ftp_add_site— Save connection profileftp_remove_site— Delete saved siteftp_list_sites— List saved profilesftp_edit_site— Update site config
Navigation
ftp_pwd— Print working directoryftp_cd— Change directoryftp_list— List directory (permissions, size, date)ftp_tree— Recursive tree view
File Operations
ftp_upload— Upload file (binary/ascii/auto)ftp_download— Download fileftp_delete— Delete fileftp_rename— Rename file/directoryftp_move— Move fileftp_copy— Copy file on serverftp_read— Read remote file contentsftp_write— Write content to remote fileftp_append— Append to remote fileftp_stat— Get file infoftp_exists— Check if path exists
Directory Operations
ftp_mkdir— Create directory (recursive option)ftp_rmdir— Remove directory (recursive option)ftp_dir_size— Calculate directory size
Bulk Transfers
ftp_upload_directory— Upload entire directoryftp_download_directory— Download entire directoryftp_sync— Sync local/remote directoriesftp_mirror— Mirror directories (one-way sync with delete)
Permissions
ftp_chmod— Change permissions (recursive option)ftp_chown— Change ownership (SFTP only)
Search & Compare
ftp_find— Search files by name patternftp_grep— Search file contents on serverftp_compare— Compare local vs remote directoriesftp_checksum— File checksum verification
Protocols
| Protocol | Library | Default Port |
|---|---|---|
| FTP | basic-ftp | 21 |
| FTPS | basic-ftp | 990 |
| SFTP | ssh2-sftp-client | 22 |
Multi-Server Support
Connect to multiple servers simultaneously with named connections:
ftp_connect(name: "prod", host: "prod.example.com", protocol: "sftp", ...)
ftp_connect(name: "staging", host: "staging.example.com", protocol: "ftp", ...)
ftp_list(connection: "prod", path: "/var/www")
ftp_sync(connection: "staging", localPath: "./dist", remotePath: "/public_html", direction: "local-to-remote")
Site Manager
Save frequently used connections to ~/.ftp-mcp/sites.json:
ftp_add_site(name: "myserver", host: "example.com", protocol: "sftp", username: "deploy", privateKeyPath: "~/.ssh/id_rsa")
ftp_connect(name: "session1", site: "myserver")
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.