mcpField
D
Desktop Automation

Desktop Automation

ローカル
github.com/tanob生産性3450 週間前に更新

Desktop Automation について

Desktop Automation は RobotJS を用いた MCP サーバーで、LLM がマウス、キーボードの操作とスクリーンキャプチャを行えるようにします。ローカルのデスクトップ自動化向けで、主に Claude Desktop でテストされています。

主な機能

  1. 01マウスの移動とクリック
  2. 02キーボードのキー入力とテキスト入力
  3. 03画面サイズの取得
  4. 04スクリーンショットの取得とリソース

活用シーン

  1. 01LLM によるデスクトップアプリの操作
  2. 02モデルの分析用に画面内容を取得

MCP 対応

MCP サーバーとして、get_screen_size、screen_capture、keyboard_press、keyboard_type、mouse_click、mouse_move などのツールを MCP クライアントに公開し、screenshot:// 配下でスクリーンショットをリソースとして提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"desktop-automation": {
"command": "npx",
"args": [
"-y",
"mcp-desktop-automation"
]
}
}
}
起動コマンドnpx -y mcp-desktop-automation

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmmcp-desktop-automation

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP デスクトップ自動化

RobotJS とスクリーンショット機能を使用して、デスクトップ自動化機能を提供する Model Context Protocol サーバーです。このサーバーを使用すると、LLM がデスクトップ環境でのマウス操作やキーボード入力を制御し、スクリーンショットを撮影できます。

デスクトップ自動化サーバーの設定方法

Claude Desktop で MCP デスクトップ自動化サーバーを使用するための設定方法は次のとおりです。

NPX
{
  "mcpServers": {
    "desktop-automation": {
      "command": "npx",
      "args": ["-y", "mcp-desktop-automation"]
    }
  }
}
アクセス許可

このサーバーを使用するには、システムレベルで次のアクセス許可が必要です。

  • 画面のスクリーンショットを撮影する
  • マウスの移動とクリックを制御する
  • キーボード入力をシミュレートする

このサーバーを使用して Claude Desktop を初めて実行する際は、オペレーティングシステムのセキュリティ設定でこれらのアクセス許可を付与する必要がある場合があります。

制限事項

このサーバーはさまざまな MCP クライアントで動作しますが、主に Claude Desktop でテストされています。

重要:現在の実装では、レスポンスサイズの上限は 1MB です。画面のキャプチャについては、次の点にご注意ください。

  • 高解像度のスクリーンショットはこの上限を超えて、失敗する場合があります
  • テストでは、800x600 の解像度で安定して動作することが確認されています
  • 問題が発生した場合は、画面の解像度を下げるか、画面の特定の範囲をキャプチャすることをご検討ください

要件

  • Node.js (>=14.x)

コンポーネント

ツール
  • get_screen_size

    • 画面のサイズを取得します
    • 入力パラメーターは不要です
  • screen_capture

    • 現在の画面の内容をキャプチャします
    • 入力パラメーターは不要です
  • keyboard_press

    • キーまたはキーの組み合わせを押します
    • 入力:
      • key (string, required):押すキー(例:'enter'、'a'、'control')
      • modifiers (array of strings, optional):キーを押すときに押し続ける修飾キー。使用可能な値:「control」、「shift」、「alt」、「command」
  • keyboard_type

    • 現在のカーソル位置にテキストを入力します
    • 入力:text (string, required):入力するテキスト
  • mouse_click

    • マウスをクリックします
    • 入力:
      • button (string, optional, default: "left"):クリックするマウスボタン。使用可能な値:「left」、「right」、「middle」
      • double (boolean, optional, default: false):ダブルクリックするかどうか
  • mouse_move

    • マウスを指定した座標に移動します
    • 入力:
      • x (number, required):X 座標
      • y (number, required):Y 座標
リソース

サーバーはスクリーンショットにアクセスできます。

  1. スクリーンショット一覧 (screenshot://list)

    • 名前で利用可能なすべてのスクリーンショットを一覧表示します
  2. スクリーンショットの内容 (screenshot://{id})

    • キャプチャしたスクリーンショットの PNG 画像です
    • スクリーンショット ID(タイムスタンプに基づく名前)を使用してアクセスできます

主な機能

  • デスクトップのマウス操作
  • キーボード入力のシミュレーション
  • 画面サイズの検出
  • スクリーンショット機能
  • シンプルな JSON レスポンス形式

ライセンス

この MCP サーバーは MIT ライセンスの下でライセンスされています。MIT ライセンスの利用規約に従うことを条件に、ソフトウェアを自由に使用、変更、配布できます。詳しくは、プロジェクトリポジトリの LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。