使用说明

项目简介

Computer Use AI SDK Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,它利用操作系统提供的辅助功能,为AI客户端提供本地计算机的上下文感知和操作能力。通过注册和执行预定义的工具,该服务器允许AI智能体以标准化的方式与用户的桌面环境进行交互,从而实现各种自动化任务和功能扩展。

主要功能点

  • 资源访问 (Resources): 虽然仓库信息侧重于工具,但 MCP 服务器的架构设计使其能够管理和提供对本地计算机资源的访问能力,例如当前运行的应用程序列表、窗口内容等。
  • 工具注册与执行 (Tools): 内置丰富的工具集,包括:
    • 启动应用程序 (Launch apps): 允许 AI 启动 macOS 上的应用程序。
    • 读取内容 (Read content): 使 AI 能够读取屏幕上应用程序的文本内容。
    • 模拟点击 (Click): 允许 AI 模拟鼠标点击用户界面的元素。
    • 文本输入 (Enter text): 支持 AI 在应用程序的文本输入框中输入文本。
    • 按键操作 (Press keys): 允许 AI 模拟键盘按键操作,例如回车、Tab 键等。
  • Prompt 模板 (Prompts): 虽然仓库没有明确的 Prompt 模板定义,但通过结合自然语言指令和可调用的工具,可以灵活地构建各种交互模式,以适应不同的 LLM 应用场景。
  • JSON-RPC 通信: 服务器和客户端之间通过标准的 JSON-RPC 协议进行通信,确保了交互的标准化和易用性。
  • 跨平台基础 (macOS 原生): 服务器核心代码使用 Rust 编写,并在 macOS 上原生运行,利用 macOS 的 Accessibility API 实现高效可靠的 UI 自动化。

安装步骤

  1. 克隆仓库到本地:

    git clone https://github.com/mediar-ai/MCP-server-client-computer-use-ai-sdk.git
    cd MCP-server-client-computer-use-ai-sdk
  2. 安装 Rust 环境: 如果您的系统尚未安装 Rust,请按照 Rust 官网 的指引进行安装。通常可以使用以下命令快速安装:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  3. 安装 Node.js 和 npm: 如果您的系统尚未安装 Node.js 和 npm,请访问 Node.js 官网 下载并安装。

  4. 运行后端服务器: 进入 'mcp-server-os-level' 目录,并使用 'cargo run' 命令启动服务器:

    cd mcp-server-os-level
    cargo run --bin server

    保持该终端窗口运行,服务器将在后台提供服务。

服务器配置

MCP 服务器是为 MCP 客户端设计的后端服务。为了让 MCP 客户端能够连接到此服务器,您需要在客户端配置中指定服务器的启动方式。以下是一个典型的客户端配置示例 (JSON 格式),展示了如何配置 MCP 服务器的启动命令和参数:

{
  "serverName": "ComputerUseAISDKServer",
  "command": "cargo",  // 启动服务器的命令,这里使用 cargo
  "args": ["run", "--bin", "server"] // 传递给 cargo 的参数,指定运行 server 二进制文件
}

注意:

  • 'command' 指定了用于启动服务器的可执行文件,这里是 'cargo',因为服务器是 Rust 项目,通过 cargo 运行。
  • 'args' 是一个字符串数组,包含了传递给 'command' 的命令行参数。'run --bin server' 指示 cargo 运行 'mcp-server-os-level' 项目中的 'server' 二进制文件,即 MCP 服务器程序。

基本使用方法

  1. 启动服务器: 按照 "安装步骤" 中的指示启动 'mcp-server-os-level' 目录下的服务器。
  2. 运行客户端: 根据您的需求选择并运行提供的 MCP 客户端,例如:
    • CLI 客户端: 进入 'mcp-client-cli-interface' 目录,安装依赖 'npm install',设置 Anthropic API 密钥 'export ANTHROPIC_API_KEY=sk-ant-...',然后运行客户端 'npx tsx main.ts'。在 CLI 界面中,您可以输入自然语言指令与服务器进行交互。
    • Web 应用客户端: 进入 'mcp-client-nextjs' 目录,安装依赖 'npm install',配置 Anthropic API 密钥,然后运行 Web 应用 'npm run dev'。访问提供的本地 Web 页面,通过 Web 界面与服务器交互。
  3. 发送指令: 在客户端界面(CLI 或 Web 应用)中,您可以输入类似以下的自然语言指令,通过 MCP 服务器控制您的计算机:
    • 'get text from Whatsapp' - 获取 WhatsApp 应用程序中的文本内容。
    • 'give me interactable elements from messages app and then type hello world and send' - 在 Messages 应用中查找可交互元素,并输入 "hello world" 发送消息。
    • 'open arc browser' - 启动 Arc 浏览器。

进阶使用

  • 链式工具 (Chained Tools): 仓库的 'mcp-server-chained-tools' 目录提供了链式工具的示例,您可以参考 'send-discord-message.ts' 学习如何构建更复杂的工具链,实现更高级的自动化工作流程。
  • MCP Inspector: 使用 '@modelcontextprotocol/inspector' 工具可以方便地测试和调试 MCP 服务器提供的工具。按照 README 中的 "Test tools through the MCP Inspector" 部分进行操作。
  • 自定义工作流: 您可以根据自身需求,结合仓库提供的 SDK 和工具,构建自定义的自动化工作流,例如自动化数据录入、定时任务执行、跨应用数据同步等。

功能扩展

  • 基于此 MCP 服务器,您可以构建各种用户界面,例如自定义桌面助手应用、Web 控制面板等,方便用户自动化日常计算机操作。
  • 结合其他 MCP 服务器,可以实现更强大的跨服务、跨设备的 AI 协作能力。

信息

分类

桌面与硬件