remote-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@remote-mcp列出远程服务器 /home 目录下的文件"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
remote-mcp
remote-mcp 是一组面向 coding agent 的 MCP 服务器,用来在 SSH 主机和 WSL 发行版里运行命令、管理任务,并以更适合模型使用的方式读写远程文件。
它不是远程常驻 agent:MCP 服务器运行在本地,SSH 版本通过本机 ssh 命令连接远程主机,WSL 版本通过本机 WSL 调用发行版。远程侧只需要常见的 shell 工具;文件编辑、patch 解析、编码检测、sha256 校验都在本地完成。
AI 生成声明
这个仓库的代码和文档由 OpenAI Codex 根据用户需求迭代生成和整理。用户提出了设计目标、测试反馈和取舍方向,但没有手写代码。请把它当成一个 AI 生成的实验性工具来审计和使用,不要默认认为它已经经过了传统人工维护项目的安全审查。
兼容性主要围绕 Codex 和 OpenCode 做过专门调整,例如 *_file_edit 的参数别名、Codex-style apply_patch 格式说明、结构化返回信息等。Claude Code 没有专门适配;理论上只要客户端按标准 MCP 调用工具就可以使用,但这里没有做专门验证。
Related MCP server: remote-mcp
为什么做这个
很多 MCP 服务器只解决本地文件系统,很多 SSH MCP 只解决远程命令执行。这个项目夹在中间:它更关心模型如何低成本、少出错地修改远程目录里的文件。
典型场景:
Windows 上让模型操作 WSL 项目。
通过 SSH 修改开发板、服务器、OpenWrt/iStoreOS 等纯 Linux 设备上的配置或代码。
远程机器没有 Node.js、Python 或常驻 agent,但有基础 POSIX shell。
希望模型用
edit做简单替换,用apply_patch做多文件、多 hunk、新增文件。希望读写时自动处理 UTF-8、GBK、GB18030 等常见文本编码。
包结构
@remote-mcp/ssh:SSH 命令、脚本、任务、设备 profile 和 SSH 文件工具。@remote-mcp/wsl:WSL 命令、脚本、任务、会话和 WSL 文件工具。@remote-mcp/shared:共享实现,不作为独立 MCP 加载。
SSH 和 WSL 分开加载。你只需要 SSH 就只启用 SSH MCP,只需要 WSL 就只启用 WSL MCP。
工具列表
WSL:
wsl_sessionwsl_execwsl_scriptwsl_taskwsl_file_readwsl_file_writewsl_file_editwsl_file_apply_patchwsl_file_listwsl_file_statwsl_file_search
SSH:
ssh_profilessh_execssh_scriptssh_taskssh_file_readssh_file_writessh_file_editssh_file_apply_patchssh_file_listssh_file_statssh_file_search
文件编辑模型
简单替换优先用 *_file_edit:
old_string必须精确匹配。默认只允许匹配一次;多匹配会报错。
replace_all=true时替换所有匹配项。兼容 OpenCode 常见参数名:
oldString、newString、replaceAll。可传
expected_sha256做乐观锁;冲突时返回当前文件内容和当前 sha256。
复杂修改用 *_file_apply_patch:
支持
*** Add File和*** Update File。不支持 delete/move,避免模型在大 patch 里顺手删除文件。
hunk 匹配在本地完成,按 context+removed 行作为连续 subsequence 查找。
空行或无 marker 行会被当作 context,但会写入
structuredContent.normalizations。重复匹配会写入
structuredContent.warnings。
返回形状
工具返回 MCP 的 content 和 structuredContent:
content给人或模型快速扫结果。structuredContent放稳定字段,例如 path、sha256、bytes、encoding、warnings。文件读取的全文在
structuredContent.text,content[0].text只放摘要,避免客户端同时展示两份大文本。
构建
npm install
npm run build运行
node packages/ssh/dist/index.js
node packages/wsl/dist/index.jsMCP 配置示例
SSH:
[mcp_servers.ssh]
command = 'node'
args = ['C:\path\to\remote-mcp\packages\ssh\dist\index.js']
startup_timeout_sec = 30
[mcp_servers.ssh.env]
SSH_MCP_DEFAULT_TARGET = "alice@devbox.local"
SSH_MCP_BATCH_MODE = "1"
SSH_MCP_STRICT_HOST_KEY_CHECKING = "accept-new"WSL:
[mcp_servers.wsl]
command = 'node'
args = ['C:\path\to\remote-mcp\packages\wsl\dist\index.js']
startup_timeout_sec = 30
[mcp_servers.wsl.env]
WSL_MCP_DEFAULT_DISTRO = "Ubuntu-24.04"不同客户端的 MCP 配置格式略有差异,请按客户端文档调整字段名和路径。
安全边界
SSH MCP 不保存密码。建议使用 SSH key。
devices.json、.env和node_modules已加入.gitignore。文件工具会修改远程文件,请把它当成真实写操作。
*_file_apply_patch不支持删除文件。WSL 工具默认保护
/mnt下的常见递归删除操作。这个项目由 AI 生成,公开使用前请按自己的威胁模型审计。
开源许可
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/xiaobright/remote-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server