使用说明
项目简介
ssh-mcp-server 是一个桥接工具,旨在连接支持 Model Context Protocol (MCP) 的 AI 助手与远程 SSH 服务器。它允许 AI 助手通过标准化的 MCP 接口,安全地执行远程服务器上的 SSH 命令,并获取执行结果。这为 AI 助手提供了远程服务器操作能力,同时避免了直接暴露 SSH 凭据的风险。
主要功能点
- SSH 命令执行桥梁: 将 MCP 协议请求转换为 SSH 命令执行,实现 AI 助手远程操作服务器。
- 安全性: AI 助手无需直接处理 SSH 凭据,凭据由 MCP 服务器管理,提升安全性。
- 标准化接口: 基于 MCP 协议,提供标准的 JSON-RPC 接口,易于集成到支持 MCP 的 AI 应用中。
- 工具注册: 注册 'execute-command' 工具,允许 AI 助手调用执行 SSH 命令。
- Stdio 传输: 使用 Stdio 作为 MCP 服务器的默认传输方式,方便本地部署和测试。
安装步骤
本项目无需安装,可以直接通过 'npx' 命令运行。前提是你的环境中已经安装了 Node.js 和 npm (或 npx)。
服务器配置
为了让 MCP 客户端(如 AI 助手)连接到 ssh-mcp-server,你需要在客户端的 MCP 配置中添加以下服务器配置信息。请注意替换 'args' 中的占位符为你实际的 SSH 服务器信息。
{ "mcpServers": { "ssh-mpc-server": { "command": "npx", "args": [ "-y", "@fangjunjie/ssh-mcp-server", "服务器IP地址", // 请替换为你的 SSH 服务器 IP 地址,例如 "192.168.1.1" 或 "your_server_domain.com" "服务器端口", // 请替换为你的 SSH 服务器端口,默认为 22,例如 "22" 或 "2222" "用户名", // 请替换为你的 SSH 用户名,例如 "root" 或 "your_username" "密码" // 请替换为你的 SSH 密码,例如 "your_password" ] } } }
配置参数说明:
- 'command': 运行 MCP 服务器的命令,这里使用 'npx' 直接运行 'ssh-mcp-server' 包。
- 'args': 传递给 'ssh-mcp-server' 的参数,用于指定 SSH 服务器的连接信息。
- '"服务器IP地址"': 远程 SSH 服务器的 IP 地址或域名。
- '"服务器端口"': 远程 SSH 服务器的端口号,默认为 22。
- '"用户名"': 用于 SSH 登录的用户名。
- '"密码"': 与用户名对应的 SSH 密码。
注意: 生产环境中,建议使用更安全的 SSH 密钥认证方式,并将密码等敏感信息通过环境变量或更安全的方式传递,避免直接硬编码在配置文件中。
基本使用方法
- 配置 MCP 客户端: 将上述服务器配置添加到你的 MCP 客户端应用的配置文件中。确保客户端能够正确读取并使用这些配置。
- 启动 MCP 服务器: 当 MCP 客户端尝试连接 'ssh-mpc-server' 时,客户端会根据配置启动 'ssh-mcp-server' 服务。
- 调用工具: 在 AI 助手中,你可以使用名为 'execute-command' 的工具来执行 SSH 命令。该工具接受一个参数 'cmdString',表示要执行的 SSH 命令字符串。
- 获取结果: 工具执行完成后,AI 助手将收到命令执行的结果,包括标准输出和标准错误。
示例: 如果你的 AI 助手支持自然语言调用工具,你可能可以使用类似以下的指令:
执行命令 'ls -l /home' 在远程服务器上
AI 助手会将指令转换为对 'execute-command' 工具的调用,并将 'ls -l /home' 作为 'cmdString' 参数传递给 ssh-mcp-server 执行。
信息
分类
开发者工具