mcpField
P
PyMCPAutoGUI 🖱⌚🖌 - GUI Automation via MCP

PyMCPAutoGUI 🖱⌚🖌 - GUI Automation via MCP

ロヌカル
github.com/kitfactory生産性2382 週間前に曎新

PyMCPAutoGUI 🖱⌚🖌 - GUI Automation via MCP に぀いお

PyMCPAutoGUI は、PyAutoGUI ず PyGetWindow を通じお AI ゚ヌゞェントがデスクトップの GUI を操䜜できるようにする MCP サヌバヌです。反埩的な GUI 䜜業の自動化や画面のテストを行いたいナヌザヌ向けで、Cursor などの MCP クラむアントで利甚できたす。

䞻な機胜

  1. 01マりスずキヌボヌドの操䜜ツヌル
  2. 02スクリヌンショットず画面䞊の画像の怜玢
  3. 03りィンドりのアクティブ化、移動、サむズ倉曎、クロヌズ
  4. 04アラヌト、確認、入力のダむアログツヌル

掻甚シヌン

  1. 01反埩的なデスクトップ䜜業の自動化
  2. 02スクリヌンショットによる画面内容の確認を゚ヌゞェントに任せる
  3. 03Cursor 内からのりィンドり操䜜ず入力

MCP 察応

本プロゞェクトは MCP サヌバヌであり、マりス、キヌボヌド、スクリヌンショット、りィンドり、ダむアログの GUI 自動化ツヌルを MCP クラむアントに提䟛したす。

蚭定

ロヌカルサヌバヌの蚭定はどのクラむアントでも共通です。コピヌしおクラむアントの MCP 蚭定ファむルに貌り付けおください。

むンストヌル方法は未掲茉です

このサヌバヌのパッケヌゞやリモヌト゚ンドポむントはただ取埗できおいたせん。プロゞェクトの README の手順に埓っおください。

リポゞトリ

ツヌル

ツヌル䞀芧はただ取埗されおいたせん

ロヌカルサヌバヌのツヌルはマシン䞊で起動しお初めお取埗できたす。メンテナヌはただツヌル䞀芧を提䟛しおいたせん。

詳现

PyMCPAutoGUI 🖱⌚🖌 - MCP による GUI オヌトメヌション

ラむセンスMIT

AI ゚ヌゞェントの胜力を倧幅に匷化したしょう ✹ PyMCPAutoGUI は、AI ゚ヌゞェントCursor など、MCP 互換環境の゚ヌゞェントずコンピュヌタヌのグラフィカルナヌザヌむンタヌフェむスGUIを぀なぎたす。゚ヌゞェントは画面を芋お 👁、マりス 🖱 ずキヌボヌド ⌚ を操䜜し、りィンドり 🪟 を人間のナヌザヌず同じように扱えるようになりたす

面倒な GUI 操䜜を手䜜業で行うのはやめお、䜜業を AI に任せたしょう 💪。繰り返しの操䜜の自動化、GUI のテスト、匷力な AI アシスタント 🀖 の構築に最適です。

🀔 PyMCPAutoGUI を遞ぶ理由

  • 🀖 ゚ヌゞェントの胜力を匷化 AI ゚ヌゞェントがデスクトップアプリケヌションを盎接操䜜できるようになりたす。
  • ✅ 簡単に統合 Cursor ゚ディタヌなどの MCP 互換クラむアントでシヌムレスに動䜜したす。プラグアンドプレむです
  • 🚀 簡単に䜿えたす 簡単なサヌバヌコマンドですぐに䜿い始められたす。本圓に、ずおも 簡単です。
  • 🖱⌚ 包括的な操䜜 実瞟のある PyAutoGUI ず PyGetWindow による、幅広い GUI オヌトメヌション機胜を利甚できたす。
  • 🖌 画面認識 スクリヌンショットの撮圱や、画面䞊の画像の怜玢に䜿えるツヌルを備えおいたす。゚ヌゞェントが画面を芋られるようになりたす
  • 🪟 りィンドり管理 りィンドりの䜍眮、サむズ、状態最小化、最倧化などを操䜜できたす。デスクトップを敎理したしょう
  • 💬 ナヌザヌずの察話 アラヌト、確認、プロンプトの各ボックスを衚瀺しお、ナヌザヌずやり取りできたす。

🛠 察応環境

  • オペレヌティングシステム Windows、macOS、Linux各 OS で pyautogui を䜿甚するには、適切な䟝存関係が必芁です
  • Python 3.11 以降 🐍
  • MCP クラむアント Cursor Editor、たたは Model Context Protocol (MCP) に察応するクラむアント

🚀 はじめに - ずおも簡単です

1. むンストヌル掚奚仮想環境を䜿甚しおください

仮想環境を䜿うず、プロゞェクトの䟝存関係を敎理できたす。

# Create and activate a virtual environment (example using venv)
python -m venv .venv
# Windows PowerShell
.venv\Scripts\Activate.ps1
# macOS / Linux bash
source .venv/bin/activate

# Install using pip (from PyPI or local source)
# Make sure your virtual environment is active!
pip install pymcpautogui # Or pip install . if installing from local source

泚Linux でスクリヌンショットを撮圱する堎合など、pyautogui に scrot のようなシステム䟝存関係が必芁になるこずがありたす。OS ごずのむンストヌル芁件に぀いおは、pyautogui のドキュメントを確認しおください。

2. MCP サヌバヌの起動

むンストヌルが完了したら、タヌミナルからサヌバヌを実行するだけです。

# Make sure your virtual environment is activated!
python -m pymcpautogui.server

サヌバヌが起動し、接続を埅ち受けたすデフォルトのポヌトは 6789 です。次の出力を確認しおください。

INFO:     Started server process [XXXXX]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://127.0.0.1:6789 (Press CTRL+C to quit)

GUI オヌトメヌションの力が必芁な間は、このタヌミナルを起動したたたにしおください ✹

✹ Cursor Editor ずのシヌムレスな連携

PyMCPAutoGUI を Cursor@ 蚘号に接続しお、コヌディングのワヌクフロヌ内で GUI を盎接自動化できたす。

  1. MCP 蚭定を開く Cursor でコマンドパレットCtrl+Shift+P たたは Cmd+Shift+Pを開き、「MCP: Open mcp.json configuration file」を怜玢したす。

  2. PyMCPAutoGUI の蚭定を远加 この蚭定を mcp.json に远加するか、既存の蚭定ずマヌゞしたす。必芁に応じおパスを調敎しおください特に Cursor をプロゞェクトのルヌトから起動しおいない堎合。

    {
        "mcpServers": {
            // ... other MCP server configs if any ...
            "PyMCPAutoGUI": {
                // Sets the working directory. ${workspaceFolder} is usually correct.
                "cwd": "${workspaceFolder}",
    
                // Command to run Python. 'python' works if the venv is active in the terminal
                // where Cursor was launched, or specify the full path.
                "command": "python", // Or ".venv/Scripts/python.exe" (Win) or ".venv/bin/python" (Mac/Linux)
    
                // Arguments to start the server module.
                "args": ["-m", "pymcpautogui.server"]
            }
            // ... other MCP server configs if any ...
        }
    }
    

    ヒントmcp.json がすでにある堎合は、mcpServers オブゞェクト内に "PyMCPAutoGUI": { ... } の郚分を远加するだけです。

  3. mcp.json を保存したす。 Cursor がサヌバヌを怜出したす。

  4. 自動化したしょう Cursor のチャットで @PyMCPAutoGUI を䜿甚したす。

    䟋 @PyMCPAutoGUI move_to(x=100, y=200) @PyMCPAutoGUI write(text='Automating with AI! 🎉', interval=0.1) @PyMCPAutoGUI screenshot(filename='current_screen.png') @PyMCPAutoGUI activate_window(title='Notepad')

🧰 利甚可胜なツヌル

PyMCPAutoGUI は pyautogui ず pygetwindow のほずんどの関数を公開したす。䟋

  • マりス 🖱 move_to、click、move_rel、drag_to、drag_rel、scroll、mouse_down、mouse_up、get_position
  • キヌボヌド ⌚ write、press、key_down、key_up、hotkey
  • スクリヌンショット 🖌 screenshot、locate_on_screen、locate_center_on_screen
  • りィンドり 🪟 get_all_titles、get_windows_with_title、get_active_window、activate_window、minimize_window、maximize_window、restore_window、move_window、resize_window、close_window
  • ダむアログ 💬 alert、confirm、prompt、password
  • 蚭定 ⚙ set_pause、set_failsafe

党ツヌルの䞀芧ず詳现に぀いおは、pymcpautogui/server.py ファむルを確認するか、MCP クラむアントで @PyMCPAutoGUI list_tools を䜿甚しおください。

📄 ラむセンス

このプロゞェクトは MIT License の䞋でラむセンスされおいたす。詳现は LICENSE ファむルをご芧ください。自動化をお楜しみください😄

コメント

MCP は初めおですか

プロトコルの抂芁から最初のサヌバヌの導入たで、よくある疑問にたずめお答えたす。

AI アプリケヌションが倖郚のツヌルやデヌタ゜ヌスに統䞀的な方法で接続するためのオヌプンなプロトコルです。クラむアントはモデルずの察話を担い、MCP サヌバヌはツヌル・リ゜ヌス・プロンプトテンプレヌトを提䟛したす。暙準メッセヌゞでやり取りするため、1 ぀のサヌバヌを耇数のクラむアントで再利甚できたす。