@darbotlabs/darbot-browser-mcp 0.1.1 → 1.3.0
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.
- package/LICENSE +1 -1
- package/README.md +249 -158
- package/cli.js +1 -1
- package/config.d.ts +77 -1
- package/index.d.ts +1 -1
- package/index.js +1 -1
- package/lib/ai/context.js +150 -0
- package/lib/ai/guardrails.js +382 -0
- package/lib/ai/integration.js +397 -0
- package/lib/ai/intent.js +237 -0
- package/lib/ai/manualPromise.js +111 -0
- package/lib/ai/memory.js +273 -0
- package/lib/ai/ml-scorer.js +265 -0
- package/lib/ai/orchestrator-tools.js +292 -0
- package/lib/ai/orchestrator.js +473 -0
- package/lib/ai/planner.js +300 -0
- package/lib/ai/reporter.js +493 -0
- package/lib/ai/workflow.js +407 -0
- package/lib/auth/apiKeyAuth.js +46 -0
- package/lib/auth/entraAuth.js +110 -0
- package/lib/auth/entraJwtVerifier.js +117 -0
- package/lib/auth/index.js +210 -0
- package/lib/auth/managedIdentityAuth.js +175 -0
- package/lib/auth/mcpOAuthProvider.js +186 -0
- package/lib/auth/tunnelAuth.js +120 -0
- package/lib/browserContextFactory.js +1 -1
- package/lib/browserServer.js +1 -1
- package/lib/cdpRelay.js +2 -2
- package/lib/common.js +68 -0
- package/lib/config.js +62 -3
- package/lib/connection.js +1 -1
- package/lib/context.js +1 -1
- package/lib/fileUtils.js +1 -1
- package/lib/guardrails.js +382 -0
- package/lib/health.js +178 -0
- package/lib/httpServer.js +1 -1
- package/lib/index.js +1 -1
- package/lib/javascript.js +1 -1
- package/lib/manualPromise.js +1 -1
- package/lib/memory.js +273 -0
- package/lib/openapi.js +373 -0
- package/lib/orchestrator.js +473 -0
- package/lib/package.js +1 -1
- package/lib/pageSnapshot.js +17 -2
- package/lib/planner.js +302 -0
- package/lib/program.js +17 -5
- package/lib/reporter.js +493 -0
- package/lib/resources/resource.js +1 -1
- package/lib/server.js +5 -3
- package/lib/tab.js +1 -1
- package/lib/tools/ai-native.js +298 -0
- package/lib/tools/autonomous.js +147 -0
- package/lib/tools/clock.js +183 -0
- package/lib/tools/common.js +1 -1
- package/lib/tools/console.js +1 -1
- package/lib/tools/diagnostics.js +132 -0
- package/lib/tools/dialogs.js +1 -1
- package/lib/tools/emulation.js +155 -0
- package/lib/tools/files.js +1 -1
- package/lib/tools/install.js +1 -1
- package/lib/tools/keyboard.js +1 -1
- package/lib/tools/navigate.js +1 -1
- package/lib/tools/network.js +1 -1
- package/lib/tools/pageSnapshot.js +58 -0
- package/lib/tools/pdf.js +1 -1
- package/lib/tools/profiles.js +76 -25
- package/lib/tools/screenshot.js +1 -1
- package/lib/tools/scroll.js +93 -0
- package/lib/tools/snapshot.js +1 -1
- package/lib/tools/storage.js +328 -0
- package/lib/tools/tab.js +16 -0
- package/lib/tools/tabs.js +1 -1
- package/lib/tools/testing.js +1 -1
- package/lib/tools/tool.js +1 -1
- package/lib/tools/utils.js +1 -1
- package/lib/tools/vision.js +1 -1
- package/lib/tools/wait.js +1 -1
- package/lib/tools.js +22 -1
- package/lib/transport.js +251 -31
- package/package.json +54 -21
package/README.md
CHANGED
|
@@ -2,34 +2,39 @@
|
|
|
2
2
|
|
|
3
3
|

|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
**Your Autonomous Browser Companion**
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Darbot Browser is a framework for autonomous web automation. This tool enables AI models to interact with UI through structured accessibility snapshots, delivering autonomous browsing without requiring vision models. Optimized for Microsoft Edge with comprehensive session state support.
|
|
8
8
|
|
|
9
9
|
[](https://www.npmjs.com/package/@darbotlabs/darbot-browser-mcp)
|
|
10
10
|
[](https://www.npmjs.com/package/@darbotlabs/darbot-browser-mcp)
|
|
11
11
|
[](https://marketplace.visualstudio.com/items?itemName=darbotlabs.darbot-browser-mcp)
|
|
12
12
|
[](./LICENSE)
|
|
13
13
|
|
|
14
|
-
##
|
|
14
|
+
## Key Features
|
|
15
15
|
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
16
|
+
- **Fast and lightweight** - Uses accessibility tree, not pixel-based input
|
|
17
|
+
- **DarbotLM framework** - No vision models needed, operates purely on structured data
|
|
18
|
+
- **Deterministic** - Avoids ambiguity common with screenshot-based approaches
|
|
19
|
+
- **Session States** - Save and restore complete browser sessions with Edge profile context
|
|
20
|
+
- **52 Autonomous Tools** - Comprehensive autonomous browser capabilities
|
|
21
|
+
- **Autonomous Crawling** - BFS strategy with memory, guardrails, and reporting
|
|
22
|
+
- **DarbotLabsMemory System** - State tracking and deduplication with darbot-memory-mcp integration
|
|
23
|
+
- **HTML Reports** - Comprehensive crawl reports with screenshots and statistics
|
|
24
|
+
- **Multi-Platform** - Available as NPM package, VS Code extension, NuGet package, and browser extension
|
|
22
25
|
|
|
23
|
-
##
|
|
24
|
-
|
|
26
|
+
## Requirements
|
|
27
|
+
|
|
28
|
+
- **Node.js** 23 or newer
|
|
25
29
|
- **VS Code, Cursor, Windsurf, Claude Desktop** or any other MCP client
|
|
26
30
|
- **Microsoft Edge** (recommended) or Chrome/Firefox/WebKit
|
|
27
31
|
|
|
28
|
-
##
|
|
32
|
+
## Installation Options
|
|
29
33
|
|
|
30
34
|
Darbot Browser MCP is available in multiple package formats:
|
|
31
35
|
|
|
32
|
-
###
|
|
36
|
+
### NPM Package
|
|
37
|
+
|
|
33
38
|
```bash
|
|
34
39
|
# Install globally
|
|
35
40
|
npm install -g @darbotlabs/darbot-browser-mcp
|
|
@@ -38,36 +43,48 @@ npm install -g @darbotlabs/darbot-browser-mcp
|
|
|
38
43
|
npx @darbotlabs/darbot-browser-mcp@latest
|
|
39
44
|
```
|
|
40
45
|
|
|
41
|
-
###
|
|
46
|
+
### VS Code Extension
|
|
47
|
+
|
|
42
48
|
Install the **"Darbot Browser MCP"** extension from the VS Code marketplace or search for `darbotlabs.darbot-browser-mcp`.
|
|
43
49
|
|
|
44
|
-
|
|
50
|
+
The extension **automatically configures the MCP server** when installed - just enable MCP in VS Code settings and start the server!
|
|
51
|
+
|
|
52
|
+
[**Install VS Code Extension**](https://marketplace.visualstudio.com/items?itemName=darbotlabs.darbot-browser-mcp)
|
|
53
|
+
|
|
54
|
+
**Quick Setup:**
|
|
55
|
+
|
|
56
|
+
1. Install the extension from VS Code marketplace
|
|
57
|
+
2. The extension will automatically prompt you to enable MCP and configure the server
|
|
58
|
+
3. Use Command Palette: "Darbot Browser MCP: Start Server"
|
|
59
|
+
4. Start chatting with GitHub Copilot using browser automation tools!
|
|
60
|
+
|
|
61
|
+
### NuGet Package (.NET)
|
|
45
62
|
|
|
46
|
-
### 📚 NuGet Package (.NET)
|
|
47
63
|
```bash
|
|
48
64
|
# Install for .NET projects
|
|
49
65
|
dotnet add package DarbotLabs.Browser.MCP
|
|
50
66
|
```
|
|
51
67
|
|
|
52
|
-
###
|
|
68
|
+
### Browser Extension
|
|
69
|
+
|
|
53
70
|
Install the **Browser MCP Bridge** extension from the Chrome Web Store to share browser tabs with the MCP server.
|
|
54
71
|
|
|
55
72
|
---
|
|
56
73
|
|
|
57
|
-
##
|
|
74
|
+
## Why Choose Darbot Browser MCP?
|
|
58
75
|
|
|
59
|
-
| Traditional Browser Automation |
|
|
60
|
-
|
|
61
|
-
|
|
|
62
|
-
|
|
|
63
|
-
|
|
|
64
|
-
|
|
|
65
|
-
|
|
|
76
|
+
| Traditional Browser Automation | Darbot Browser MCP |
|
|
77
|
+
| ----------------------------- | -------------------- |
|
|
78
|
+
| ERROR Pixel-based, brittle selectors | AI-friendly accessibility snapshots |
|
|
79
|
+
| ERROR Requires vision models | Pure structured data approach |
|
|
80
|
+
| ERROR Complex setup and maintenance | Simple NPM install, ready in seconds |
|
|
81
|
+
| ERROR Browser-specific code | Universal MCP protocol |
|
|
82
|
+
| ERROR No session management | Advanced autonomous session states |
|
|
66
83
|
|
|
67
|
-
###
|
|
84
|
+
### Complete Autonomous Toolkit (52 Tools)
|
|
68
85
|
|
|
69
86
|
<details>
|
|
70
|
-
<summary><b
|
|
87
|
+
<summary><b> Core Autonomous Operations</b></summary>
|
|
71
88
|
|
|
72
89
|
- `browser_navigate` - Autonomously navigate to any URL
|
|
73
90
|
- `browser_click` - Autonomous intelligent element clicking
|
|
@@ -78,12 +95,22 @@ Install the **Browser MCP Bridge** extension from the Chrome Web Store to share
|
|
|
78
95
|
</details>
|
|
79
96
|
|
|
80
97
|
<details>
|
|
81
|
-
<summary><b
|
|
98
|
+
<summary><b>Autonomous Crawling & Intelligence</b></summary>
|
|
82
99
|
|
|
83
|
-
- `
|
|
84
|
-
- `
|
|
85
|
-
-
|
|
86
|
-
-
|
|
100
|
+
- `browser_start_autonomous_crawl` - Start intelligent BFS crawling with memory and reporting
|
|
101
|
+
- `browser_configure_memory` - Configure memory system with darbot-memory-mcp integration
|
|
102
|
+
- Built-in guardrail system for safe autonomous operation
|
|
103
|
+
- Comprehensive HTML reporting with screenshots and statistics
|
|
104
|
+
|
|
105
|
+
</details>
|
|
106
|
+
|
|
107
|
+
<details>
|
|
108
|
+
<summary><b>Autonomous Session State Management</b></summary>
|
|
109
|
+
|
|
110
|
+
- `browser_save_profile` - Save complete browser session states with Edge profile context
|
|
111
|
+
- `browser_switch_profile` - Restore saved session states
|
|
112
|
+
- `browser_list_profiles` - List all saved session states with Edge/workspace context
|
|
113
|
+
- `browser_delete_profile` - Delete session states from storage
|
|
87
114
|
|
|
88
115
|
</details>
|
|
89
116
|
|
|
@@ -97,7 +124,7 @@ Install the **Browser MCP Bridge** extension from the Chrome Web Store to share
|
|
|
97
124
|
</details>
|
|
98
125
|
|
|
99
126
|
<details>
|
|
100
|
-
<summary><b
|
|
127
|
+
<summary><b>️ Autonomous Tab Management</b></summary>
|
|
101
128
|
|
|
102
129
|
- `browser_tab_new` - Autonomously open new tabs
|
|
103
130
|
- `browser_tab_list` - Autonomously get all open tabs
|
|
@@ -107,7 +134,7 @@ Install the **Browser MCP Bridge** extension from the Chrome Web Store to share
|
|
|
107
134
|
</details>
|
|
108
135
|
|
|
109
136
|
<details>
|
|
110
|
-
<summary><b
|
|
137
|
+
<summary><b>Autonomous Testing & Development</b></summary>
|
|
111
138
|
|
|
112
139
|
- `browser_generate_playwright_test` - Autonomously auto-generate test code
|
|
113
140
|
- `browser_console_messages` - Autonomous debug with console access
|
|
@@ -115,16 +142,27 @@ Install the **Browser MCP Bridge** extension from the Chrome Web Store to share
|
|
|
115
142
|
|
|
116
143
|
</details>
|
|
117
144
|
|
|
118
|
-
[
|
|
145
|
+
[**View All 52 tools**](#tools)
|
|
119
146
|
|
|
120
147
|
<!--
|
|
121
148
|
// Generate using:
|
|
122
149
|
node utils/generate-links.js
|
|
123
150
|
-->
|
|
124
151
|
|
|
125
|
-
##
|
|
152
|
+
## Getting Started
|
|
153
|
+
|
|
154
|
+
The fastest way to get started is with the VS Code extension, which automatically configures everything for you. For other clients, you'll need to manually configure the MCP server.
|
|
126
155
|
|
|
127
|
-
|
|
156
|
+
### **VS Code (Automatic Setup)**
|
|
157
|
+
|
|
158
|
+
1. Install the [VS Code Extension](https://marketplace.visualstudio.com/items?itemName=darbotlabs.darbot-browser-mcp)
|
|
159
|
+
2. Extension auto-configures MCP settings
|
|
160
|
+
3. Start the server via Command Palette
|
|
161
|
+
4. Use with GitHub Copilot Chat!
|
|
162
|
+
|
|
163
|
+
### **Manual Configuration (Other Clients)**
|
|
164
|
+
|
|
165
|
+
For Claude Desktop, Cursor, Windsurf, etc., add this configuration:
|
|
128
166
|
|
|
129
167
|
```js
|
|
130
168
|
{
|
|
@@ -139,14 +177,26 @@ First, install the Browser MCP server with your client. A typical configuration
|
|
|
139
177
|
}
|
|
140
178
|
```
|
|
141
179
|
|
|
142
|
-
###
|
|
180
|
+
### Quick Install Buttons
|
|
181
|
+
|
|
182
|
+
**VS Code (Automatic):**
|
|
183
|
+
[<img src="https://img.shields.io/badge/VS_Code-Auto_Install_Extension-0098FF?style=for-the-badge&logo=visual-studio-code" alt="Install VS Code Extension">](https://marketplace.visualstudio.com/items?itemName=darbotlabs.darbot-browser-mcp)
|
|
184
|
+
|
|
185
|
+
**Manual Configuration:**
|
|
186
|
+
[<img src="https://img.shields.io/badge/VS_Code-Manual_Server_Config-0098FF?style=for-the-badge&logo=visual-studio-code" alt="Install in VS Code">](https://insiders.vscode.dev/redirect?url=vscode%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522browser%2522%252C%2522command%2522%253A%2522npx%2522%252C%2522args%2522%253A%255B%2522%2540darbotlabs%252Fdarbot-browser-mcp%2540latest%2522%255D%257D) [<img src="https://img.shields.io/badge/VS_Code_Insiders-Manual_Server_Config-24bfa5?style=for-the-badge&logo=visual-studio-code" alt="Install in VS Code Insiders">](https://insiders.vscode.dev/redirect?url=vscode-insiders%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522browser%2522%252C%2522command%2522%253A%2522npx%2522%252C%2522args%2522%253A%255B%2522%2540darbotlabs%252Fdarbot-browser-mcp%2540latest%2522%255D%257D)
|
|
143
187
|
|
|
144
|
-
|
|
188
|
+
<details><summary><b>Install in VS Code (Automatic Setup)</b></summary>
|
|
145
189
|
|
|
190
|
+
**Recommended: Use the VS Code Extension for automatic setup!**
|
|
146
191
|
|
|
147
|
-
|
|
192
|
+
The [Darbot Browser MCP Extension](https://marketplace.visualstudio.com/items?itemName=darbotlabs.darbot-browser-mcp) automatically handles all configuration:
|
|
148
193
|
|
|
149
|
-
|
|
194
|
+
1. **Install from marketplace**: Search "Darbot Browser MCP" in VS Code extensions
|
|
195
|
+
2. **Auto-configuration**: Extension prompts to enable MCP and configures the server
|
|
196
|
+
3. **Start & Use**: Use Command Palette → "Darbot Browser MCP: Start Server"
|
|
197
|
+
4. **Chat with Copilot**: Ask GitHub Copilot to "browse to example.com"
|
|
198
|
+
|
|
199
|
+
**Manual CLI installation (if you prefer):**
|
|
150
200
|
|
|
151
201
|
```bash
|
|
152
202
|
# For VS Code
|
|
@@ -179,6 +229,7 @@ Go to `Cursor Settings` -> `MCP` -> `Add new MCP Server`. Name to your liking, u
|
|
|
179
229
|
}
|
|
180
230
|
}
|
|
181
231
|
```
|
|
232
|
+
|
|
182
233
|
</details>
|
|
183
234
|
|
|
184
235
|
<details>
|
|
@@ -198,6 +249,7 @@ Follow Windsuff MCP [documentation](https://docs.windsurf.com/windsurf/cascade/m
|
|
|
198
249
|
}
|
|
199
250
|
}
|
|
200
251
|
```
|
|
252
|
+
|
|
201
253
|
</details>
|
|
202
254
|
|
|
203
255
|
<details>
|
|
@@ -217,6 +269,7 @@ Follow the MCP install [guide](https://modelcontextprotocol.io/quickstart/user),
|
|
|
217
269
|
}
|
|
218
270
|
}
|
|
219
271
|
```
|
|
272
|
+
|
|
220
273
|
</details>
|
|
221
274
|
|
|
222
275
|
<details>
|
|
@@ -227,6 +280,7 @@ Use the Claude Code CLI to add the Browser MCP server:
|
|
|
227
280
|
```bash
|
|
228
281
|
claude mcp add browser npx @darbotlabs/darbot-browser-mcp@latest
|
|
229
282
|
```
|
|
283
|
+
|
|
230
284
|
</details>
|
|
231
285
|
|
|
232
286
|
<details>
|
|
@@ -258,53 +312,69 @@ Browser MCP server supports following arguments. They can be provided in the JSO
|
|
|
258
312
|
|
|
259
313
|
```
|
|
260
314
|
> npx darbot-browser-mcp@latest --help
|
|
261
|
-
--allowed-origins <origins>
|
|
262
|
-
|
|
263
|
-
--blocked-origins <origins>
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
--block-service-workers
|
|
269
|
-
--browser <browser>
|
|
270
|
-
|
|
271
|
-
--browser-agent <endpoint>
|
|
272
|
-
--caps <caps>
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
--cdp-endpoint <endpoint>
|
|
276
|
-
--config <path>
|
|
277
|
-
--device <device>
|
|
278
|
-
--executable-path <path>
|
|
279
|
-
--headless
|
|
280
|
-
--host <host>
|
|
281
|
-
|
|
282
|
-
--ignore-https-errors
|
|
283
|
-
--isolated
|
|
284
|
-
|
|
285
|
-
--image-responses <mode>
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
--no-sandbox
|
|
290
|
-
|
|
291
|
-
--output-dir <path>
|
|
292
|
-
--port <port>
|
|
293
|
-
--proxy-bypass <bypass>
|
|
294
|
-
|
|
295
|
-
--proxy-server <proxy>
|
|
296
|
-
|
|
297
|
-
--save-trace
|
|
298
|
-
|
|
299
|
-
--storage-state <path>
|
|
300
|
-
|
|
301
|
-
--user-agent <ua string>
|
|
302
|
-
--user-data-dir <path>
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
315
|
+
--allowed-origins <origins> semicolon-separated list of origins to allow the
|
|
316
|
+
browser to request. Default is to allow all.
|
|
317
|
+
--blocked-origins <origins> semicolon-separated list of origins to block the
|
|
318
|
+
browser from requesting. Blocklist is evaluated
|
|
319
|
+
before allowlist. If used without the allowlist,
|
|
320
|
+
requests not matching the blocklist are still
|
|
321
|
+
allowed.
|
|
322
|
+
--block-service-workers block service workers
|
|
323
|
+
--browser <browser> browser or chrome channel to use, possible
|
|
324
|
+
values: msedge, chrome, firefox, webkit.
|
|
325
|
+
--browser-agent <endpoint> Use browser agent (experimental).
|
|
326
|
+
--caps <caps> comma-separated list of capabilities to enable,
|
|
327
|
+
possible values: tabs, pdf, history, wait,
|
|
328
|
+
files, install. Default is all.
|
|
329
|
+
--cdp-endpoint <endpoint> CDP endpoint to connect to.
|
|
330
|
+
--config <path> path to the configuration file.
|
|
331
|
+
--device <device> device to emulate, for example: "iPhone 15"
|
|
332
|
+
--executable-path <path> path to the browser executable.
|
|
333
|
+
--headless run browser in headless mode, headed by default
|
|
334
|
+
--host <host> host to bind server to. Default is localhost.
|
|
335
|
+
Use 0.0.0.0 to bind to all interfaces.
|
|
336
|
+
--ignore-https-errors ignore https errors
|
|
337
|
+
--isolated keep the browser profile in memory, do not save
|
|
338
|
+
it to disk.
|
|
339
|
+
--image-responses <mode> whether to send image responses to the client.
|
|
340
|
+
Can be "allow", "omit", or "auto". Defaults to
|
|
341
|
+
"auto", which sends images if the client can
|
|
342
|
+
display them.
|
|
343
|
+
--no-sandbox disable the sandbox for all process types that
|
|
344
|
+
are normally sandboxed.
|
|
345
|
+
--output-dir <path> path to the directory for output files.
|
|
346
|
+
--port <port> port to listen on for SSE transport.
|
|
347
|
+
--proxy-bypass <bypass> comma-separated domains to bypass proxy, for
|
|
348
|
+
example ".com,chromium.org,.domain.com"
|
|
349
|
+
--proxy-server <proxy> specify proxy server, for example
|
|
350
|
+
"http://myproxy:3128" or "socks5://myproxy:8080"
|
|
351
|
+
--save-trace Whether to save the Playwright Trace of the
|
|
352
|
+
session into the output directory.
|
|
353
|
+
--storage-state <path> path to the storage state file for isolated
|
|
354
|
+
sessions.
|
|
355
|
+
--user-agent <ua string> specify user agent string
|
|
356
|
+
--user-data-dir <path> path to the user data directory. If not
|
|
357
|
+
specified, a temporary directory will be
|
|
358
|
+
created.
|
|
359
|
+
--viewport-size <size> specify browser viewport size in pixels, for
|
|
360
|
+
example "1280, 720"
|
|
361
|
+
--vision Run server that uses screenshots (Aria snapshots
|
|
362
|
+
are used by default)
|
|
363
|
+
--edge-profile <name> Edge profile name to use (e.g., "Profile 1",
|
|
364
|
+
"Default"). This is recorded in saved session
|
|
365
|
+
states.
|
|
366
|
+
--edge-profile-email <email> Email associated with the Edge profile. This is
|
|
367
|
+
recorded in saved session states for context.
|
|
368
|
+
--auto-sign-in Auto sign in with work/school account (Edge
|
|
369
|
+
profile preference)
|
|
370
|
+
--profile-switching Enable automatic profile switching based on site
|
|
371
|
+
(Edge profile preference)
|
|
372
|
+
--intranet-switch Automatically switch to work profile for
|
|
373
|
+
intranet sites (Edge profile preference)
|
|
374
|
+
--ie-mode-switch Automatically switch profile for IE mode sites
|
|
375
|
+
(Edge profile preference)
|
|
376
|
+
--default-profile <name> Default Edge profile for external links (Edge
|
|
377
|
+
profile preference)
|
|
308
378
|
```
|
|
309
379
|
|
|
310
380
|
<!--- End of options generated section -->
|
|
@@ -438,6 +508,7 @@ npx @darbotlabs/darbot-browser-mcp@latest --config path/to/config.json
|
|
|
438
508
|
noImageResponses?: boolean;
|
|
439
509
|
}
|
|
440
510
|
```
|
|
511
|
+
|
|
441
512
|
</details>
|
|
442
513
|
|
|
443
514
|
### Standalone MCP server
|
|
@@ -449,13 +520,13 @@ run the MCP server from environment with the DISPLAY and pass the `--port` flag
|
|
|
449
520
|
npx @darbotlabs/darbot-browser-mcp@latest --port 8931
|
|
450
521
|
```
|
|
451
522
|
|
|
452
|
-
And then in MCP client config, set the `url` to the
|
|
523
|
+
And then in MCP client config, set the `url` to the MCP endpoint:
|
|
453
524
|
|
|
454
525
|
```js
|
|
455
526
|
{
|
|
456
527
|
"mcpServers": {
|
|
457
528
|
"playwright": {
|
|
458
|
-
"url": "http://localhost:8931/
|
|
529
|
+
"url": "http://localhost:8931/mcp"
|
|
459
530
|
}
|
|
460
531
|
}
|
|
461
532
|
}
|
|
@@ -482,6 +553,7 @@ You can build the Docker image yourself.
|
|
|
482
553
|
```
|
|
483
554
|
docker build -t mcr.microsoft.com/playwright/mcp .
|
|
484
555
|
```
|
|
556
|
+
|
|
485
557
|
</details>
|
|
486
558
|
|
|
487
559
|
<details>
|
|
@@ -504,6 +576,7 @@ http.createServer(async (req, res) => {
|
|
|
504
576
|
// ...
|
|
505
577
|
});
|
|
506
578
|
```
|
|
579
|
+
|
|
507
580
|
</details>
|
|
508
581
|
|
|
509
582
|
### Tools
|
|
@@ -540,26 +613,27 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
540
613
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
541
614
|
|
|
542
615
|
- **browser_snapshot**
|
|
543
|
-
- Title:
|
|
544
|
-
- Description:
|
|
616
|
+
- Title: Autonomous page snapshot
|
|
617
|
+
- Description: Autonomously capture a detailed accessibility snapshot of the current page for analysis. This provides structured page content better than a screenshot.
|
|
545
618
|
- Parameters: None
|
|
546
619
|
- Read-only: **true**
|
|
547
620
|
|
|
548
621
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
549
622
|
|
|
550
623
|
- **browser_click**
|
|
551
|
-
- Title:
|
|
552
|
-
- Description:
|
|
624
|
+
- Title: Autonomous click
|
|
625
|
+
- Description: Autonomously perform click interactions on web page elements
|
|
553
626
|
- Parameters:
|
|
554
627
|
- `element` (string): Human-readable element description used to obtain permission to interact with the element
|
|
555
628
|
- `ref` (string): Exact target element reference from the page snapshot
|
|
629
|
+
- `doubleClick` (boolean, optional): Whether to perform a double click instead of a single click
|
|
556
630
|
- Read-only: **false**
|
|
557
631
|
|
|
558
632
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
559
633
|
|
|
560
634
|
- **browser_drag**
|
|
561
|
-
- Title:
|
|
562
|
-
- Description:
|
|
635
|
+
- Title: Autonomous drag & drop
|
|
636
|
+
- Description: Autonomously perform drag and drop operations between web page elements
|
|
563
637
|
- Parameters:
|
|
564
638
|
- `startElement` (string): Human-readable source element description used to obtain the permission to interact with the element
|
|
565
639
|
- `startRef` (string): Exact source element reference from the page snapshot
|
|
@@ -570,8 +644,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
570
644
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
571
645
|
|
|
572
646
|
- **browser_hover**
|
|
573
|
-
- Title:
|
|
574
|
-
- Description:
|
|
647
|
+
- Title: Autonomous hover
|
|
648
|
+
- Description: Autonomously hover over specific elements on the web page
|
|
575
649
|
- Parameters:
|
|
576
650
|
- `element` (string): Human-readable element description used to obtain permission to interact with the element
|
|
577
651
|
- `ref` (string): Exact target element reference from the page snapshot
|
|
@@ -580,8 +654,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
580
654
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
581
655
|
|
|
582
656
|
- **browser_type**
|
|
583
|
-
- Title:
|
|
584
|
-
- Description:
|
|
657
|
+
- Title: Autonomous text input
|
|
658
|
+
- Description: Autonomously type text into editable elements on the web page
|
|
585
659
|
- Parameters:
|
|
586
660
|
- `element` (string): Human-readable element description used to obtain permission to interact with the element
|
|
587
661
|
- `ref` (string): Exact target element reference from the page snapshot
|
|
@@ -593,8 +667,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
593
667
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
594
668
|
|
|
595
669
|
- **browser_select_option**
|
|
596
|
-
- Title:
|
|
597
|
-
- Description:
|
|
670
|
+
- Title: Autonomous dropdown selection
|
|
671
|
+
- Description: Autonomously select options in dropdown menus on the web page
|
|
598
672
|
- Parameters:
|
|
599
673
|
- `element` (string): Human-readable element description used to obtain permission to interact with the element
|
|
600
674
|
- `ref` (string): Exact target element reference from the page snapshot
|
|
@@ -604,8 +678,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
604
678
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
605
679
|
|
|
606
680
|
- **browser_press_key**
|
|
607
|
-
- Title:
|
|
608
|
-
- Description:
|
|
681
|
+
- Title: Autonomous keyboard input
|
|
682
|
+
- Description: Autonomously press keys on the keyboard to interact with the web page
|
|
609
683
|
- Parameters:
|
|
610
684
|
- `key` (string): Name of the key to press or a character to generate, such as `ArrowLeft` or `a`
|
|
611
685
|
- Read-only: **false**
|
|
@@ -613,8 +687,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
613
687
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
614
688
|
|
|
615
689
|
- **browser_wait_for**
|
|
616
|
-
- Title:
|
|
617
|
-
- Description:
|
|
690
|
+
- Title: Autonomous wait conditions
|
|
691
|
+
- Description: Autonomously wait for specific conditions: text appearance, text disappearance, or time duration
|
|
618
692
|
- Parameters:
|
|
619
693
|
- `time` (number, optional): The time to wait in seconds
|
|
620
694
|
- `text` (string, optional): The text to wait for
|
|
@@ -624,8 +698,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
624
698
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
625
699
|
|
|
626
700
|
- **browser_file_upload**
|
|
627
|
-
- Title:
|
|
628
|
-
- Description:
|
|
701
|
+
- Title: Autonomous file upload
|
|
702
|
+
- Description: Autonomously upload one or multiple files when a file chooser dialog appears
|
|
629
703
|
- Parameters:
|
|
630
704
|
- `paths` (array): The absolute paths to the files to upload. Can be a single file or multiple files.
|
|
631
705
|
- Read-only: **false**
|
|
@@ -633,8 +707,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
633
707
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
634
708
|
|
|
635
709
|
- **browser_handle_dialog**
|
|
636
|
-
- Title:
|
|
637
|
-
- Description:
|
|
710
|
+
- Title: Autonomous dialog handling
|
|
711
|
+
- Description: Autonomously handle browser dialog boxes (alerts, confirmations, prompts)
|
|
638
712
|
- Parameters:
|
|
639
713
|
- `accept` (boolean): Whether to accept the dialog.
|
|
640
714
|
- `promptText` (string, optional): The text of the prompt in case of a prompt dialog.
|
|
@@ -649,7 +723,7 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
649
723
|
|
|
650
724
|
- **browser_navigate**
|
|
651
725
|
- Title: Navigate to a URL
|
|
652
|
-
- Description:
|
|
726
|
+
- Description: Autonomously navigate the browser to any URL. Use this command to launch and direct the browser to websites.
|
|
653
727
|
- Parameters:
|
|
654
728
|
- `url` (string): The URL to navigate to
|
|
655
729
|
- Read-only: **false**
|
|
@@ -658,7 +732,7 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
658
732
|
|
|
659
733
|
- **browser_navigate_back**
|
|
660
734
|
- Title: Go back
|
|
661
|
-
- Description:
|
|
735
|
+
- Description: Autonomously navigate back to the previous page in browser history
|
|
662
736
|
- Parameters: None
|
|
663
737
|
- Read-only: **true**
|
|
664
738
|
|
|
@@ -666,7 +740,7 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
666
740
|
|
|
667
741
|
- **browser_navigate_forward**
|
|
668
742
|
- Title: Go forward
|
|
669
|
-
- Description:
|
|
743
|
+
- Description: Autonomously navigate forward to the next page in browser history
|
|
670
744
|
- Parameters: None
|
|
671
745
|
- Read-only: **true**
|
|
672
746
|
|
|
@@ -678,8 +752,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
678
752
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
679
753
|
|
|
680
754
|
- **browser_take_screenshot**
|
|
681
|
-
- Title:
|
|
682
|
-
- Description:
|
|
755
|
+
- Title: Autonomous screenshot capture
|
|
756
|
+
- Description: Autonomously take visual screenshots of the current page or specific elements. Use browser_snapshot for structured page data instead of visual screenshots.
|
|
683
757
|
- Parameters:
|
|
684
758
|
- `raw` (boolean, optional): Whether to return without compression (in PNG format). Default is false, which returns a JPEG image.
|
|
685
759
|
- `filename` (string, optional): File name to save the screenshot to. Defaults to `page-{timestamp}.{png|jpeg}` if not specified.
|
|
@@ -690,8 +764,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
690
764
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
691
765
|
|
|
692
766
|
- **browser_pdf_save**
|
|
693
|
-
- Title:
|
|
694
|
-
- Description:
|
|
767
|
+
- Title: Autonomous PDF generation
|
|
768
|
+
- Description: Autonomously save the current web page as a PDF document for archival or sharing
|
|
695
769
|
- Parameters:
|
|
696
770
|
- `filename` (string, optional): File name to save the pdf to. Defaults to `page-{timestamp}.pdf` if not specified.
|
|
697
771
|
- Read-only: **true**
|
|
@@ -699,16 +773,16 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
699
773
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
700
774
|
|
|
701
775
|
- **browser_network_requests**
|
|
702
|
-
- Title:
|
|
703
|
-
- Description:
|
|
776
|
+
- Title: Autonomous network monitoring
|
|
777
|
+
- Description: Autonomously capture and analyze all network requests made since page load for debugging
|
|
704
778
|
- Parameters: None
|
|
705
779
|
- Read-only: **true**
|
|
706
780
|
|
|
707
781
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
708
782
|
|
|
709
783
|
- **browser_console_messages**
|
|
710
|
-
- Title:
|
|
711
|
-
- Description:
|
|
784
|
+
- Title: Autonomous console monitoring
|
|
785
|
+
- Description: Autonomously retrieve all browser console messages for debugging and analysis
|
|
712
786
|
- Parameters: None
|
|
713
787
|
- Read-only: **true**
|
|
714
788
|
|
|
@@ -720,24 +794,24 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
720
794
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
721
795
|
|
|
722
796
|
- **browser_install**
|
|
723
|
-
- Title:
|
|
724
|
-
- Description:
|
|
797
|
+
- Title: Autonomous browser installation
|
|
798
|
+
- Description: Autonomously install the required browser engine specified in configuration. Use this to resolve browser installation errors.
|
|
725
799
|
- Parameters: None
|
|
726
800
|
- Read-only: **false**
|
|
727
801
|
|
|
728
802
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
729
803
|
|
|
730
804
|
- **browser_close**
|
|
731
|
-
- Title:
|
|
732
|
-
- Description:
|
|
805
|
+
- Title: Autonomous browser closure
|
|
806
|
+
- Description: Autonomously close the browser session and terminate all operations
|
|
733
807
|
- Parameters: None
|
|
734
808
|
- Read-only: **true**
|
|
735
809
|
|
|
736
810
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
737
811
|
|
|
738
812
|
- **browser_resize**
|
|
739
|
-
- Title:
|
|
740
|
-
- Description:
|
|
813
|
+
- Title: Autonomous window resizing
|
|
814
|
+
- Description: Autonomously resize the browser window to specific dimensions for optimal viewing
|
|
741
815
|
- Parameters:
|
|
742
816
|
- `width` (number): Width of the browser window
|
|
743
817
|
- `height` (number): Height of the browser window
|
|
@@ -751,16 +825,16 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
751
825
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
752
826
|
|
|
753
827
|
- **browser_tab_list**
|
|
754
|
-
- Title:
|
|
755
|
-
- Description:
|
|
828
|
+
- Title: Autonomous tab listing
|
|
829
|
+
- Description: Autonomously list all open browser tabs and their current status
|
|
756
830
|
- Parameters: None
|
|
757
831
|
- Read-only: **true**
|
|
758
832
|
|
|
759
833
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
760
834
|
|
|
761
835
|
- **browser_tab_new**
|
|
762
|
-
- Title:
|
|
763
|
-
- Description:
|
|
836
|
+
- Title: Autonomous new tab creation
|
|
837
|
+
- Description: Autonomously open a new browser tab, optionally navigating to a specified URL
|
|
764
838
|
- Parameters:
|
|
765
839
|
- `url` (string, optional): The URL to navigate to in the new tab. If not provided, the new tab will be blank.
|
|
766
840
|
- Read-only: **true**
|
|
@@ -768,8 +842,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
768
842
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
769
843
|
|
|
770
844
|
- **browser_tab_select**
|
|
771
|
-
- Title:
|
|
772
|
-
- Description:
|
|
845
|
+
- Title: Autonomous tab selection
|
|
846
|
+
- Description: Autonomously select and switch to a specific browser tab by index
|
|
773
847
|
- Parameters:
|
|
774
848
|
- `index` (number): The index of the tab to select
|
|
775
849
|
- Read-only: **true**
|
|
@@ -777,8 +851,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
777
851
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
778
852
|
|
|
779
853
|
- **browser_tab_close**
|
|
780
|
-
- Title:
|
|
781
|
-
- Description:
|
|
854
|
+
- Title: Autonomous tab closure
|
|
855
|
+
- Description: Autonomously close a browser tab by index, or close the current tab if no index specified
|
|
782
856
|
- Parameters:
|
|
783
857
|
- `index` (number, optional): The index of the tab to close. Closes current tab if not provided.
|
|
784
858
|
- Read-only: **false**
|
|
@@ -786,42 +860,42 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
786
860
|
</details>
|
|
787
861
|
|
|
788
862
|
<details>
|
|
789
|
-
<summary><b>
|
|
863
|
+
<summary><b>Session States</b></summary>
|
|
790
864
|
|
|
791
865
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
792
866
|
|
|
793
867
|
- **browser_save_profile**
|
|
794
|
-
- Title: Save
|
|
795
|
-
- Description: Save the current browser state
|
|
868
|
+
- Title: Save session state
|
|
869
|
+
- Description: Save the current browser session state (cookies, localStorage, URL) for later restoration. Includes Edge profile and VS Code workspace context.
|
|
796
870
|
- Parameters:
|
|
797
|
-
- `name` (string): Name for the
|
|
798
|
-
- `description` (string, optional): Optional description for the
|
|
871
|
+
- `name` (string): Name for the session state
|
|
872
|
+
- `description` (string, optional): Optional description for the session state
|
|
799
873
|
- Read-only: **false**
|
|
800
874
|
|
|
801
875
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
802
876
|
|
|
803
877
|
- **browser_switch_profile**
|
|
804
|
-
- Title:
|
|
805
|
-
- Description:
|
|
878
|
+
- Title: Restore session state
|
|
879
|
+
- Description: Restore a previously saved session state, including cookies, localStorage, and navigate to the saved URL
|
|
806
880
|
- Parameters:
|
|
807
|
-
- `name` (string): Name of the
|
|
881
|
+
- `name` (string): Name of the session state to restore
|
|
808
882
|
- Read-only: **false**
|
|
809
883
|
|
|
810
884
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
811
885
|
|
|
812
886
|
- **browser_list_profiles**
|
|
813
|
-
- Title: List
|
|
814
|
-
- Description: List all saved
|
|
887
|
+
- Title: List session states
|
|
888
|
+
- Description: List all saved Darbot session states with their Edge profile context and workspace information
|
|
815
889
|
- Parameters: None
|
|
816
890
|
- Read-only: **true**
|
|
817
891
|
|
|
818
892
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
819
893
|
|
|
820
894
|
- **browser_delete_profile**
|
|
821
|
-
- Title: Delete
|
|
822
|
-
- Description:
|
|
895
|
+
- Title: Delete session state
|
|
896
|
+
- Description: Permanently delete a saved session state from storage
|
|
823
897
|
- Parameters:
|
|
824
|
-
- `name` (string): Name of the
|
|
898
|
+
- `name` (string): Name of the session state to delete
|
|
825
899
|
- Read-only: **false**
|
|
826
900
|
|
|
827
901
|
</details>
|
|
@@ -832,8 +906,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
832
906
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
833
907
|
|
|
834
908
|
- **browser_generate_playwright_test**
|
|
835
|
-
- Title:
|
|
836
|
-
- Description:
|
|
909
|
+
- Title: Autonomous test generation
|
|
910
|
+
- Description: Autonomously generate Playwright test code for browser automation scenarios and user workflows
|
|
837
911
|
- Parameters:
|
|
838
912
|
- `name` (string): The name of the test
|
|
839
913
|
- `description` (string): The description of the test
|
|
@@ -901,8 +975,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
901
975
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
902
976
|
|
|
903
977
|
- **browser_press_key**
|
|
904
|
-
- Title:
|
|
905
|
-
- Description:
|
|
978
|
+
- Title: Autonomous keyboard input
|
|
979
|
+
- Description: Autonomously press keys on the keyboard to interact with the web page
|
|
906
980
|
- Parameters:
|
|
907
981
|
- `key` (string): Name of the key to press or a character to generate, such as `ArrowLeft` or `a`
|
|
908
982
|
- Read-only: **false**
|
|
@@ -910,8 +984,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
910
984
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
911
985
|
|
|
912
986
|
- **browser_wait_for**
|
|
913
|
-
- Title:
|
|
914
|
-
- Description:
|
|
987
|
+
- Title: Autonomous wait conditions
|
|
988
|
+
- Description: Autonomously wait for specific conditions: text appearance, text disappearance, or time duration
|
|
915
989
|
- Parameters:
|
|
916
990
|
- `time` (number, optional): The time to wait in seconds
|
|
917
991
|
- `text` (string, optional): The text to wait for
|
|
@@ -921,8 +995,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
921
995
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
922
996
|
|
|
923
997
|
- **browser_file_upload**
|
|
924
|
-
- Title:
|
|
925
|
-
- Description:
|
|
998
|
+
- Title: Autonomous file upload
|
|
999
|
+
- Description: Autonomously upload one or multiple files when a file chooser dialog appears
|
|
926
1000
|
- Parameters:
|
|
927
1001
|
- `paths` (array): The absolute paths to the files to upload. Can be a single file or multiple files.
|
|
928
1002
|
- Read-only: **false**
|
|
@@ -930,8 +1004,8 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
930
1004
|
<!-- NOTE: This has been generated via update-readme.js -->
|
|
931
1005
|
|
|
932
1006
|
- **browser_handle_dialog**
|
|
933
|
-
- Title:
|
|
934
|
-
- Description:
|
|
1007
|
+
- Title: Autonomous dialog handling
|
|
1008
|
+
- Description: Autonomously handle browser dialog boxes (alerts, confirmations, prompts)
|
|
935
1009
|
- Parameters:
|
|
936
1010
|
- `accept` (boolean): Whether to accept the dialog.
|
|
937
1011
|
- `promptText` (string, optional): The text of the prompt in case of a prompt dialog.
|
|
@@ -945,29 +1019,46 @@ X Y coordinate space, based on the provided screenshot.
|
|
|
945
1019
|
## Package Formats
|
|
946
1020
|
|
|
947
1021
|
### NPM Package
|
|
1022
|
+
|
|
948
1023
|
- **Name**: `@darbotlabs/darbot-browser-mcp`
|
|
949
1024
|
- **Installation**: `npm install -g @darbotlabs/darbot-browser-mcp`
|
|
950
1025
|
- **Usage**: `npx @darbotlabs/darbot-browser-mcp@latest`
|
|
951
1026
|
|
|
952
1027
|
### VS Code Extension
|
|
1028
|
+
|
|
953
1029
|
- **Name**: Darbot Browser MCP
|
|
954
1030
|
- **Publisher**: darbotlabs
|
|
955
1031
|
- **Installation**: Search for "Darbot Browser MCP" in VS Code Extensions marketplace
|
|
956
1032
|
- **Features**: Start/stop MCP server, status monitoring, configuration management
|
|
957
1033
|
|
|
958
1034
|
### NuGet Package (.NET)
|
|
1035
|
+
|
|
959
1036
|
- **Name**: `DarbotLabs.Browser.MCP`
|
|
960
1037
|
- **Installation**: `dotnet add package DarbotLabs.Browser.MCP`
|
|
961
1038
|
- **Usage**: Host the Browser MCP server in .NET applications
|
|
962
1039
|
|
|
963
1040
|
### Browser Extension
|
|
1041
|
+
|
|
964
1042
|
- **Name**: Browser MCP Bridge
|
|
965
1043
|
- **Installation**: Available in Chrome Web Store (coming soon)
|
|
966
1044
|
- **Features**: Share browser tabs with MCP server via CDP bridge
|
|
967
1045
|
|
|
968
1046
|
## Repository Structure
|
|
1047
|
+
|
|
969
1048
|
- `/vscode-extension/` - VS Code extension source
|
|
970
1049
|
- `/dotnet/` - .NET NuGet package source
|
|
971
1050
|
- `/extension/` - Browser extension source
|
|
972
1051
|
- `/src/` - Main MCP server source code
|
|
973
1052
|
- `/tests/` - Test suite
|
|
1053
|
+
|
|
1054
|
+
## Autonomous Features
|
|
1055
|
+
|
|
1056
|
+
For detailed information about the autonomous crawling capabilities, including memory system, BFS planner, guardrails, and reporting, see [AUTONOMOUS_FEATURES.md](./AUTONOMOUS_FEATURES.md).
|
|
1057
|
+
|
|
1058
|
+
**Key Autonomous Capabilities:**
|
|
1059
|
+
|
|
1060
|
+
- Intelligent BFS crawling with memory and state tracking
|
|
1061
|
+
- Darbot-memory-mcp integration for persistent memory
|
|
1062
|
+
- HTML report generation with screenshots and statistics
|
|
1063
|
+
- Configurable domain filtering and safety policies
|
|
1064
|
+
|