mcp-ftp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FTP_HOST | Yes | The FTP server hostname or IP address. | |
| FTP_PORT | No | The FTP server port (default: 21). | 21 |
| FTP_USER | Yes | The FTP username. | |
| FTP_SECURE | No | Whether to use FTPS (true/false, default: false). | false |
| FTP_PASSWORD | Yes | The FTP password. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ftp_connectA | Connect to an FTP server. If not called, will attempt to use FTP_HOST, FTP_USER, FTP_PASSWORD environment variables. |
| ftp_disconnectA | Disconnect from the FTP server |
| ftp_pwdA | Get current working directory on FTP server |
| ftp_cdB | Change current directory on FTP server |
| ftp_listB | List files and directories in a path on FTP server |
| ftp_downloadC | Download a file from FTP server to local filesystem |
| ftp_uploadB | Upload a file from local filesystem to FTP server |
| ftp_readA | Read the content of a remote file (text files only) |
| ftp_writeC | Write content to a remote file |
| ftp_deleteB | Delete a file on FTP server |
| ftp_mkdirA | Create a directory on FTP server (creates parent directories if needed) |
| ftp_rmdirB | Remove a directory on FTP server |
| ftp_renameA | Rename or move a file/directory on FTP server |
| ftp_sizeB | Get the size of a file on FTP server |
| ftp_statusA | Get current FTP connection status |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Each tool targets a distinct FTP operation, from connection management (connect/disconnect/status) to file operations (download/upload/read/write/delete) and directory operations (cd/list/mkdir/rmdir/rename). There is clear separation between similar actions like read (viewing remote text) and download (saving to local filesystem), and between write (writing content to remote) and upload (transferring a local file). No two tools have overlapping purposes.
All tools follow a uniform 'ftp_' prefix with a lowercase snake_case verb or command (e.g., ftp_connect, ftp_list, ftp_rename). The naming pattern is predictable and consistent, making it easy to infer functionality from the name.
15 tools is well-scoped for an FTP server, covering connection management, navigation, file transfer, text editing, and directory operations. The count is within the ideal range and each tool earns its place, with no unnecessary or redundant additions.
The tool set provides comprehensive lifecycle coverage for FTP operations: connect/disconnect, directory management (pwd, cd, list, mkdir, rmdir), file operations (download, upload, read, write, delete, rename), and meta-operations (size, status). There are no obvious gaps for typical FTP workflows.