使用说明
FTP MCP服务器
该项目包含两个主要组成部分:
- 具有FTP客户端功能的MCP服务器。
- 独立的FTP服务器。
先决条件
- Python 3.7+
- pip(Python包安装程序)
- Node.js和npm(用于Gemini CLI)
设置
-
克隆存储库(或下载文件):
git clone <repository-url> 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\<YourUsername>\.gemini\settings.json(适用于Windows)。 - 如果文件或
.gemini目录不存在,请创建它。 - 打开
settings.json并添加以下配置。这篇文章告诉Gemini如何启动本地服务器。
{ "mcpServers": { "my-python-ftp-server": { "command": "<path_to_this_project>/.venv/Scripts/python.exe", "args": ["<path_to_this_project>/server.py"], "type": "stdio" } } } - 找到您的Gemini设置文件。通常在
-
启动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/ - 主持人: