跳到主要内容

MCP

介绍

Agivar 内置了 MCP(Model Context Protocol)服务。支持 MCP 的外部客户端可以把桌面任务交给 Agivar 执行,例如让编码助手验证某个本地网页、操作一个桌面软件、复现一个问题,或检查某个流程是否真的完成。

MCP 任务会在 Agivar 里创建一条对话,你可以在应用内实时看到执行过程。任务完成后,外部客户端可以拿到总结、工具观察记录和带说明的截图,用来判断任务是否成功。

使用 MCP 时建议先打开 Agivar 并登录账号。同一时间只运行一个 GUI 任务;如果当前任务还在执行,先等待它完成,或取消后再开始新任务。

Skill 文件(可选)

如果你的 AI 客户端支持 Skill / 自定义技能,可以下载 Agivar 提供的 SKILL.md 配合内置 MCP 使用。这个文件会告诉客户端如何连接 Agivar MCP、按 get_statusrun_gui_taskget_task_result 的流程轮询结果,以及如何续话、取消任务和读取截图证据。

这个文件不是连接 MCP 的必需项;它的作用是让支持 Skill 的客户端更稳定地使用 Agivar 的桌面任务能力。下载后,请按你所使用客户端的要求放到对应的技能目录中。

下载 Agivar GUI Task SKILL.md

连接方式

Fitten Code

  1. 打开 Fitten 对话页面,点击右上角用户头像,选择 "功能配置 -> MCP" 打开 MCP 页面
  2. 点击 "添加配置" 打开 mcp_settings.json 文件,添加 agivar 相关配置:
{
"mcpServers": {
"agivar": {
"type": "streamableHttp",
"url": "http://127.0.0.1:17342/mcp"
}
}
}
  1. 导入自定义 SKILL:点击对话页面右上角 SKILL 图标,在 SKILL 页面点击右上角导入按钮,选择包含 SKILL.md 的文件夹导入即可。

Claude App

  1. 添加自定义 MCP Server:打开 "Settings -> Developer -> Edit Config",然后打开对应的配置文件,添加配置:
{
"mcpServers": {
"agivar": {
"command": "npx",
"args": [
"mcp-remote",
"http://127.0.0.1:17342/mcp"
]
}
},
...
}
  1. 添加自定义 SKILL:把 SKILL 文件夹放到 $HOME/.claude/skills 下后重启即可。

Codex App

  1. 添加自定义 MCP Server: 打开 "Settings -> MCP servers", 点击 "Add server", "Name" 为 agivar,类型选择 "Streamable HTTP", "URL" 为 http://127.0.0.1:17342/mcp,然后点击 "Save"。
  2. 添加自定义 SKILL: 把 SKILL 文件夹放到 $HOME/.codex/skills 下后重启即可。

可用工具

工具用途
get_status检查 Agivar 是否已登录、当前是否忙碌,以及是否有正在运行的 MCP 任务。
run_gui_task启动一个新的桌面 GUI 任务。需要提供自然语言任务描述,也可以补充背景信息;调用后会立即返回 task_id
get_task_result根据 task_id 查询任务进度或最终结果。任务运行中会返回当前进展;任务结束后会返回总结、观察记录、截图和错误信息。
send_task_message在同一个 MCP 任务对话里继续追问或追加指令,适合任务完成后继续修正、补查或执行下一步。
cancel_task取消正在运行的 GUI 任务。取消后继续查询 get_task_result,直到任务返回最终状态。

使用示例

验证本地页面

你在本地启动了一个前端页面,希望编码助手确认页面是否能打开、按钮是否可点、弹窗是否符合预期。可以让外部 MCP 客户端发起一个任务:

打开 http://localhost:5173,进入设置页,切换语言后确认界面文字是否更新,并用截图说明结果。

Agivar 会在真实桌面上打开页面并操作界面。任务完成后,客户端可以读取总结和截图,再把验证结果反馈给你。

复现一个桌面操作问题

如果某个问题只会在真实桌面操作中出现,可以把复现路径交给 Agivar:

打开 Agivar,进入录屏入口,尝试开始一段录屏;如果系统权限弹窗出现,请记录当前卡在哪一步,并返回截图。

这类任务适合排查"只看代码不容易判断"的问题,例如权限弹窗、系统设置、窗口遮挡、按钮不可点击等。

完成后继续补充要求

第一次任务结束后,如果结果还需要补充,不必重新开一个新任务。可以用同一个 task_id 继续发消息:

刚才已经进入设置页了,请继续检查高级设置里的历史录屏入口是否能打开。

这样 Agivar 会沿用上一轮的对话上下文,继续完成后续检查。

发现任务跑偏时取消

如果外部客户端发现任务打开了错误页面、进入了错误账号,或长时间没有有效进展,可以调用 cancel_task 停止当前任务。停止后再根据最终结果决定是否重新发起更明确的任务。

下一步