windows-mcp 0.5.3__tar.gz → 0.5.5__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.
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/.gitignore +1 -1
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/PKG-INFO +87 -103
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/README.md +86 -102
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/pyproject.toml +1 -1
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/server.json +1 -1
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/__main__.py +4 -4
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/tree/service.py +12 -42
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/tree/views.py +8 -2
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/uv.lock +1483 -1483
- windows_mcp-0.5.3/notebook.ipynb +0 -187
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/.python-version +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/CONTRIBUTING.md +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/LICENSE.md +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/SECURITY.md +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/assets/demo1.mov +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/assets/demo2.mov +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/assets/logo.png +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/assets/screenshots/screenshot_1.png +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/assets/screenshots/screenshot_2.png +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/assets/screenshots/screenshot_3.png +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/manifest.json +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/__init__.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/desktop/__init__.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/desktop/config.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/desktop/service.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/desktop/views.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/tree/__init__.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/tree/config.py +0 -0
- {windows_mcp-0.5.3 → windows_mcp-0.5.5}/src/windows_mcp/tree/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: windows-mcp
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.5
|
|
4
4
|
Summary: Lightweight MCP Server for interacting with Windows Operating System.
|
|
5
5
|
Project-URL: homepage, https://github.com/CursorTouch
|
|
6
6
|
Author-email: Jeomon George <jeogeoalukka@gmail.com>
|
|
@@ -75,7 +75,7 @@ Description-Content-Type: text/markdown
|
|
|
75
75
|
mcp-name: io.github.CursorTouch/Windows-MCP
|
|
76
76
|
|
|
77
77
|
## Updates
|
|
78
|
-
|
|
78
|
+
- Windows-MCP is now available on [PyPI](https://pypi.org/project/windows-mcp/) (thus supports `uvx`)
|
|
79
79
|
- Windows-MCP is added to [MCP Registry](https://github.com/modelcontextprotocol/registry)
|
|
80
80
|
- Try out 🪟[Windows-Use](https://github.com/CursorTouch/Windows-Use)!!, an agent built using Windows-MCP.
|
|
81
81
|
- Windows-MCP is now featured as Desktop Extension in `Claude Desktop`.
|
|
@@ -116,55 +116,6 @@ mcp-name: io.github.CursorTouch/Windows-MCP
|
|
|
116
116
|
- **DOM Mode for Browser Automation**
|
|
117
117
|
Special `use_dom=True` mode for State-Tool that focuses exclusively on web page content, filtering out browser UI elements for cleaner, more efficient web automation.
|
|
118
118
|
|
|
119
|
-
## 🌐 DOM Mode for Browser Automation
|
|
120
|
-
|
|
121
|
-
Windows-MCP includes a powerful **DOM Mode** feature that enhances browser automation by focusing on web page content rather than browser UI elements.
|
|
122
|
-
|
|
123
|
-
### What is DOM Mode?
|
|
124
|
-
|
|
125
|
-
When `use_dom=True` is set in the State-Tool, the MCP server:
|
|
126
|
-
- **Filters out browser UI**: Removes address bars, tabs, toolbars, and other browser chrome elements
|
|
127
|
-
- **Returns only web content**: Provides interactive elements (links, buttons, forms) from the actual web page
|
|
128
|
-
- **Reduces token usage**: Cleaner output means fewer tokens sent to the LLM
|
|
129
|
-
- **Improves accuracy**: LLM focuses only on relevant web page elements
|
|
130
|
-
|
|
131
|
-
### When to Use DOM Mode
|
|
132
|
-
|
|
133
|
-
✅ **Use `use_dom=True` when:**
|
|
134
|
-
- Automating web applications or websites
|
|
135
|
-
- Scraping web content
|
|
136
|
-
- Filling out web forms
|
|
137
|
-
- Clicking links or buttons on web pages
|
|
138
|
-
- Testing web interfaces
|
|
139
|
-
- You want to ignore browser UI and focus on page content
|
|
140
|
-
|
|
141
|
-
❌ **Use `use_dom=False` (default) when:**
|
|
142
|
-
- Interacting with browser controls (address bar, tabs, bookmarks)
|
|
143
|
-
- Working with desktop applications
|
|
144
|
-
- Need to see all UI elements including browser chrome
|
|
145
|
-
- Managing browser settings or extensions
|
|
146
|
-
|
|
147
|
-
### Example Usage
|
|
148
|
-
|
|
149
|
-
```python
|
|
150
|
-
# Get web page content only (no browser UI)
|
|
151
|
-
state_tool(use_vision=False, use_dom=True)
|
|
152
|
-
|
|
153
|
-
# Get full desktop state including browser UI
|
|
154
|
-
state_tool(use_vision=False, use_dom=False)
|
|
155
|
-
|
|
156
|
-
# Get web page content with screenshot
|
|
157
|
-
state_tool(use_vision=True, use_dom=True)
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
### Benefits
|
|
161
|
-
|
|
162
|
-
1. **Token Efficiency**: Reduces the amount of data sent to LLM by filtering irrelevant browser UI
|
|
163
|
-
2. **Better Focus**: LLM concentrates on actionable web page elements
|
|
164
|
-
3. **Cleaner Output**: Only relevant interactive elements from the DOM are returned
|
|
165
|
-
4. **Faster Processing**: Less data means faster LLM inference
|
|
166
|
-
5. **Cost Savings**: Fewer tokens = lower API costs for cloud LLMs
|
|
167
|
-
|
|
168
119
|
## 🛠️Installation
|
|
169
120
|
|
|
170
121
|
### Prerequisites
|
|
@@ -182,23 +133,56 @@ state_tool(use_vision=True, use_dom=True)
|
|
|
182
133
|
npm install -g @anthropic-ai/mcpb
|
|
183
134
|
```
|
|
184
135
|
|
|
185
|
-
2. Clone the repository.
|
|
186
136
|
|
|
187
|
-
|
|
188
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
137
|
+
2. Configure the extension:
|
|
189
138
|
|
|
190
|
-
|
|
191
|
-
|
|
139
|
+
**Option A: Install from PyPI (Recommended)**
|
|
140
|
+
|
|
141
|
+
Use `uvx` to run the latest version directly from PyPI.
|
|
142
|
+
|
|
143
|
+
Add this to your `claude_desktop_config.json`:
|
|
144
|
+
```json
|
|
145
|
+
{
|
|
146
|
+
"mcpServers": {
|
|
147
|
+
"windows-mcp": {
|
|
148
|
+
"command": "uvx",
|
|
149
|
+
"args": [
|
|
150
|
+
"windows-mcp"
|
|
151
|
+
]
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
**Option B: Install from Source**
|
|
158
|
+
|
|
159
|
+
1. Clone the repository:
|
|
160
|
+
```shell
|
|
161
|
+
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
162
|
+
cd Windows-MCP
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
2. Add this to your `claude_desktop_config.json`:
|
|
166
|
+
```json
|
|
167
|
+
{
|
|
168
|
+
"mcpServers": {
|
|
169
|
+
"windows-mcp": {
|
|
170
|
+
"command": "uv",
|
|
171
|
+
"args": [
|
|
172
|
+
"--directory",
|
|
173
|
+
"<path to the windows-mcp directory>",
|
|
174
|
+
"run",
|
|
175
|
+
"windows-mcp"
|
|
176
|
+
]
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
```
|
|
192
181
|
|
|
193
|
-
3. Build Desktop Extension `MCPB`:
|
|
194
182
|
|
|
195
|
-
```shell
|
|
196
|
-
npx @anthropic-ai/mcpb pack
|
|
197
|
-
```
|
|
198
183
|
|
|
199
|
-
|
|
184
|
+
3. Open Claude Desktop and enjoy! 🥳
|
|
200
185
|
|
|
201
|
-
Go to `Settings->Extensions->Advance Settings->Install Extension` (locate the `.mcpb` file)-> Install
|
|
202
186
|
|
|
203
187
|
5. Enjoy 🥳.
|
|
204
188
|
|
|
@@ -224,17 +208,32 @@ Go to `Settings->Connectors->Add Connector->Advanced`
|
|
|
224
208
|
|
|
225
209
|
4. Enter the name as `Windows-MCP`, then paste the following JSON in the text area.
|
|
226
210
|
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
"
|
|
233
|
-
"
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
}
|
|
237
|
-
```
|
|
211
|
+
|
|
212
|
+
**Option A: Install from PyPI (Recommended)**
|
|
213
|
+
|
|
214
|
+
```json
|
|
215
|
+
{
|
|
216
|
+
"command": "uvx",
|
|
217
|
+
"args": [
|
|
218
|
+
"windows-mcp"
|
|
219
|
+
]
|
|
220
|
+
}
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
**Option B: Install from Source**
|
|
224
|
+
|
|
225
|
+
```json
|
|
226
|
+
{
|
|
227
|
+
"command": "uv",
|
|
228
|
+
"args": [
|
|
229
|
+
"--directory",
|
|
230
|
+
"<path to the windows-mcp directory>",
|
|
231
|
+
"run",
|
|
232
|
+
"windows-mcp"
|
|
233
|
+
]
|
|
234
|
+
}
|
|
235
|
+
```
|
|
236
|
+
|
|
238
237
|
|
|
239
238
|
5. Click `Save` and Enjoy 🥳.
|
|
240
239
|
|
|
@@ -250,13 +249,9 @@ For additional Claude Desktop integration troubleshooting, see the [Perplexity M
|
|
|
250
249
|
npm install -g @google/gemini-cli
|
|
251
250
|
```
|
|
252
251
|
|
|
253
|
-
2. Clone the repository.
|
|
254
252
|
|
|
255
|
-
|
|
256
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
253
|
+
2. Configure the server in `%USERPROFILE%/.gemini/settings.json`:
|
|
257
254
|
|
|
258
|
-
cd Windows-MCP
|
|
259
|
-
```
|
|
260
255
|
|
|
261
256
|
3. Navigate to `%USERPROFILE%/.gemini` in File Explorer and open `settings.json`.
|
|
262
257
|
|
|
@@ -269,17 +264,16 @@ cd Windows-MCP
|
|
|
269
264
|
//MCP Server Config
|
|
270
265
|
"mcpServers": {
|
|
271
266
|
"windows-mcp": {
|
|
272
|
-
"command": "
|
|
267
|
+
"command": "uvx",
|
|
273
268
|
"args": [
|
|
274
|
-
"
|
|
275
|
-
"<path to the windows-mcp directory>",
|
|
276
|
-
"run",
|
|
277
|
-
"main.py"
|
|
269
|
+
"windows-mcp"
|
|
278
270
|
]
|
|
279
271
|
}
|
|
280
272
|
}
|
|
281
273
|
}
|
|
282
274
|
```
|
|
275
|
+
*Note: To run from source, replace the command with `uv` and args with `["--directory", "<path>", "run", "windows-mcp"]`.*
|
|
276
|
+
|
|
283
277
|
|
|
284
278
|
5. Rerun Gemini CLI in terminal. Enjoy 🥳
|
|
285
279
|
</details>
|
|
@@ -291,13 +285,9 @@ cd Windows-MCP
|
|
|
291
285
|
```shell
|
|
292
286
|
npm install -g @qwen-code/qwen-code@latest
|
|
293
287
|
```
|
|
294
|
-
2. Clone the repository.
|
|
295
288
|
|
|
296
|
-
|
|
297
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
289
|
+
2. Configure the server in `%USERPROFILE%/.qwen/settings.json`:
|
|
298
290
|
|
|
299
|
-
cd Windows-MCP
|
|
300
|
-
```
|
|
301
291
|
|
|
302
292
|
3. Navigate to `%USERPROFILE%/.qwen/settings.json`.
|
|
303
293
|
|
|
@@ -308,17 +298,16 @@ cd Windows-MCP
|
|
|
308
298
|
//MCP Server Config
|
|
309
299
|
"mcpServers": {
|
|
310
300
|
"windows-mcp": {
|
|
311
|
-
"command": "
|
|
301
|
+
"command": "uvx",
|
|
312
302
|
"args": [
|
|
313
|
-
"
|
|
314
|
-
"<path to the windows-mcp directory>",
|
|
315
|
-
"run",
|
|
316
|
-
"main.py"
|
|
303
|
+
"windows-mcp"
|
|
317
304
|
]
|
|
318
305
|
}
|
|
319
306
|
}
|
|
320
307
|
}
|
|
321
308
|
```
|
|
309
|
+
*Note: To run from source, replace the command with `uv` and args with `["--directory", "<path>", "run", "windows-mcp"]`.*
|
|
310
|
+
|
|
322
311
|
|
|
323
312
|
5. Rerun Qwen Code in terminal. Enjoy 🥳
|
|
324
313
|
</details>
|
|
@@ -330,27 +319,22 @@ cd Windows-MCP
|
|
|
330
319
|
```shell
|
|
331
320
|
npm install -g @openai/codex
|
|
332
321
|
```
|
|
333
|
-
2. Clone the repository.
|
|
334
322
|
|
|
335
|
-
|
|
336
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
323
|
+
2. Configure the server in `%USERPROFILE%/.codex/config.toml`:
|
|
337
324
|
|
|
338
|
-
cd Windows-MCP
|
|
339
|
-
```
|
|
340
325
|
3. Navigate to `%USERPROFILE%/.codex/config.toml`.
|
|
341
326
|
|
|
342
327
|
4. Add the `windows-mcp` config in the `config.toml` and save it.
|
|
343
328
|
|
|
344
329
|
```toml
|
|
345
330
|
[mcp_servers.windows-mcp]
|
|
346
|
-
command="
|
|
331
|
+
command="uvx"
|
|
347
332
|
args=[
|
|
348
|
-
"
|
|
349
|
-
"<path to the windows-mcp directory>",
|
|
350
|
-
"run",
|
|
351
|
-
"main.py"
|
|
333
|
+
"windows-mcp"
|
|
352
334
|
]
|
|
353
335
|
```
|
|
336
|
+
*Note: To run from source, replace the command with `uv` and args with `["--directory", "<path>", "run", "windows-mcp"]`.*
|
|
337
|
+
|
|
354
338
|
|
|
355
339
|
5. Rerun Codex CLI in terminal. Enjoy 🥳
|
|
356
340
|
</details>
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
mcp-name: io.github.CursorTouch/Windows-MCP
|
|
27
27
|
|
|
28
28
|
## Updates
|
|
29
|
-
|
|
29
|
+
- Windows-MCP is now available on [PyPI](https://pypi.org/project/windows-mcp/) (thus supports `uvx`)
|
|
30
30
|
- Windows-MCP is added to [MCP Registry](https://github.com/modelcontextprotocol/registry)
|
|
31
31
|
- Try out 🪟[Windows-Use](https://github.com/CursorTouch/Windows-Use)!!, an agent built using Windows-MCP.
|
|
32
32
|
- Windows-MCP is now featured as Desktop Extension in `Claude Desktop`.
|
|
@@ -67,55 +67,6 @@ mcp-name: io.github.CursorTouch/Windows-MCP
|
|
|
67
67
|
- **DOM Mode for Browser Automation**
|
|
68
68
|
Special `use_dom=True` mode for State-Tool that focuses exclusively on web page content, filtering out browser UI elements for cleaner, more efficient web automation.
|
|
69
69
|
|
|
70
|
-
## 🌐 DOM Mode for Browser Automation
|
|
71
|
-
|
|
72
|
-
Windows-MCP includes a powerful **DOM Mode** feature that enhances browser automation by focusing on web page content rather than browser UI elements.
|
|
73
|
-
|
|
74
|
-
### What is DOM Mode?
|
|
75
|
-
|
|
76
|
-
When `use_dom=True` is set in the State-Tool, the MCP server:
|
|
77
|
-
- **Filters out browser UI**: Removes address bars, tabs, toolbars, and other browser chrome elements
|
|
78
|
-
- **Returns only web content**: Provides interactive elements (links, buttons, forms) from the actual web page
|
|
79
|
-
- **Reduces token usage**: Cleaner output means fewer tokens sent to the LLM
|
|
80
|
-
- **Improves accuracy**: LLM focuses only on relevant web page elements
|
|
81
|
-
|
|
82
|
-
### When to Use DOM Mode
|
|
83
|
-
|
|
84
|
-
✅ **Use `use_dom=True` when:**
|
|
85
|
-
- Automating web applications or websites
|
|
86
|
-
- Scraping web content
|
|
87
|
-
- Filling out web forms
|
|
88
|
-
- Clicking links or buttons on web pages
|
|
89
|
-
- Testing web interfaces
|
|
90
|
-
- You want to ignore browser UI and focus on page content
|
|
91
|
-
|
|
92
|
-
❌ **Use `use_dom=False` (default) when:**
|
|
93
|
-
- Interacting with browser controls (address bar, tabs, bookmarks)
|
|
94
|
-
- Working with desktop applications
|
|
95
|
-
- Need to see all UI elements including browser chrome
|
|
96
|
-
- Managing browser settings or extensions
|
|
97
|
-
|
|
98
|
-
### Example Usage
|
|
99
|
-
|
|
100
|
-
```python
|
|
101
|
-
# Get web page content only (no browser UI)
|
|
102
|
-
state_tool(use_vision=False, use_dom=True)
|
|
103
|
-
|
|
104
|
-
# Get full desktop state including browser UI
|
|
105
|
-
state_tool(use_vision=False, use_dom=False)
|
|
106
|
-
|
|
107
|
-
# Get web page content with screenshot
|
|
108
|
-
state_tool(use_vision=True, use_dom=True)
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### Benefits
|
|
112
|
-
|
|
113
|
-
1. **Token Efficiency**: Reduces the amount of data sent to LLM by filtering irrelevant browser UI
|
|
114
|
-
2. **Better Focus**: LLM concentrates on actionable web page elements
|
|
115
|
-
3. **Cleaner Output**: Only relevant interactive elements from the DOM are returned
|
|
116
|
-
4. **Faster Processing**: Less data means faster LLM inference
|
|
117
|
-
5. **Cost Savings**: Fewer tokens = lower API costs for cloud LLMs
|
|
118
|
-
|
|
119
70
|
## 🛠️Installation
|
|
120
71
|
|
|
121
72
|
### Prerequisites
|
|
@@ -133,23 +84,56 @@ state_tool(use_vision=True, use_dom=True)
|
|
|
133
84
|
npm install -g @anthropic-ai/mcpb
|
|
134
85
|
```
|
|
135
86
|
|
|
136
|
-
2. Clone the repository.
|
|
137
87
|
|
|
138
|
-
|
|
139
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
88
|
+
2. Configure the extension:
|
|
140
89
|
|
|
141
|
-
|
|
142
|
-
|
|
90
|
+
**Option A: Install from PyPI (Recommended)**
|
|
91
|
+
|
|
92
|
+
Use `uvx` to run the latest version directly from PyPI.
|
|
93
|
+
|
|
94
|
+
Add this to your `claude_desktop_config.json`:
|
|
95
|
+
```json
|
|
96
|
+
{
|
|
97
|
+
"mcpServers": {
|
|
98
|
+
"windows-mcp": {
|
|
99
|
+
"command": "uvx",
|
|
100
|
+
"args": [
|
|
101
|
+
"windows-mcp"
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
**Option B: Install from Source**
|
|
109
|
+
|
|
110
|
+
1. Clone the repository:
|
|
111
|
+
```shell
|
|
112
|
+
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
113
|
+
cd Windows-MCP
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
2. Add this to your `claude_desktop_config.json`:
|
|
117
|
+
```json
|
|
118
|
+
{
|
|
119
|
+
"mcpServers": {
|
|
120
|
+
"windows-mcp": {
|
|
121
|
+
"command": "uv",
|
|
122
|
+
"args": [
|
|
123
|
+
"--directory",
|
|
124
|
+
"<path to the windows-mcp directory>",
|
|
125
|
+
"run",
|
|
126
|
+
"windows-mcp"
|
|
127
|
+
]
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
```
|
|
143
132
|
|
|
144
|
-
3. Build Desktop Extension `MCPB`:
|
|
145
133
|
|
|
146
|
-
```shell
|
|
147
|
-
npx @anthropic-ai/mcpb pack
|
|
148
|
-
```
|
|
149
134
|
|
|
150
|
-
|
|
135
|
+
3. Open Claude Desktop and enjoy! 🥳
|
|
151
136
|
|
|
152
|
-
Go to `Settings->Extensions->Advance Settings->Install Extension` (locate the `.mcpb` file)-> Install
|
|
153
137
|
|
|
154
138
|
5. Enjoy 🥳.
|
|
155
139
|
|
|
@@ -175,17 +159,32 @@ Go to `Settings->Connectors->Add Connector->Advanced`
|
|
|
175
159
|
|
|
176
160
|
4. Enter the name as `Windows-MCP`, then paste the following JSON in the text area.
|
|
177
161
|
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
"
|
|
184
|
-
"
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
}
|
|
188
|
-
```
|
|
162
|
+
|
|
163
|
+
**Option A: Install from PyPI (Recommended)**
|
|
164
|
+
|
|
165
|
+
```json
|
|
166
|
+
{
|
|
167
|
+
"command": "uvx",
|
|
168
|
+
"args": [
|
|
169
|
+
"windows-mcp"
|
|
170
|
+
]
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
**Option B: Install from Source**
|
|
175
|
+
|
|
176
|
+
```json
|
|
177
|
+
{
|
|
178
|
+
"command": "uv",
|
|
179
|
+
"args": [
|
|
180
|
+
"--directory",
|
|
181
|
+
"<path to the windows-mcp directory>",
|
|
182
|
+
"run",
|
|
183
|
+
"windows-mcp"
|
|
184
|
+
]
|
|
185
|
+
}
|
|
186
|
+
```
|
|
187
|
+
|
|
189
188
|
|
|
190
189
|
5. Click `Save` and Enjoy 🥳.
|
|
191
190
|
|
|
@@ -201,13 +200,9 @@ For additional Claude Desktop integration troubleshooting, see the [Perplexity M
|
|
|
201
200
|
npm install -g @google/gemini-cli
|
|
202
201
|
```
|
|
203
202
|
|
|
204
|
-
2. Clone the repository.
|
|
205
203
|
|
|
206
|
-
|
|
207
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
204
|
+
2. Configure the server in `%USERPROFILE%/.gemini/settings.json`:
|
|
208
205
|
|
|
209
|
-
cd Windows-MCP
|
|
210
|
-
```
|
|
211
206
|
|
|
212
207
|
3. Navigate to `%USERPROFILE%/.gemini` in File Explorer and open `settings.json`.
|
|
213
208
|
|
|
@@ -220,17 +215,16 @@ cd Windows-MCP
|
|
|
220
215
|
//MCP Server Config
|
|
221
216
|
"mcpServers": {
|
|
222
217
|
"windows-mcp": {
|
|
223
|
-
"command": "
|
|
218
|
+
"command": "uvx",
|
|
224
219
|
"args": [
|
|
225
|
-
"
|
|
226
|
-
"<path to the windows-mcp directory>",
|
|
227
|
-
"run",
|
|
228
|
-
"main.py"
|
|
220
|
+
"windows-mcp"
|
|
229
221
|
]
|
|
230
222
|
}
|
|
231
223
|
}
|
|
232
224
|
}
|
|
233
225
|
```
|
|
226
|
+
*Note: To run from source, replace the command with `uv` and args with `["--directory", "<path>", "run", "windows-mcp"]`.*
|
|
227
|
+
|
|
234
228
|
|
|
235
229
|
5. Rerun Gemini CLI in terminal. Enjoy 🥳
|
|
236
230
|
</details>
|
|
@@ -242,13 +236,9 @@ cd Windows-MCP
|
|
|
242
236
|
```shell
|
|
243
237
|
npm install -g @qwen-code/qwen-code@latest
|
|
244
238
|
```
|
|
245
|
-
2. Clone the repository.
|
|
246
239
|
|
|
247
|
-
|
|
248
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
240
|
+
2. Configure the server in `%USERPROFILE%/.qwen/settings.json`:
|
|
249
241
|
|
|
250
|
-
cd Windows-MCP
|
|
251
|
-
```
|
|
252
242
|
|
|
253
243
|
3. Navigate to `%USERPROFILE%/.qwen/settings.json`.
|
|
254
244
|
|
|
@@ -259,17 +249,16 @@ cd Windows-MCP
|
|
|
259
249
|
//MCP Server Config
|
|
260
250
|
"mcpServers": {
|
|
261
251
|
"windows-mcp": {
|
|
262
|
-
"command": "
|
|
252
|
+
"command": "uvx",
|
|
263
253
|
"args": [
|
|
264
|
-
"
|
|
265
|
-
"<path to the windows-mcp directory>",
|
|
266
|
-
"run",
|
|
267
|
-
"main.py"
|
|
254
|
+
"windows-mcp"
|
|
268
255
|
]
|
|
269
256
|
}
|
|
270
257
|
}
|
|
271
258
|
}
|
|
272
259
|
```
|
|
260
|
+
*Note: To run from source, replace the command with `uv` and args with `["--directory", "<path>", "run", "windows-mcp"]`.*
|
|
261
|
+
|
|
273
262
|
|
|
274
263
|
5. Rerun Qwen Code in terminal. Enjoy 🥳
|
|
275
264
|
</details>
|
|
@@ -281,27 +270,22 @@ cd Windows-MCP
|
|
|
281
270
|
```shell
|
|
282
271
|
npm install -g @openai/codex
|
|
283
272
|
```
|
|
284
|
-
2. Clone the repository.
|
|
285
273
|
|
|
286
|
-
|
|
287
|
-
git clone https://github.com/CursorTouch/Windows-MCP.git
|
|
274
|
+
2. Configure the server in `%USERPROFILE%/.codex/config.toml`:
|
|
288
275
|
|
|
289
|
-
cd Windows-MCP
|
|
290
|
-
```
|
|
291
276
|
3. Navigate to `%USERPROFILE%/.codex/config.toml`.
|
|
292
277
|
|
|
293
278
|
4. Add the `windows-mcp` config in the `config.toml` and save it.
|
|
294
279
|
|
|
295
280
|
```toml
|
|
296
281
|
[mcp_servers.windows-mcp]
|
|
297
|
-
command="
|
|
282
|
+
command="uvx"
|
|
298
283
|
args=[
|
|
299
|
-
"
|
|
300
|
-
"<path to the windows-mcp directory>",
|
|
301
|
-
"run",
|
|
302
|
-
"main.py"
|
|
284
|
+
"windows-mcp"
|
|
303
285
|
]
|
|
304
286
|
```
|
|
287
|
+
*Note: To run from source, replace the command with `uv` and args with `["--directory", "<path>", "run", "windows-mcp"]`.*
|
|
288
|
+
|
|
305
289
|
|
|
306
290
|
5. Rerun Codex CLI in terminal. Enjoy 🥳
|
|
307
291
|
</details>
|
|
@@ -243,10 +243,10 @@ def wait_tool(duration:int)->str:
|
|
|
243
243
|
def scrape_tool(url:str)->str:
|
|
244
244
|
desktop_state=desktop.desktop_state
|
|
245
245
|
tree_state=desktop_state.tree_state
|
|
246
|
-
if not tree_state.
|
|
247
|
-
return f'
|
|
248
|
-
|
|
249
|
-
vertical_scroll_percent=
|
|
246
|
+
if not tree_state.dom_info:
|
|
247
|
+
return f'No DOM information found. Please open {url} in browser first.'
|
|
248
|
+
dom_info=tree_state.dom_info
|
|
249
|
+
vertical_scroll_percent=dom_info.vertical_scroll_percent
|
|
250
250
|
content='\n'.join([node.text for node in tree_state.dom_informative_nodes])
|
|
251
251
|
header_status = "Reached top" if vertical_scroll_percent <= 0 else "Scroll up to see more"
|
|
252
252
|
footer_status = "Reached bottom" if vertical_scroll_percent >= 100 else "Scroll down to see more"
|