computer-control-mcp 0.2.6__tar.gz → 0.2.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/LICENSE +1 -1
- computer_control_mcp-0.2.8/PKG-INFO +130 -0
- computer_control_mcp-0.2.8/README.md +101 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/core.py +467 -524
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/pyproject.toml +13 -13
- computer_control_mcp-0.2.6/PKG-INFO +0 -110
- computer_control_mcp-0.2.6/README.md +0 -81
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/.gitignore +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/FZYTK.TTF +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/__init__.py +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/__main__.py +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/cli.py +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/gui.py +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/server.py +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/test.py +0 -0
- {computer_control_mcp-0.2.6 → computer_control_mcp-0.2.8}/computer_control_mcp/test_image.png +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c)
|
|
3
|
+
Copyright (c) 2025 AB498 <abcd49800@gmail.com>
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: computer-control-mcp
|
|
3
|
+
Version: 0.2.8
|
|
4
|
+
Summary: MCP server that provides computer control capabilities, like mouse, keyboard, OCR, etc. using PyAutoGUI, RapidOCR, ONNXRuntime. Similar to 'computer-use' by Anthropic. With Zero External Dependencies.
|
|
5
|
+
Project-URL: Homepage, https://github.com/AB498/computer-control-mcp
|
|
6
|
+
Project-URL: Issues, https://github.com/AB498/computer-control-mcp/issues
|
|
7
|
+
Project-URL: Documentation, https://github.com/AB498/computer-control-mcp#readme
|
|
8
|
+
Author-email: AB498 <abcd49800@gmail.com>
|
|
9
|
+
License: MIT
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Classifier: Development Status :: 4 - Beta
|
|
12
|
+
Classifier: Intended Audience :: Developers
|
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Topic :: Software Development :: Libraries
|
|
17
|
+
Classifier: Topic :: Utilities
|
|
18
|
+
Requires-Python: >=3.12
|
|
19
|
+
Requires-Dist: fuzzywuzzy==0.18.0
|
|
20
|
+
Requires-Dist: mcp[cli]==1.13.0
|
|
21
|
+
Requires-Dist: onnxruntime==1.22.1
|
|
22
|
+
Requires-Dist: opencv-python==4.12.0.88
|
|
23
|
+
Requires-Dist: pillow==11.3.0
|
|
24
|
+
Requires-Dist: pyautogui==0.9.54
|
|
25
|
+
Requires-Dist: pygetwindow==0.0.9
|
|
26
|
+
Requires-Dist: rapidocr-onnxruntime==1.4.4
|
|
27
|
+
Requires-Dist: rapidocr==3.3.1
|
|
28
|
+
Description-Content-Type: text/markdown
|
|
29
|
+
|
|
30
|
+
# Computer Control MCP
|
|
31
|
+
|
|
32
|
+
### MCP server that provides computer control capabilities, like mouse, keyboard, OCR, etc. using PyAutoGUI, RapidOCR, ONNXRuntime. Similar to 'computer-use' by Anthropic. With Zero External Dependencies.
|
|
33
|
+
|
|
34
|
+
* *Only tested on Windows. Should work on other platforms.*
|
|
35
|
+
|
|
36
|
+
<div style="text-align:center;font-family: monospace; display: flex; align-items: center; justify-content: center; width: 100%; gap: 10px">
|
|
37
|
+
<a href="https://discord.gg/ZeeqSBpjU2"><img src="https://img.shields.io/discord/1095854826786668545" alt="Discord"></a>
|
|
38
|
+
<a href="https://img.shields.io/badge/License-MIT-yellow.svg"><img
|
|
39
|
+
src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
|
|
40
|
+
</div>
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+

|
|
45
|
+
|
|
46
|
+
## Quick Usage (MCP Setup Using `uvx`)
|
|
47
|
+
|
|
48
|
+
***Note:** Running `uvx computer-control-mcp@latest` for the first time will download python dependencies (around 70MB) which may take some time. Recommended to run this in a terminal before using it as MCP. Subsequent runs will be instant.*
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"mcpServers": {
|
|
53
|
+
"computer-control-mcp": {
|
|
54
|
+
"command": "uvx",
|
|
55
|
+
"args": ["computer-control-mcp@latest"]
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
OR install globally with `pip`:
|
|
62
|
+
```bash
|
|
63
|
+
pip install computer-control-mcp
|
|
64
|
+
```
|
|
65
|
+
Then run the server with:
|
|
66
|
+
```bash
|
|
67
|
+
computer-control-mcp # instead of uvx computer-control-mcp, so you can use the latest version, also you can `uv cache clean` to clear the cache and `uvx` again to use latest version.
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Features
|
|
71
|
+
|
|
72
|
+
- Control mouse movements and clicks
|
|
73
|
+
- Type text at the current cursor position
|
|
74
|
+
- Take screenshots of the entire screen or specific windows with optional saving to downloads directory
|
|
75
|
+
- Extract text from screenshots using OCR (Optical Character Recognition)
|
|
76
|
+
- List and activate windows
|
|
77
|
+
- Press keyboard keys
|
|
78
|
+
- Drag and drop operations
|
|
79
|
+
|
|
80
|
+
## Available Tools
|
|
81
|
+
|
|
82
|
+
### Mouse Control
|
|
83
|
+
- `click_screen(x: int, y: int)`: Click at specified screen coordinates
|
|
84
|
+
- `move_mouse(x: int, y: int)`: Move mouse cursor to specified coordinates
|
|
85
|
+
- `drag_mouse(from_x: int, from_y: int, to_x: int, to_y: int, duration: float = 0.5)`: Drag mouse from one position to another
|
|
86
|
+
|
|
87
|
+
### Keyboard Control
|
|
88
|
+
- `type_text(text: str)`: Type the specified text at current cursor position
|
|
89
|
+
- `press_key(key: str)`: Press a specified keyboard key
|
|
90
|
+
|
|
91
|
+
### Screen and Window Management
|
|
92
|
+
- `take_screenshot(title_pattern: str = None, use_regex: bool = False, threshold: int = 60, with_ocr_text_and_coords: bool = False, scale_percent_for_ocr: int = 100, save_to_downloads: bool = False)`: Capture screen or window with optional OCR
|
|
93
|
+
- `get_screen_size()`: Get current screen resolution
|
|
94
|
+
- `list_windows()`: List all open windows
|
|
95
|
+
- `activate_window(title_pattern: str, use_regex: bool = False, threshold: int = 60)`: Bring specified window to foreground
|
|
96
|
+
|
|
97
|
+
## Development
|
|
98
|
+
|
|
99
|
+
### Setting up the Development Environment
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
# Clone the repository
|
|
103
|
+
git clone https://github.com/AB498/computer-control-mcp.git
|
|
104
|
+
cd computer-control-mcp
|
|
105
|
+
|
|
106
|
+
# Install in development mode
|
|
107
|
+
pip install -e .
|
|
108
|
+
|
|
109
|
+
# Start server
|
|
110
|
+
python -m computer_control_mcp.core
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Running Tests
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
python -m pytest
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## API Reference
|
|
120
|
+
|
|
121
|
+
See the [API Reference](docs/api.md) for detailed information about the available functions and classes.
|
|
122
|
+
|
|
123
|
+
## License
|
|
124
|
+
|
|
125
|
+
MIT
|
|
126
|
+
|
|
127
|
+
## For more information or help
|
|
128
|
+
|
|
129
|
+
- [Email (abcd49800@gmail.com)](mailto:abcd49800@gmail.com)
|
|
130
|
+
- [Discord (CodePlayground)](https://discord.gg/ZeeqSBpjU2)
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# Computer Control MCP
|
|
2
|
+
|
|
3
|
+
### MCP server that provides computer control capabilities, like mouse, keyboard, OCR, etc. using PyAutoGUI, RapidOCR, ONNXRuntime. Similar to 'computer-use' by Anthropic. With Zero External Dependencies.
|
|
4
|
+
|
|
5
|
+
* *Only tested on Windows. Should work on other platforms.*
|
|
6
|
+
|
|
7
|
+
<div style="text-align:center;font-family: monospace; display: flex; align-items: center; justify-content: center; width: 100%; gap: 10px">
|
|
8
|
+
<a href="https://discord.gg/ZeeqSBpjU2"><img src="https://img.shields.io/discord/1095854826786668545" alt="Discord"></a>
|
|
9
|
+
<a href="https://img.shields.io/badge/License-MIT-yellow.svg"><img
|
|
10
|
+
src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT"></a>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+

|
|
16
|
+
|
|
17
|
+
## Quick Usage (MCP Setup Using `uvx`)
|
|
18
|
+
|
|
19
|
+
***Note:** Running `uvx computer-control-mcp@latest` for the first time will download python dependencies (around 70MB) which may take some time. Recommended to run this in a terminal before using it as MCP. Subsequent runs will be instant.*
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"mcpServers": {
|
|
24
|
+
"computer-control-mcp": {
|
|
25
|
+
"command": "uvx",
|
|
26
|
+
"args": ["computer-control-mcp@latest"]
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
OR install globally with `pip`:
|
|
33
|
+
```bash
|
|
34
|
+
pip install computer-control-mcp
|
|
35
|
+
```
|
|
36
|
+
Then run the server with:
|
|
37
|
+
```bash
|
|
38
|
+
computer-control-mcp # instead of uvx computer-control-mcp, so you can use the latest version, also you can `uv cache clean` to clear the cache and `uvx` again to use latest version.
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Features
|
|
42
|
+
|
|
43
|
+
- Control mouse movements and clicks
|
|
44
|
+
- Type text at the current cursor position
|
|
45
|
+
- Take screenshots of the entire screen or specific windows with optional saving to downloads directory
|
|
46
|
+
- Extract text from screenshots using OCR (Optical Character Recognition)
|
|
47
|
+
- List and activate windows
|
|
48
|
+
- Press keyboard keys
|
|
49
|
+
- Drag and drop operations
|
|
50
|
+
|
|
51
|
+
## Available Tools
|
|
52
|
+
|
|
53
|
+
### Mouse Control
|
|
54
|
+
- `click_screen(x: int, y: int)`: Click at specified screen coordinates
|
|
55
|
+
- `move_mouse(x: int, y: int)`: Move mouse cursor to specified coordinates
|
|
56
|
+
- `drag_mouse(from_x: int, from_y: int, to_x: int, to_y: int, duration: float = 0.5)`: Drag mouse from one position to another
|
|
57
|
+
|
|
58
|
+
### Keyboard Control
|
|
59
|
+
- `type_text(text: str)`: Type the specified text at current cursor position
|
|
60
|
+
- `press_key(key: str)`: Press a specified keyboard key
|
|
61
|
+
|
|
62
|
+
### Screen and Window Management
|
|
63
|
+
- `take_screenshot(title_pattern: str = None, use_regex: bool = False, threshold: int = 60, with_ocr_text_and_coords: bool = False, scale_percent_for_ocr: int = 100, save_to_downloads: bool = False)`: Capture screen or window with optional OCR
|
|
64
|
+
- `get_screen_size()`: Get current screen resolution
|
|
65
|
+
- `list_windows()`: List all open windows
|
|
66
|
+
- `activate_window(title_pattern: str, use_regex: bool = False, threshold: int = 60)`: Bring specified window to foreground
|
|
67
|
+
|
|
68
|
+
## Development
|
|
69
|
+
|
|
70
|
+
### Setting up the Development Environment
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Clone the repository
|
|
74
|
+
git clone https://github.com/AB498/computer-control-mcp.git
|
|
75
|
+
cd computer-control-mcp
|
|
76
|
+
|
|
77
|
+
# Install in development mode
|
|
78
|
+
pip install -e .
|
|
79
|
+
|
|
80
|
+
# Start server
|
|
81
|
+
python -m computer_control_mcp.core
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Running Tests
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
python -m pytest
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
## API Reference
|
|
91
|
+
|
|
92
|
+
See the [API Reference](docs/api.md) for detailed information about the available functions and classes.
|
|
93
|
+
|
|
94
|
+
## License
|
|
95
|
+
|
|
96
|
+
MIT
|
|
97
|
+
|
|
98
|
+
## For more information or help
|
|
99
|
+
|
|
100
|
+
- [Email (abcd49800@gmail.com)](mailto:abcd49800@gmail.com)
|
|
101
|
+
- [Discord (CodePlayground)](https://discord.gg/ZeeqSBpjU2)
|