Echo MCP Server
A Model Context Protocol (MCP) server that provides autonomous GUI automation capabilities to LLM clients (like Claude Desktop). This tool allows an AI to interact directly with your computer's screen, mouse, keyboard, and browser.
Features
- Computer Vision & OCR: Extract text from screen regions and find UI elements visually.
- Mouse & Keyboard Control: Perform clicks, typing, hotkeys, and precise movements.
- Window Management: Focus, minimize, maximize, and query open windows.
- System Automation: Manage processes, execute system commands, adjust volume, and check system health.
- Browser Automation: Full web browsing capabilities (Selenium) for navigating, finding elements, extracting text, and clicking.
- File System: Read/write files, list directories, download files.
Setup Instructions
1. Environment Requirements
- Python 3.12 or higher
- Windows (recommended for PyAutoGUI compatibility)
2. Installation
You can install the package directly from PyPI (https://pypi.org/project/echo-mcp/):
pip install echo-mcp
3. Configuration
You can automatically configure your AI apps and IDEs (Google Antigravity, Claude Desktop, Cursor, Windsurf, VS Code / Cline) to use the MCP server by running:
python -m echo_mcp.config
To configure all supported apps automatically without interactive prompts:
python -m echo_mcp.config --all
This setup wizard configures your client settings files (e.g. ~/.gemini/config/mcp_config.json for Antigravity). Restart your app/IDE after configuration for the new tools to take effect.
Available Tools
The server provides a comprehensive suite of tools spanning multiple categories:
AI Computer Control (Anthropic / OpenAI Operator Standard)
computer: Unified action tool supportingscreenshot,mouse_move,left_click,right_click,middle_click,double_click,triple_click,left_click_drag,mouse_down,mouse_up,type(Unicode clipboard paste),key,hotkey,scroll, andcursor_position. Includes an automatic action-observation feedback loop returning updated screenshots.- Multimodal Screen Perception: High-visibility pointer crosshair rendered on captured screenshots, Windows DPI auto-scaling, and native MCP
Imageoutput format.
Mouse & Keyboard
mouse_click,mouse_double_click,move_mouse,mouse_drag,mouse_scroll,get_mouse_positiontype_text,press_key,hotkey
Screen & Vision
take_screenshot(native FastMCP Image output with cursor overlay),get_screen_size,get_text_at_coords,find_text_on_screen,click_element
Window & Process Management
list_all_windows,focus_window,maximize_window,minimize_window,get_window_geometry,close_all_windows_by_title,get_active_window_infolist_processes,kill_process,get_process_stats,wait_for_process
System Utilities
system_power,set_volume,get_system_health,get_disk_usage,ping,list_network_interfaceslaunch_application,get_environment_variable,get_clipboard,set_clipboard,wait
File System
list_directory,read_file_content,write_to_file,delete_file,create_directory,download_file
Browser Automation
browser_open,browser_close,browser_navigate,browser_get_url,browser_get_title,browser_get_page_sourcebrowser_find_element,browser_click,browser_fill_form,browser_extract_textbrowser_screenshot,browser_scroll,browser_execute_script,browser_wait_for_element
Security Warning
Giving an LLM control over your mouse and keyboard is powerful but risky. Only run this server with prompts you trust, and never leave the automation unattended while active.
Metadata
Release files for echo-mcp 0.1.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| echo_mcp-0.1.8.tar.gz | 116.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| echo_mcp-0.1.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 134.3 kB
Release files / echo_mcp-0.1.8.tar.gz
| Download URL | echo_mcp-0.1.8.tar.gz |
|---|---|
| Size | 116.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
85e55da2d40e8c05e76ca083072d0f503d381c91396cc5659570a78ce97f5dab
|
|
BLAKE2b-256 checksum How to use checksums |
6369d4096d81de57f29168c8011b8dfc449068adb14bd99d6922c4e8a8eb7cca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / echo_mcp-0.1.8-py3-none-any.whl
| Download URL | echo_mcp-0.1.8-py3-none-any.whl |
|---|---|
| Size | 18.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bcd1e7afc60b17b28cb385cd1719e8c7aba119c8e344b8a2c04dcddc32ed7949
|
|
BLAKE2b-256 checksum How to use checksums |
bcf6b02537f0eba1496c2b2f0f6ba13c2d9bcdcdc2b5cb1e84484186dc033233
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|