Ssh Connect Mcp Server

Ssh Connect Mcp Server

🚀 SSH 连接 MCP 服务器

这是一个用于 SSH 连接和文件操作的 MCP 服务器,项目中的所有代码均由生成式 AI 创建。

✨ 主要特性

该服务器实现了几种与 SSH 相关的工具,具体如下:

  • connect:连接到 SSH 服务器。
    • 可选参数:host、port、username、password、key_path、key_passphrase。
    • 返回连接状态。
  • disconnect:断开与 SSH 服务器的连接。
    • 不需要任何参数。
    • 返回断开状态。
  • execute:在 SSH 服务器上执行命令。
    • 必填参数:command(字符串)。
    • 可选参数:timeout(整数,秒,默认值为 60)。
    • 返回命令输出(stdout 和 stderr)和退出状态。
  • upload:将文件上传到 SSH 服务器。
    • 必填参数:local_path、remote_path。
    • 返回上传状态。
  • download:从 SSH 服务器下载文件。
    • 必填参数:remote_path、local_path。
    • 返回下载状态。
  • list_files:列出 SSH 服务器上的文件。
    • 必填参数:path。
    • 返回文件列表,包括类型和大小信息。

📦 安装指南

自动安装

有两个 Python 脚本可用于自动安装 SSH MCP 服务器:

  1. 对于 Cline:
./install_ssh_mcp.py
  1. 对于 Claude Desktop:
./install_ssh_mcp_claude.py

这些脚本会执行以下操作:

  1. 检测配置文件的位置。
  2. 提示输入 SSH 连接参数。
  3. 更新配置文件中的 SSH MCP 服务器配置。

手动安装

在 Claude Desktop 上

提供了一个示例 Claude Desktop 配置文件 claude-desktop-config-example.json,展示了如何在 Claude Desktop 中配置 SSH MCP 服务器。 要将 SSH MCP 服务器安装到 Claude Desktop,可按以下步骤操作:

  1. 找到您的 Claude Desktop 配置文件:
    • 在 macOS 上:~/Library/Application\ 支持/Claude/claude_desktop_config.json
    • 在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json
  2. 将 SSH MCP 服务器配置添加到 mcpServers 对象中:
{
"mcpServers": {
"ssh-connect": {
"command": "uv",
"args": [
"--directory",
"/path/to/ssh-connect",
"run",
"ssh-connect"
],
"env": {
"SSH_HOST": "example.com",
"SSH_PORT": "22",
"SSH_USERNAME": "username",
"SSH_PASSWORD": "password",
"SSH_KEY_PATH": "/path/to/private_key",
"SSH_KEY_PASSPHRASE": "key_passphrase"
},
"disabled": false,
"autoApprove": []
}
}
}
  1. 重新启动 Claude Desktop 以应用更改。

⚠️ 重要提示

请将占位符值替换为您的实际 SSH 连接信息。

📚 详细文档

开发

构建与发布

要准备分发包,可按以下步骤操作:

  1. 同步依赖项并更新锁定文件:
uv sync
  1. 构建包发行版本:
uv build

这将在 dist/ 目录下创建源代码和轮文件。 3. 发布到 PyPI:

uv publish

⚠️ 重要提示

您需要通过环境变量或命令行标志设置 PyPI 凭据:

  • 令牌:--tokenUV_PUBLISH_TOKEN
  • 或者用户名/密码:--username/UV_PUBLISH_USERNAME--password/UV_PUBLISH_PASSWORD

测试

tests 目录下提供了一个测试脚本来验证 SSH MCP 服务器是否正常工作:

python tests/test_ssh_connect.py

该测试脚本使用 unittest 和 mocking 来测试 SSH MCP 服务器的基本功能,而无需实际连接到 SSH 服务器。

调试

由于 MCP 服务器通过标准输入输出运行,调试可能会比较困难。为了获得最佳的调试体验,我们强烈推荐使用 MCP Inspector。 您可以使用以下命令启动 MCP Inspector:

npx @modelcontextprotocol/inspector uv --directory /path/to/ssh-connect run ssh-connect

启动后,Inspector 会显示一个 URL,您可以在浏览器中访问该 URL 开始调试。

  • 0 关注
  • 0 收藏,29 浏览
  • system 提出于 2025-09-25 07:33

相似服务问题

相关AI产品