Apidog

オールインワン協働API開発プラットフォーム

API設計

APIドキュメント

APIデバッグ

APIモック

API自動テスト

CUAテスト: コンピュータ利用エージェントのためのMCPサーバー、私の見解を紹介します

中村 拓也

中村 拓也

Updated on 4月 23, 2025

CUA、コンピュータ利用エージェントフレームワーク、そしてその洗練されたMCPサーバーであるCuaは、AIエージェントが自然言語でmacOSまたはLinuxシステムを制御できるようにします。私のApple Silicon MacでCUAのMCPサーバーのセットアップに diveし、これはローカルでのタスク自動化のゲームチェンジャーであるとお伝えしたいと思います。この初心者向けガイドでは、CUAのMCPサーバーのインストールとテストについて私の考えを共有します。楽しい例として、ターミナルを開いてディレクトリの内容をリストする方法を紹介します。技術スキルは不要—ちょっとした好奇心があれば大丈夫!AIをコンピュータのささやき手に変える準備はできましたか?さあ、始めましょう!

💡
美しいAPIドキュメンテーションを生成する優れたAPIテストツールが欲しいですか?

開発チームが最大の生産性で一緒に作業できる統合されたオールインワンプラットフォームが欲しいですか?

Apidogはあなたの要求に応え、より手頃な価格でPostmanを置き換えます
button

CuaとCUA MCPサーバーとは何ですか?

CUA(コンピュータ利用エージェント)は、AIエージェントがあなたのコンピュータと対話できるオープンソースフレームワークです。スクリーンコントロール、キーボード/マウスの自動化、macOSおよびLinux、特にApple Silicon上でのサンドボックス化された仮想マシン(VM)を考えてみてください。Cua MCPサーバーはそのモデルコンテキストプロトコル(MCP)コンポーネントであり、Claude DesktopやCursorなどのAIクライアントが自然言語を介してCUAのタスクを実行できるようにする橋渡しの役割を果たします。これは、AIにシステムのリモコンを与え、クラウドの依存性なしに安全にコマンドを実行させるようなものです。私たちはこれをセットアップして、楽しくプライベートに簡単なタスクでテストします。さあ、始めましょう。

cua image

環境のセットアップ:CUAの準備をする

CUAのMCPサーバーを立ち上げる前に、あなたのシステムを準備しましょう。これは初心者に優しく、各ステップが説明されているので、あなたがついていけるようになっています。

1. 前提条件を確認する:これらのツールが準備されていることを確認してください。

  • Python:バージョン3.10以上。ターミナルでpython --versionを実行します。欠落しているか古くなっている場合は、python.orgからダウンロードしてください。PythonはCUAのスクリプトとサーバーの動力源です。
  • Git:Cuaリポジトリをクローンするために必要です。git --versionで確認します。必要に応じてgit-scm.comからインストールしてください。
  • Docker:MCPサーバーのコンテナ化されたセットアップに必要です。docker.comからダウンロードし、docker --versionで確認します。
  • ハードウェア:Apple Silicon(M1/M2/M3)またはLinuxシステムを搭載したMac、4コア以上のCPU、16GB以上のRAM、および依存関係用の10GB以上の空きストレージ。何か不足していますか?問題を回避するために今すぐインストールしてください。

2. プロジェクトフォルダーを作成する:特定のフォルダーを作成して、整理された状態を保ちましょう。

mkdir cua-mcp-test
cd cua-mcp-test

このフォルダーにはCUAプロジェクトが格納され、cdが次のステップの準備をします。

3. Cuaリポジトリをクローンする:GitHubからCUAのソースコードを取得します:

git clone https://github.com/trycua/cua.git
cd cua

git cloneは、libs/mcp-serverにあるMCPサーバーコードを含むCuaリポジトリを取得します。cd cuaは、プロジェクトディレクトリに移動します。

4. 仮想環境をセットアップする:パッケージの競合を防ぐために、Pythonの仮想環境を作成します:

python -m venv venv

それをアクティブにします:

  • Mac/Linux:source venv/bin/activate
  • Windows:venv\Scripts\activateターミナルに(venv)と表示されれば、クリーンなPython環境にいることになります。これによりCUAの依存関係が分離されます。

5. VS Codeで開く:簡単にコーディングできるように、Visual Studio Codeでプロジェクトを開始します:

code .

VS Codeがcuaフォルダーを開き、スクリプト作成の準備が整いました。VS Codeを持っていない場合は、code.visualstudio.comからダウンロードするか、別のエディターを使用してください。ただし、VS CodeのPython統合は非常に優れています。

CUA MCPサーバーのインストール

CUA MCPサーバーをClaude 3.7と一緒に動作させるためにインストールしましょう。面倒のないセットアップのためにシンプルなスクリプトを使用し、すべての依存関係が揃っていることを確認します。

1. 簡単セットアップスクリプトを実行するCUAリポジトリは、インストールをスムーズにするためのワンライナーを提供しています:

curl -fsSL https://raw.githubusercontent.com/trycua/cua/main/libs/mcp-server/scripts/install_mcp_server.sh | bash

このスクリプトは多くの重労働を行います:

  • ~/.cuaディレクトリを作成(存在しない場合)。
  • ~/.cua/start_mcp_server.shにスタートアップスクリプトを生成します。
  • スクリプトを実行可能にします。
  • Python仮想環境を管理し、cua-mcp-serverパッケージをインストール/更新します。これはmacOSおよびLinux向けに特化され、Dockerを使用してコンテナ化されたサーバーを構築します。依存関係を取り込むのに1分ほどかかることが予想されます。

2. Python依存関係をインストールする:手動インストールを好む場合や問題が発生した場合は、直接CUA MCPサーバーをインストールします:

pip install cua-mcp-server

これによりインストールされるもの:

  • MCPサーバー自体。
  • CUAエージェントとコンピュータの依存関係(例:スクリーンコントロール、キーボード/マウスの自動化用)。
  • PATHにある実行可能なcua-mcp-serverスクリプト。

3. Dockerを確認する:MCPサーバーはDockerコンテナ内で実行されるため、Dockerがアクティブであることを確認します:

docker ps

Dockerが実行されていない場合は、Docker Desktop(Mac)またはsudo systemctl start docker(Linux)で開始します。これはサーバーのサンドボックス環境にとって重要です。

Claude Desktop向けCUA MCPサーバーの設定

次に、Claude 3.7と連携するためにCUA MCPサーバーを設定し、必要なAPIキーと環境変数を設定します。

claude desktop

1. Anthropic APIキーを取得する:anthropic.comにサインアップし、APIセクションに移動してAPIキーを生成します。安全に保存してください(共有しないでください!)。このキーによりClaude 3.7はCUA MCPサーバーと通信できます。

2. Claude Desktopの設定を更新する:Claude Desktopの設定ファイル(通常は~/.config/claude-desktop/claude_desktop_config.json)にCUA MCPサーバーを追加します。存在しない場合は作成します:

{
  "mcpServers": {
    "cua-agent": {
      "command": "/bin/bash",
      "args": ["~/.cua/start_mcp_server.sh"],
      "env": {
        "CUA_AGENT_LOOP": "OMNI",
        "CUA_MODEL_PROVIDER": "ANTHROPIC",
        "CUA_MODEL_NAME": "claude-3-7-sonnet-20250219",
        "ANTHROPIC_API_KEY": "your-api-key"
      }
    }
  }
}

your-api-keyをあなたのAnthropic APIキーに置き換えます。この設定:

  • インストールステップからのスタートアップスクリプトを使用します。
  • エージェントループをOMNIに設定し、柔軟なタスク処理を可能にします。
  • モデルとしてClaude 3.7(claude-3-7-sonnet-20250219)を指定します。
  • APIキーを安全に渡します。ファイルを正しい場所に保存してください。詳細については、AnthropicのMCPユーザーガイドを確認してください。

3. オプション:Cursor統合:Cursorと共にCUAを使用したいですか?MCP設定ファイルを作成します:

  • プロジェクト固有:プロジェクトディレクトリ内に.cursor/mcp.jsonを追加します。
  • グローバル:ホームディレクトリに~/.cursor/mcp.jsonを追加します。同じmcpServers設定を上記のように使用します。その後、Cursorのエージェントチャットで「コンピュータ制御ツールを使ってSafariを開いて」と言ってください。CUAが制御します。詳細については、CursorのMCPドキュメントを参照してください。

Claude 3.7でのCUA MCPサーバーのテスト

CUA MCPサーバーをテストして、Claude 3.7にターミナルを開かせてディレクトリの内容をリストさせましょう!タスクをシミュレートするスクリプトを作成し、VS Codeで実行します。

1. テストスクリプトを作成する:VS CodeでCUAプロジェクトを開いたまま、cuaフォルダーにtest.pyという名前のファイルを作成します。次のコードを貼り付けます:

import os
import asyncio
from computer import Computer
from agent import ComputerAgent, LLM, AgentLoop, LLMProvider

async def run_task() -> str:
    async with Computer(verbosity='DEBUG') as computer:
        agent = ComputerAgent(
            computer=computer,
            loop=AgentLoop.OMNI,
            model=LLM(
                provider=LLMProvider.ANTHROPIC,
                model_name="claude-3-7-sonnet-20250219",
                api_key="your-api-key"
            )
        )
        task = "Open a terminal and list the contents of the current directory"
        async for result in agent.run(task):
            return result

async def main():
    result = await run_task()
    print("\n\nResult:", result)

if __name__ == "__main__":
    asyncio.run(main())

your-api-keyをあなたのAnthropic APIキーに置き換えます(あるいは、シェルプロファイル内でANTHROPIC_API_KEYを環境変数として設定します)。このスクリプト:

  • システムとの対話のためにCUAコンピュータを初期化します。
  • Claude 3.7をAnthropicのAPI経由で使用するComputerAgentを設定します。
  • エージェントにターミナル(例:macOS上のTerminal.app)を開かせてlsを実行させます。
  • 結果をファイルのリストのように表示します。

2. VS CodeでPythonインタープリタを選択する:VS CodeがプロジェクトのPython環境を使用していることを確認します:

  • Ctrl + P(Macの場合はCmd + P)を押します。
  • > Select Python Interpreterと入力してEnterを押します。
  • 仮想環境からインタープリタを選択します(例:./venv/bin/python)。これにより、CUAの依存関係が利用可能になり、「モジュールが見つかりません」というエラーを防ぎます。

3. スクリプトを実行する:Dockerが実行されていて、Claude Desktopの設定が完了していることを確認します。test.pyが開かれている状態で、VS Codeの「実行」ボタン(右上の三角形)をクリックするか、ターミナル内(仮想環境がアクティブな状態で):

python test.py

CUA MCPサーバーが起動し、Claude 3.7がタスクを処理し、ターミナルが開いてlsを実行します。私のMacでは「Result: cua test.py venv」と表示されました—かなり便利です!失敗した場合は、Docker、APIキー、ポート11434(Ollamaフォールバックを使用している場合)を確認してください。デバッグ情報は~/Library/Logs/Claude/mcp*.log(Mac)で確認できます。

4. Claude Desktopでテストする:Claude Desktopを開き、「ターミナルを開いて現在のディレクトリの内容をリストして」と入力します。ClaudeはCUA MCPサーバーを使用してタスクを実行し、結果をチャットに表示します。私のテストはプロジェクトファイルを瞬時にリストしました!

cua result output

利用可能なCUAツールと使用法

CUA MCPサーバーはClaude 3.7に二つの強力なツールを提供します:

  • run_cua_task:単一のタスクを実行します。「Chromeを開いてgithub.comに移動して」といったタスクです。
  • run_multi_cua_tasks:複数のタスクを順に実行します。「デスクトップに’Projects’というフォルダーを作成して、その後開いて」といったタスクです。

これらをClaude DesktopまたはCursorで使うことができ、次のようにお願いできます:

  • 「デスクトップに’Projects’というフォルダーを作成して。」
  • 「ダウンロードフォルダー内のすべてのPDFを見つけて。」
  • 「スクリーンショットを撮ってエラーメッセージを強調表示して。」

ClaudeはこれをCUAエージェントに自動的にルーティングし、自動化を簡単にします。

Claude 3.7を用いたCUAに関する私の見解

CUAをClaude 3.7でテストした後の私の感想はこちらです:

  • ローカルパワーハウス:すべてをMac上で実行することでデータがプライベートに保たれます—クラウドは不要です。
  • Claude 3.7が光る:その推論のおかげで、ターミナルコマンドのようなタスクが楽に感じられます。
  • セットアップのひっかかり:DockerとAPIキーの設定には少し手間がかかりましたが、インストールスクリプトのおかげで時間を節約できました。
  • 無限の可能性:アプリを開くことからファイルの管理まで、CUAはまるでスーパーパワーのようです。

問題が発生した場合は、DockerとAPIキーを再確認し、CUAのGitHubの課題のスレッドを確認して解決策を探してください。

CUA成功のためのプロのヒント

  • デバッグログ:Claudeのログ(~/Library/Logs/Claude/mcp*.log)またはDockerのログ(docker logs)を確認してエラーを見つけましょう。
  • 新しいタスクを試す:Claudeに「ブラウザを開いてgithub.comに行って」というか、「hello.txtという名前のファイルを作成して」と依頼してみてください。
  • 設定を最適化する:設定にCUA_MAX_IMAGES=5を設定して、タスクのコンテキストの中でより多くのスクリーンショットを保持できるようにします。「エラーを強調表示して」のようなタスクのために。

最後の考察:あなたのCUAとClaude 3.7の冒険が始まります

あなたはやり遂げました—CUA MCPサーバーをセットアップし、Claude 3.7を使用してあなたのコンピュータを制御させました!ターミナルを開いてファイルをリストするところから、CUAが自動化を魔法のように感じさせることを見てきました。次はアプリを立ち上げたりファイルを整理したりするタスクを試して、あなたの成功事例を共有してください。次の動きは何ですか?CUAコーディングアシスタントですか?スクリーンショットボットですか?さらに詳しい情報はCUAのGitHubを確認し、自動化を楽しんでください!

button
apidog