使用说明
ftp mcp
用于FTP/FTPS/SFTP操作的MCP服务器——为AI代理提供完整的FileZilla功能集。
安装
开源代码
添加到您的 opencode.json 配置:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ftp-mcp": {
"type": "local",
"command": ["npx", "-y", "github:kemalabuteliyte/ftp-mcp"],
"enabled": true
}
}
}
克劳德代码/克劳德桌面
添加到MCP配置(~/.claude/settings.json 或Claude桌面配置):
{
"mcpServers": {
"ftp-mcp": {
"command": "npx",
"args": ["-y", "github:kemalabuteliyte/ftp-mcp"]
}
}
}
光标/风帆
添加到MCP设置中:
{
"mcpServers": {
"ftp-mcp": {
"command": "npx",
"args": ["-y", "github:kemalabuteliyte/ftp-mcp"]
}
}
}
手动安装
npm install -g github:kemalabuteliyte/ftp-mcp
然后使用 ftp-mcp 作为任何MCP客户端配置中的命令。
特征
36工具 涵盖所有FileZilla业务:
连接管理
ftp_connect--连接到FTP/FTPS/SFTP服务器ftp_disconnect--关闭连接ftp_list_connections--列出活动连接ftp_connection_info--获取连接详细信息
现场经理
ftp_add_site--保存连接配置文件ftp_remove_site--删除已保存的网站ftp_list_sites--列出已保存的配置文件ftp_edit_site--更新站点配置
导航
ftp_pwd--打印工作目录ftp_cd--更改目录ftp_list--列出目录(权限、大小、日期)ftp_tree--递归树视图
文件操作
ftp_upload--上传文件(二进制/ascii/auto)ftp_download--下载文件ftp_delete--删除文件ftp_rename--重命名文件/目录ftp_move--移动文件ftp_copy--在服务器上复制文件ftp_read--读取远程文件内容ftp_write--将内容写入远程文件ftp_append--附加到远程文件ftp_stat--获取文件信息ftp_exists--检查路径是否存在
目录操作
ftp_mkdir--创建目录(递归选项)ftp_rmdir--删除目录(递归选项)ftp_dir_size--计算目录大小
批量转移
ftp_upload_directory--上传整个目录ftp_download_directory--下载整个目录ftp_sync--同步本地/远程目录ftp_mirror--镜像目录(单向同步删除)
权限
ftp_chmod--更改权限(递归选项)ftp_chown--更改所有权(仅限SFTP)
搜索和比较
ftp_find--按名称模式搜索文件ftp_grep--在服务器上搜索文件内容ftp_compare--比较本地与远程目录ftp_checksum--文件校验和验证
协议
| 协议 | 库 | 默认端口 |
|---|---|---|
| FTP | 基本FTP | 21 |
| FTPS | 基本ftp | 990 |
| SFTP | ssh2 SFTP客户端 | 22 |
多服务器支持
使用命名连接同时连接到多个服务器:
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")
现场经理
将常用连接保存到 ~/.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")
许可证
麻省理工学院
