还在为服务器上的问题烦恼?有了智能终端,我再也不怕了!
你只需描述问题,AI 即可接管终端——自动排查环境、钻进容器、诊断数据库、修复代码,全程无需你动一行命令。 以前看到 k8s 报错头就大,现在?直接扔给 AI,去泡杯茶等结果就好。 本文以一次真实的「SQL Server 数据库批量 SQL 修复」为例,带你见识 MCP 智能终端的完整魔法。
一、它到底能做什么?先看一个真实场景
想象这样一个深夜场景:
系统统计看板突然全部报错,数据库里存了 16 条 SQL 模板,但没有人知道哪些有问题、错在哪里、该怎么改。 换作以前,你需要逐条打开、手动执行、对照文档、反复修改……可能要折腾好几个小时。

而现在,你只需要说一句话:
「帮我检查 system_statics 表里的 SQL,有问题的修复掉。」
AI 助手接管终端,自动完成了以下全部操作:
- 列出所有可用终端,找到分享终端
- 从环境变量中提取数据库密码(明文密码?AI 自动打码,不外传)
- 定位 SQL Server 容器并进入
- 逐条读取、执行、诊断 16 条 SQL
- 将 Oracle 语法全部转换为 T-SQL
- 验证通过后批量写回数据库
整个过程:零手工命令,全程自动完成。
从此,你只需要盯着屏幕,看 AI 作为一个「数字员工」在终端里替你埋头打工。它不会喊累,不会犯困,凌晨三点和下午三点的工作质量一模一样。
二、背后的魔法:MCP 终端工具集
MCP(Model Context Protocol)是一套让 AI 助手能够直接调用外部工具的协议。skillup-terminal 是其中的终端管理模块,赋予 AI 真正「动手」的能力:
| 工具名 | 能力 |
|---|---|
list_terminals |
扫描所有终端,包括他人分享给你的远程终端 |
execute_command |
在指定终端执行任意命令,自动等待输出 |
get_terminal_output |
轮询获取命令执行结果,处理长耗时任务 |
interrupt_command |
发送 Ctrl+C,随时中断失控的命令 |
create_terminal_connection |
建立终端连接(支持 SSH / 本地 / 分享终端) |
close_terminal |
任务完成后优雅关闭连接 |
这套工具让 AI 形成了完整的「感知 → 决策 → 执行 → 验证」闭环,而不是停留在「出建议」的层面。
三、有了它,我再也不怕这些「噩梦」了
曾经让运维工程师和开发者闻风丧胆的场景,现在统统可以甩给 AI:
k8s 故障排查
> 以前:Pod 一直 CrashLoopBackOff,你要 kubectl describe、kubectl logs、查 events、翻配置……光理清思路就要半小时。
> 现在:「帮我看看这个 Pod 为什么起不来」,AI 自动跑完所有诊断命令,直接告诉你根因在哪、怎么改。
深夜数据库告警 > 以前:凌晨三点手机响,SSH 进服务器,找容器、连数据库、查慢 SQL……眼皮打架还得保持清醒。 > 现在:把告警截图发给 AI,它接管终端,你继续睡。
多环境配置混乱 > 以前:dev / staging / prod 三套环境,配置文件散落各处,改一处漏一处,上线必出事。 > 现在:「帮我检查三个环境的配置差异」,AI 逐一进入对比,差异清单一目了然。
Docker 镜像/网络问题
> 以前:容器起不来、端口不通、网络不通,docker inspect 输出一大堆 JSON 不知从哪看起。
> 现在:AI 自动解析 inspect 输出,精准定位问题字段,给出修复命令。
四、想马上体验?三步完成接入
升级为 VIP 会员,立即解锁智能终端全部能力。
第一步:把你的服务器添加到终端列表

登录平台后,在「终端管理」页面添加你的服务器,支持: - SSH 远程服务器(填写 IP、端口、账号) - 本地终端(cmd / bash / PowerShell) - 已有 SSH 配置一键导入
添加完成后,你的服务器就正式纳入 AI 的「势力范围」了。
第二步:复制 MCP 地址,接入任意 AI 客户端

前往个人中心 → MCP 配置,复制你专属的 MCP 服务地址。
然后粘贴到任意支持 MCP 协议的 AI 客户端配置中,例如:
# 以 Cursor 为例,在 MCP 设置中填入:
{
"mcpServers": {
"skillup-terminal": {
"url": "https://term.skillup.host/ttyapi/mcp/terminal",
"headers": {
"Authorization": "Bearer mcp_***"
}
}
}
}
保存后,AI 客户端即可感知你的所有终端,随时调用。
第三步:开口说话,AI 开始干活
配置完成后,直接在 AI 对话框里描述你的需求:

列举我的终端
进入「生产服务器」终端,查看 Nginx 的错误日志,
找出最近 1 小时内出现最多的报错类型
进入「数据库服务器」,连接 MySQL,
帮我找出执行时间超过 3 秒的慢查询
AI 会自动找到对应终端、建立连接、执行命令、分析结果,最后用人话告诉你发生了什么、怎么处理。
五、隐藏玩法:分享终端,和 AI 同屏协作
这是很多人没发现的功能,但一旦用上就离不开了。
普通模式:AI 在后台默默执行,你只看结果。
分享终端模式:你把终端分享给 AI,双方「共享同一块屏幕」—— - AI 在终端里执行的每一条命令,你实时可见 - 你可以随时叫停、追问、修正方向 - 就像坐在 AI 旁边,看着它帮你操作服务器
开启方式:在终端详情页点击「分享」,复制 share_id,告诉 AI:
请使用分享终端,share_id 是 ymym2h9c,
帮我检查一下当前服务器的内存使用情况
AI 接入后,你盯着屏幕,它开始打工,全程透明、全程可控。
安全说明: share_id 是一次性会话令牌,不暴露服务器真实凭据,随时可以撤销。
六、没有可练习的终端怎么办?连接 CNB 免费环境
很多人跃跃欲试,却卡在第一步:「我没有自己的服务器,拿什么练?」
答案是:CNB 免费云环境,开箱即用,零成本上手。
CNB(cnb.space) 是一个免费的云开发平台,每个账号都可以获得免费的 Linux 运行环境。你可以把它当成一台随时在线的练习服务器:
接入步骤:
- 注册 cnb.space 账号,创建一个项目
- 在平台内启动终端环境(内置 Linux + Docker)
- 回到智能终端平台,添加 CNB 终端连接
- 告诉 AI:「帮我进入 CNB 终端,看看当前环境」
环境启动后,你就有了一台真实的 Linux 服务器可以折腾,练习本文的所有操作,完全免费,随用随开,用完即止。
练习完毕,把玩坏了也不心疼——重新创建一个环境,干干净净重来。
七、没有 AI 客户端怎么办?这三种方式任选其一
「MCP 听起来很好,但我没有支持 MCP 的 AI 客户端……」
别担心,下面三种方式都能让你立刻用上智能终端,而且其中有完全免费的选项。
方式一:Cursor —— 开发者首选
Cursor 是目前对 MCP 支持最完善的 AI 代码编辑器。下载安装后,在设置中填入你的 MCP 服务地址,即可直接在对话框里操控服务器终端。
它内置了 Claude、GPT-4o 等顶级模型,既能帮你写代码,又能帮你运维服务器,一举两得。
方式二:Cursor 文档提问工具 + 浏览器插件 —— 免费白嫖 Claude
没有 Cursor 订阅?没关系,还有更省钱的玩法:
组合方案:Cursor 文档提问工具 × 浏览器插件

- Cursor 自带文档智能问答入口,可以免费调用 Claude 模型进行对话
- 配合对应的浏览器插件,将 MCP 工具能力注入到网页端对话中
- 无需付费订阅,即可体验 Claude 驱动的智能终端操作
具体步骤:
- 安装 Cursor(免费版即可)
- 安装对应浏览器插件,插件会自动桥接 MCP 工具
- 在 Cursor 的对话框或文档提问入口输入你的需求
- Claude 模型接管,智能终端随时待命
这是目前零成本体验 MCP 智能终端的最佳路径,强烈推荐新手从这里开始。
方式二补充:浏览器扩展(AI 助手工具)离线安装方法
如果你所在的网络环境无法访问 Chrome 应用商店,可以直接下载扩展包进行离线安装:
下载地址:
https://term.ssh.skillup.host:8868/cursor-toolbox-v0.0.7.zip
离线安装步骤(以 Chrome / Edge 为例):
- 下载上方
.zip文件,解压到本地任意目录(如D:/cursor-toolbox) - 打开浏览器,地址栏输入:
text chrome://extensions(Edge 用户输入edge://extensions) 3. 打开右上角「开发者模式」开关 4. 点击「加载已解压的扩展程序」,选择刚才解压的文件夹 5. 扩展安装成功后,浏览器右上角会出现插件图标 6. 点击图标,填入你的 MCP 服务地址,保存后即可在网页端 AI 对话中使用智能终端能力 > 注意: 离线安装的扩展在浏览器重启后默认保持启用状态,无需重复安装。若提示「扩展已被禁用」,重新在扩展页面开启即可。 — ### 方式三:其他支持 MCP 的客户端 除 Cursor 外,以下客户端同样支持 MCP 协议,可按需选择: | 客户端 | 特点 | |——–|——| | Claude Desktop | Anthropic 官方出品,原生支持 MCP | | Cherry Studio | 国内可访问,界面友好 | | Cline(VSCode 插件)| 开发者向,支持 Agent 模式 | | Continue | 轻量开源,嵌入 IDE | — ## 八、完整作战地图:AI 是怎么一步步搞定的?text ① 列出所有终端,找到分享终端(share_id) │ ▼ ② 执行 env | grep RANDKEY,从环境变量获取数据库密码 │ ▼ ③ docker ps | grep sql,确认容器名称 │ ▼ ④ docker exec 进入容器,查看 system_statics 表结构 │ ▼ ⑤ 逐条读取 sql 列内容(每次单条,防止截断) │ ▼ ⑥ 替换占位符为测试值,执行 SQL,观察报错 │ ▼ ⑦ 定位错误类型(Oracle → T-SQL 差异),生成修复方案 │ ▼ ⑧ 通过 heredoc 方式将修复后的 SQL UPDATE 回数据库 │ ▼ ⑨ 重新执行验证,确认无误 ✓
九、第一步:找到你的终端
调用 list_terminals,AI 会看到所有可用终端,包括别人分享给你的远程服务器:
我的终端(11个):
ID: 71 | 名称: CentOs | 类型: SSH | 详情: 10.4.149.22:22 | 状态: 未连接
分享来的终端(1个):
ID: 71 | share_id: ymym2h9c | 来自用户: 1 | 名称: CentOs | 状态: 已连接
关键字段:
- terminal_id:所有后续操作的通行证
- share_id:访问他人分享终端的权限令牌,缺少它将无法操作
- 状态:未连接时执行命令会自动触发连接,无需手动建立
十、第二步:像侦探一样获取密码
数据库密码不应写死在脚本里。AI 会从环境变量中「侦探式」地提取,并在展示时自动脱敏:
# 执行
env | grep RANDKEY
# 输出(密码已脱敏)
RANDKEY=**********
十一、第三步:钻进 Docker 容器
docker exec -it sqlserver /opt/mssql-tools/bin/sqlcmd \
-S localhost -U SA -P '**********' \
-d zpcx \
-Q "SELECT id, name FROM system_statics ORDER BY id"
| 参数 | 作用 |
|---|---|
-S localhost |
连接本机实例 |
-U SA |
登录账号 |
-P |
密码(来自环境变量,不硬编码) |
-d zpcx |
指定目标数据库 |
-Q |
执行后立即退出(非交互) |
-y 0 |
取消列宽限制,读长文本字段必备 |
-i(非 -it) |
heredoc 写入时使用,避免 TTY 冲突 |
十二、第四步:读取 SQL 内容——有个坑要注意
技巧一:用 CAST 防截断
SELECT id, CAST(sql AS VARCHAR(MAX)) as sql
FROM system_statics
WHERE id = 1006
技巧二:每次只查一条
多条记录一起输出时,终端缓冲区容易溢出,导致内容混叠甚至丢失。AI 会一条一条地取,确保每条 SQL 都完整。
十三、第五步:AI 当场诊断 SQL 的「方言病」
表里的 SQL 原本是 Oracle PL/SQL 方言,搬到 SQL Server 里就「水土不服」了。AI 逐一识别并修复了 5 类问题:
病症一:变量声明方式不同
# Oracle 患者
declare tid INTEGER;
SELECT cast(...) into tid;
# T-SQL 治愈版
DECLARE @tid INT;
SET @tid = CAST(...);
病症二:日期格式化函数不兼容
# Oracle 患者
TO_CHAR(entrust_time, 'yyyyMM')
# T-SQL 治愈版
FORMAT(entrust_time, 'yyyyMM')
病症三:系统时间函数叫法不同
# Oracle 患者
ADD_MONTHS(SYSDATE, -12)
# T-SQL 治愈版
DATEADD(month, -12, GETDATE())
病症四:字符串拆分的「独门秘籍」没了
# Oracle 患者(复杂层次查询)
REGEXP_SUBSTR(wbs_ids, '[^,]+', 1, LEVEL)
FROM dual
CONNECT BY ... IS NOT NULL
AND PRIOR rowid = rowid
# T-SQL 治愈版(简洁优雅)
CROSS APPLY STRING_SPLIT(wbs_ids, ',')
病症五:条件分支语法格格不入
# Oracle 患者
IF LEFT('#{ids}', 1) = '#' THEN
...
END IF;
# T-SQL 治愈版
IF LEFT('#{ids}', 1) = '#'
BEGIN ... END
ELSE
BEGIN ... END;
十四、第六步:先测试,再写库——安全第一
docker exec -it sqlserver /opt/mssql-tools/bin/sqlcmd \
-S localhost -U SA -P '**********' -d zpcx -Q "
DECLARE @tid INT;
SET @tid = 0;
SELECT count(*) FROM lims_report WHERE ...
"
返回正常结果、无报错,才进入下一步写回操作。
十五、第七步:用 heredoc 优雅地写回数据库
docker exec -i sqlserver /opt/mssql-tools/bin/sqlcmd \
-S localhost -U SA -P '**********' -d zpcx << 'ENDSQL'
UPDATE system_statics SET sql = 'DECLARE @tid INT;
SET @tid = CAST(CASE WHEN ISNUMERIC(''#{id}'') = 1 THEN ''#{id}'' ELSE 0 END AS INT);
...
'
WHERE id = 1002;
GO
ENDSQL
| 细节 | 说明 |
|---|---|
<< 'ENDSQL'(单引号包裹) |
shell 不会对 heredoc 内容做变量展开 |
SQL 字符串内 ' → '' |
T-SQL 规范:单引号需双写转义 |
-i 而非 -it |
heredoc 通过 stdin 传入,加 -t 会冲突报错 |
| 占位符原样保留 | #{id}、#{id0}、#{id1} 由应用层运行时替换,AI 不能动 |
十六、处理「命令还在跑」的等待艺术
# 轮询示例(繁忙状态)
状态: 命令执行中(繁忙)
连接时长: 14m32s
屏幕内容: 0 字符
# 完成状态
状态: 在线
屏幕内容: 0 字符 ← 输出已被读走,命令执行完毕
推荐的轮询节奏:
1. 执行命令后立即调用一次 get_terminal_output
2. 若繁忙,间隔数秒后继续轮询
3. 状态变为「在线」且屏幕内容为 0 字符,即可继续下一步
4. 等待超过预期时间,果断调用 interrupt_command 发送 Ctrl+C 中断
十七、本次战果:16 条 SQL 全部修复完毕
| ID | 名称 | 修复内容 |
|---|---|---|
| 1002 | 监测监管 | 变量声明 + 赋值语法修复 |
| 1003 | 机构监管 | 无误,不修改 |
| 1004 | 检测工作量分布 | 变量语法修复 |
| 1005 | 检测频率 | 变量语法修复 |
| 1006 | 合格率监测–检测频次 | TO_CHAR → FORMAT |
| 1007 | 合格率监测–合格率 | TO_CHAR → FORMAT,整除改浮点 |
| 1008 | 不合格-待处理 | 变量语法修复 |
| 1009 | 异常部位数量 | 变量语法修复 |
| 1010 | 样品类别统计 | 变量语法修复 |
| 1011 | 工程划分看板-委托报告统计 | REGEXP_SUBSTR+CONNECT BY → STRING_SPLIT |
| 1012 | 工程划分看板-第一行 | Oracle 层次查询 → T-SQL STRING_SPLIT |
| 1013 | 工程划分看板-最后一行列表 | Oracle 层次查询 → T-SQL STRING_SPLIT |
| 1014 | 委托对应的工程部位 | CONNECT BY+dual+dbms_random → CROSS APPLY STRING_SPLIT,IF...THEN → T-SQL IF...BEGIN...END |
| 1016 | 统计看板右下角 | to_char → FORMAT,SYSDATE → GETDATE(),ADD_MONTHS → DATEADD |
| 1017 | 检测主体查询 | 变量语法修复 |
| 1018 | 委托单位报告数量统计 | 变量语法修复 |
十八、终端客户端安装:让你的服务器被 AI 接管只需五步
智能终端平台地址:https://skillup.host
整个接入过程无需任何复杂配置,跟着下面五步走,5 分钟内完成。
第一步:下载并安装客户端
打开 skillup.host,点击右上角的「下载」按钮,页面会给出对应系统的安装命令。
复制 Linux 命令行安装命令,粘贴到你的服务器终端(比如 CNB 免费环境)里直接运行:
# 示例(以页面实际提供的命令为准)
curl -fsSL https://skillup.host/install.sh | bash
命令执行完毕,客户端即安装成功。
第二步:点击右上角「问号」进入引导
安装完成后,回到 skillup.host 页面,点击右上角的「?」图标,进入连接引导流程。
第三步:依次完成四个检查步骤
引导页面会按顺序提示你点击以下按钮,逐步完成环境检查与终端创建:
| 步骤 | 按钮 | 说明 |
|---|---|---|
| 1 | 确认运行 | 确认客户端已在服务器上运行 |
| 2 | 检查代理 | 验证网络连接是否正常 |
| 3 | 创建终端 | 将当前服务器注册为一个可管理的终端 |
| 4 | 打开终端 | 在平台内打开终端,确认连接成功 |
四步全部点完,你的服务器就正式出现在终端列表里了。
第四步:被 MCP 接管,AI 开始打工
一旦终端成功连接,平台的 MCP 服务就能感知到它的存在。
此时你只需在任意支持 MCP 的 AI 客户端(如 Cursor)里对话:
列举我的终端
AI 会立刻看到刚刚注册的服务器,并可以直接进入执行任意命令——你的服务器,从这一刻起正式被 AI 接管。
整个流程小结: 打开网站 → 下载安装 → 点问号 → 四步引导 → AI 接管,全程无需手动配置 SSH 密钥或复杂网络设置。
十九、总结:从「出主意」到「动手干」
| 传统 AI 助手 | MCP 智能终端 |
|---|---|
| 给你一段命令,你自己执行 | 直接在终端里执行,你只需确认 |
| 看不到实际输出,靠猜测建议 | 实时读取输出,根据结果动态调整 |
| 遇到错误,你来排查 | 遇到错误,自动分析并修复后重试 |
| 每次都要你描述上下文 | 自己探索环境,主动收集上下文 |
| k8s / Docker 报错,先去搜文档 | 直接进终端,边查边修,全程自动 |
以前看到 CrashLoopBackOff、OOMKilled、connection refused 这些词,心里发毛是正常的。
现在,把它们扔给 AI,你去喝杯茶,等你回来,问题可能已经解决了。
从此,你只需要盯着屏幕,看 AI 作为你最忠实的「数字员工」在终端里替你打工。 服务器上的问题,再也不用一个人扛了。
想立刻体验? 前往 skillup.host 升级 VIP 会员,按照右上角「?」引导完成终端接入,复制 MCP 地址填入 Cursor 或其他 AI 客户端,然后对 AI 说「列举我的终端」——你的专属智能运维助手,从这一刻起正式上岗。
文章来源:https://www.skillup.host/1/ai/ai-term.md 本文基于真实操作记录整理,所有命令均在 CentOS + Docker + SQL Server 2017 + k8s 环境下验证通过。文中所有密码均已脱敏处理。