FTP MCP服务器
该项目包含两个主要组成部分:
- 具有FTP客户端功能的MCP服务器。
- 独立的FTP服务器。
先决条件
- Python 3.7+
- pip(Python包安装程序)
- Node.js和npm(用于Gemini CLI)
设置
- 克隆存储库(或下载文件):
git clone
cd ftp-mcp-server- 创建并激活虚拟环境:
- 窗户:
python -m venv .venv
.\.venv\Scripts\activate- Linux/macOS:
python3 -m venv .venv
source .venv/bin/activate- 安装所需的依赖项:
pip install -r requirements.txt- 安装Gemini CLI:
npm install -g @google/gemini-cli如何使用
从Gemini CLI连接
- 启动FTP服务器:
python ftp_server.py- 服务器将运行并侦听连接。默认用户凭据为:
- 用户名: user - 密码: 12345
- 用户的主目录是
ftp_home/.
- 配置Gemini CLI以使用本地MCP服务器:
要使Gemini CLI能够发现MCP服务器,您需要在settings.json文件中对其进行配置。此文件告诉Gemini CLI如何查找MCP服务器并与之通信。
- 找到您的Gemini设置文件。通常在 ~/.gemini/settings.json (适用于Linux/macOS)或 C:\Users\\.gemini\settings.json (适用于Windows)。 - 如果文件或 .gemini 目录不存在,请创建它。 - 打开 settings.json 并添加以下配置。这篇文章告诉Gemini如何启动本地服务器。
{
"mcpServers": {
"my-python-ftp-server": {
"command": "
/.venv/Scripts/python.exe",
"args": ["
/server.py"],
"type": "stdio"
}
}
}- 启动Gemini:
- 打开一个新终端并运行 gemini. - 在Gemini CLI中,验证与的连接 /mcp 命令。你应该看看 my-python-ftp-server 在可用服务器列表中。 - 按Control+T查看每个可用工具的详细信息。
- 与您的工具互动:
您可以使用自然语言来调用这些工具。\ 要连接到默认FTP服务器,请用自然语言键入“连接到服务器”。Gemini将在本自述中找到用户名和密码。
工作流程示例:
- 你: Connect to the FTP server.
- Gemini(使用工具): [tool_code: ftp_connect(server="127.0.0.1", port=2121, user="user", password="12345")]
- 你: List the files on the FTP server.
- Gemini(使用工具): [tool_code: ftp_list()]
- 你: Please upload "my_local_file.txt" to the server as "remote_copy.txt".
- Gemini(使用工具): [tool_code: ftp_put(local_path="my_local_file.txt", remote_path="remote_copy.txt")]
连接到外部FTP服务器
MCP服务器不限于本地FTP服务器。通过向提供正确的详细信息,您可以连接到任何FTP服务器 ftp_connect 工具。
- 确保您的FTP服务器正在运行
- 按照上述步骤2和3进行操作
- 使用
ftp_connect该工具包含外部服务器的详细信息。
例子: 如果您的FTP服务器具有以下凭据:
- 主持人: ftp.example.com - 用户名: myuser - 密码: mypassword123
你可以让双子座这样联系:
- 你: Connect to the ftp server at ftp.example.com with username myuser and password mypassword123 - Gemini(使用工具): [tool_code: ftp_connect(host="ftp.example.com", username="myuser", password="mypassword123")]
连接后,您将收到一个会话ID,并可以使用其他FTP工具(ftp_list, ftp_get等等)与远程服务器交互。 免费在线FTP服务器尝试:https://dlptest.com/ftp-test/
