ftp-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FTPMCP_HOST | No | FTP/SFTP host (required if not using .ftpconfig) | |
| FTPMCP_USER | No | FTP/SFTP username (required if not using .ftpconfig) | |
| FTPMCP_AGENT | No | SSH agent (e.g., pageant) (optional) | |
| FTPMCP_PASSWORD | No | FTP/SFTP password (required if not using .ftpconfig) | |
| FTPMCP_PASSPHRASE | No | Passphrase for private key (optional) | |
| FTPMCP_PRIVATE_KEY | No | Path to private key for SFTP (optional) |
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 | {} |
| logging | {} |
| prompts | {} |
| resources | {
"subscribe": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ftp_connectA | Establish or switch the active connection to a specific remote server profile defined in your .ftpconfig (e.g., 'production', 'staging'). This is the first step before performing any remote operations. |
| ftp_deployA | Execute a pre-defined deployment preset from .ftpconfig. This typically maps a specific local folder to a remote target with pre-configured exclusion rules. |
| ftp_list_deploymentsB | List all available deployment presets from .ftpconfig |
| ftp_listA | List files and directories in a remote path. Use 'limit' and 'offset' for pagination when dealing with directories containing hundreds of files to avoid context overflow. |
| ftp_get_contentsA | Read the source text of a remote file. CRITICAL: For large files, use 'startLine' and 'endLine' to extract specific chunks and prevent hitting the LLM context limit. |
| ftp_patch_fileA | Apply a Unified Diff patch to a remote file. RECOMMENDED: Use this instead of ftp_put_contents for updating existing files to minimize bandwidth and ensure atomic-like updates. For new files, use ftp_put_contents. |
| ftp_analyze_workspaceA | Introspect the remote directory to identify technical environments (e.g., Node.js, PHP, Python) and read dependency manifests. Use this to gain architectural context of a new codebase. |
| ftp_put_contentsA | Write raw text directly to a remote destination. Best for creating NEW files. For modifying existing files, prefer ftp_patch_file. |
| ftp_statA | Retrieve comprehensive metadata for a remote property, including size, modification timestamps, and UNIX permissions. |
| ftp_existsA | Check for the existence of a file or folder without performing heavy file operations. Use this for conditional logic workflows. |
| ftp_treeA | Generate a complete recursive directory map. Use this to visualize project structure, but be cautious with 'maxDepth' in very large remote repositories to avoid excessive network payload. |
| ftp_searchB | Advanced remote file search. Supports finding files by name (wildcards), extension, or content regex (grep-like). Use this to find specific code patterns across the remote workspace. |
| ftp_copyA | Directly duplicate a file on the remote server without downloading and re-uploading. CRITICAL: Only supported on SFTP connections. |
| ftp_batch_uploadA | Upload a collection of local files to remote destinations in a single operation. HIGHLY RECOMMENDED for multiple files to minimize connection handshaking overhead and drastically improve performance. |
| ftp_batch_downloadA | Download a selection of remote files to local destinations. HIGHLY RECOMMENDED for bulk downloads to leverage stable socket persistence. |
| ftp_syncA | Deploy entire project folders using smart synchronization. Analyzes local and remote directory trees and only transfers files that have changed in size or modification date. Automatically respects .gitignore and .ftpignore. |
| ftp_disk_spaceA | Query the remote server for available disk space. CRITICAL: Only available on SFTP connections. |
| ftp_uploadA | Standard single-file transport to the remote server. For bulk transfers, favor ftp_batch_upload. |
| ftp_downloadA | Standard single-file transport from the remote server. For bulk downloads, favor ftp_batch_download. |
| ftp_deleteB | Permanently remove a file from the remote server. Use with caution. |
| ftp_mkdirA | Create a new directory structure on the remote server. Supports nested creation (mkdir -p). |
| ftp_rmdirC | Delete a directory from the remote server. |
| ftp_chmodB | Change remote file permissions. CRITICAL: Only supported on SFTP connections. |
| ftp_renameB | Move or rename files and directories on the remote server. |
| ftp_rollbackA | Undo a previous file mutation by restoring it from a system-generated snapshot. This provides safety during complex refactoring tasks. |
| ftp_list_transactionsA | Expose all recent mutations currently stored in the system's SnapshotManager. Essential for planning rollbacks. |
| ftp_probe_capabilitiesB | Scan the remote server to determine supported filesystem features (e.g., chmod availability, symlink support, disk space querying). Helpful for troubleshooting capabilities. |
| ftp_telemetryA | Retrieve internal performance metrics, including average latency, connection pool health, and total processed bytes. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| audit-project | Perform a security and architectural review of the remote workspace. |
| deploy-checklist | Guide the agent through a pre-deployment safety check. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| Active Server Instruction & Context | Provides a real-time summary of the active connection profile, security constraints, and operational hints to optimize agent behavior. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kynlos/ftp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server