SSH服务器集成工具

一个兼容MCP协议的SSH服务器,专为与Windsurf IDE无缝集成设计,提供完整的SSH操作支持和多种认证方式。

  • by yoi-hibino
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 yoi-hibino/mcp-ssh-server

使用说明

用于Windsurf的MCP SSH服务器

一个与模型上下文协议(MCP)兼容的SSH服务器,旨在与Windsurf IDE无缝集成。

特性

  • SSH操作完全支持MCP协议
  • 自动连接到预定义的SSH服务器
  • SSH会话的交互式终端接口
  • 支持基于密码和密钥的身份验证
  • 通过MCP集成与Windsurf IDE兼容

常见问题排查

Windsurf设置页面错误

如果您在Windsurf设置页面中遇到错误消息,显示“错误:请求失败。请检查您的配置。”如下图所示,此服务器实现提供了解决此问题所需的MCP协议端点。

当Windsurf由于缺少端点或协议兼容性问题而无法与MCP SSH服务器正确通信时,通常会出现此错误。此存储库中的实现包括与Windsurf正确集成所需的所有必要端点。

设置和安装

需求

python >= 3.7
flask
paramiko

安装

  1. 克隆存储库:
git clone https://github.com/yoi-hibino/mcp-ssh-server.git
cd mcp-ssh-server
  1. 安装依赖项:
pip install -r requirements.txt

配置

在Windsurf MCP配置文件中配置SSH连接设置:

{
  "mcpServers": {
    "ssh": {
      "command": "python3",
      "args": [
        "/path/to/app.py"
      ],
      "cwd": "/path/to/mcp-ssh-server",
      "protocol": "http",
      "host": "localhost",
      "port": 5050,
      "env": {
        "SSH_DEFAULT_HOST": "your_hostname",
        "SSH_DEFAULT_PORT": "22",
        "SSH_DEFAULT_USERNAME": "your_username",
        "SSH_DEFAULT_PASSWORD": "your_password"
      }
    }
  }
}

MCP端点

服务器实现了以下MCP协议端点:

  • /alive -服务器健康检查
  • /list_sessions -列出活动的SSH连接
  • /mcp/status -检查MCP服务器状态
  • /mcp/connect -连接到SSH服务器
  • /mcp/execute -在SSH服务器上执行命令
  • /mcp/disconnect -断开与SSH服务器的连接
  • /ssh/capabilities -列出SSH服务器功能
  • /ssh/sessions -列出活动SSH会话

运行服务器

通过运行以下命令启动服务器:

python app.py

这将启动端口5050上的服务器。您可以访问web界面http://localhost:5050/

与Windsurf集成

通过将适当的配置添加到Windsurf MCP设置文件中,配置Windsurf以使用此MCP服务器。

配置后,如果仍然遇到上面显示的错误,请尝试以下步骤:

  1. 重新启动MCP SSH服务器
  2. 完全重新启动Windsurf应用程序
  3. 验证服务器是否正在运行并且可以在以下位置访问http://localhost:5050/
  4. 检查所有MCP端点是否正确响应