cbrowser 7.4.1 → 7.4.3

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.
Files changed (107) hide show
  1. package/README.md +156 -45
  2. package/dist/analysis/bug-hunter.d.ts +0 -0
  3. package/dist/analysis/bug-hunter.d.ts.map +0 -0
  4. package/dist/analysis/bug-hunter.js +0 -0
  5. package/dist/analysis/bug-hunter.js.map +0 -0
  6. package/dist/analysis/chaos-testing.d.ts +0 -0
  7. package/dist/analysis/chaos-testing.d.ts.map +0 -0
  8. package/dist/analysis/chaos-testing.js +0 -0
  9. package/dist/analysis/chaos-testing.js.map +0 -0
  10. package/dist/analysis/index.d.ts +0 -0
  11. package/dist/analysis/index.d.ts.map +0 -0
  12. package/dist/analysis/index.js +0 -0
  13. package/dist/analysis/index.js.map +0 -0
  14. package/dist/analysis/natural-language.d.ts +0 -0
  15. package/dist/analysis/natural-language.d.ts.map +0 -0
  16. package/dist/analysis/natural-language.js +0 -0
  17. package/dist/analysis/natural-language.js.map +0 -0
  18. package/dist/analysis/persona-comparison.d.ts +0 -0
  19. package/dist/analysis/persona-comparison.d.ts.map +0 -0
  20. package/dist/analysis/persona-comparison.js +0 -0
  21. package/dist/analysis/persona-comparison.js.map +0 -0
  22. package/dist/browser.d.ts +0 -0
  23. package/dist/browser.d.ts.map +0 -0
  24. package/dist/browser.js +0 -0
  25. package/dist/browser.js.map +0 -0
  26. package/dist/cli.d.ts +0 -0
  27. package/dist/cli.d.ts.map +0 -0
  28. package/dist/cli.js +17 -1
  29. package/dist/cli.js.map +1 -1
  30. package/dist/config.d.ts +0 -0
  31. package/dist/config.d.ts.map +0 -0
  32. package/dist/config.js +0 -0
  33. package/dist/config.js.map +0 -0
  34. package/dist/daemon.d.ts +0 -0
  35. package/dist/daemon.d.ts.map +0 -0
  36. package/dist/daemon.js +0 -0
  37. package/dist/daemon.js.map +0 -0
  38. package/dist/index.d.ts +0 -0
  39. package/dist/index.d.ts.map +0 -0
  40. package/dist/index.js +0 -0
  41. package/dist/index.js.map +0 -0
  42. package/dist/mcp-server-remote.d.ts +21 -0
  43. package/dist/mcp-server-remote.d.ts.map +1 -0
  44. package/dist/mcp-server-remote.js +821 -0
  45. package/dist/mcp-server-remote.js.map +1 -0
  46. package/dist/mcp-server.d.ts +0 -0
  47. package/dist/mcp-server.d.ts.map +0 -0
  48. package/dist/mcp-server.js +1 -1
  49. package/dist/mcp-server.js.map +0 -0
  50. package/dist/performance/index.d.ts +0 -0
  51. package/dist/performance/index.d.ts.map +0 -0
  52. package/dist/performance/index.js +0 -0
  53. package/dist/performance/index.js.map +0 -0
  54. package/dist/performance/metrics.d.ts +0 -0
  55. package/dist/performance/metrics.d.ts.map +0 -0
  56. package/dist/performance/metrics.js +0 -0
  57. package/dist/performance/metrics.js.map +0 -0
  58. package/dist/personas.d.ts +0 -0
  59. package/dist/personas.d.ts.map +0 -0
  60. package/dist/personas.js +0 -0
  61. package/dist/personas.js.map +0 -0
  62. package/dist/testing/coverage.d.ts +0 -0
  63. package/dist/testing/coverage.d.ts.map +0 -0
  64. package/dist/testing/coverage.js +0 -0
  65. package/dist/testing/coverage.js.map +0 -0
  66. package/dist/testing/flaky-detection.d.ts +0 -0
  67. package/dist/testing/flaky-detection.d.ts.map +0 -0
  68. package/dist/testing/flaky-detection.js +0 -0
  69. package/dist/testing/flaky-detection.js.map +0 -0
  70. package/dist/testing/index.d.ts +0 -0
  71. package/dist/testing/index.d.ts.map +0 -0
  72. package/dist/testing/index.js +0 -0
  73. package/dist/testing/index.js.map +0 -0
  74. package/dist/testing/nl-test-suite.d.ts +0 -0
  75. package/dist/testing/nl-test-suite.d.ts.map +0 -0
  76. package/dist/testing/nl-test-suite.js +0 -0
  77. package/dist/testing/nl-test-suite.js.map +0 -0
  78. package/dist/testing/test-repair.d.ts +0 -0
  79. package/dist/testing/test-repair.d.ts.map +0 -0
  80. package/dist/testing/test-repair.js +0 -0
  81. package/dist/testing/test-repair.js.map +0 -0
  82. package/dist/types.d.ts +0 -0
  83. package/dist/types.d.ts.map +0 -0
  84. package/dist/types.js +0 -0
  85. package/dist/types.js.map +0 -0
  86. package/dist/visual/ab-comparison.d.ts +0 -0
  87. package/dist/visual/ab-comparison.d.ts.map +1 -1
  88. package/dist/visual/ab-comparison.js +3 -2
  89. package/dist/visual/ab-comparison.js.map +1 -1
  90. package/dist/visual/cross-browser.d.ts +0 -0
  91. package/dist/visual/cross-browser.d.ts.map +1 -1
  92. package/dist/visual/cross-browser.js +2 -1
  93. package/dist/visual/cross-browser.js.map +1 -1
  94. package/dist/visual/index.d.ts +0 -0
  95. package/dist/visual/index.d.ts.map +0 -0
  96. package/dist/visual/index.js +0 -0
  97. package/dist/visual/index.js.map +0 -0
  98. package/dist/visual/regression.d.ts +0 -0
  99. package/dist/visual/regression.d.ts.map +1 -1
  100. package/dist/visual/regression.js +2 -1
  101. package/dist/visual/regression.js.map +1 -1
  102. package/dist/visual/responsive.d.ts +0 -0
  103. package/dist/visual/responsive.d.ts.map +1 -1
  104. package/dist/visual/responsive.js +3 -2
  105. package/dist/visual/responsive.js.map +1 -1
  106. package/docs/REMOTE-MCP-SERVER.md +484 -0
  107. package/package.json +6 -1
@@ -0,0 +1,484 @@
1
+ # Remote MCP Server Deployment Guide
2
+
3
+ Deploy CBrowser as a remote MCP server for claude.ai custom connectors. This allows your entire team to use CBrowser through Claude without local installation.
4
+
5
+ ## Architecture Overview
6
+
7
+ ```
8
+ ┌─────────────────┐ HTTPS ┌─────────────────┐ HTTP ┌─────────────────┐
9
+ │ claude.ai │ ──────────────>│ Nginx/Caddy │ ────────────> │ CBrowser MCP │
10
+ │ (Custom MCP) │ :443 │ Reverse Proxy │ :3100 │ Server │
11
+ └─────────────────┘ └─────────────────┘ └─────────────────┘
12
+
13
+ ┌──────┴──────┐
14
+ │ Cloudflare │ (optional)
15
+ │ or SSL │
16
+ └─────────────┘
17
+ ```
18
+
19
+ ## Prerequisites
20
+
21
+ ### System Requirements
22
+
23
+ | Requirement | Minimum | Recommended |
24
+ |-------------|---------|-------------|
25
+ | **OS** | Ubuntu 20.04+ / Debian 11+ | Ubuntu 22.04 LTS |
26
+ | **RAM** | 2 GB | 4 GB |
27
+ | **CPU** | 2 cores | 4 cores |
28
+ | **Storage** | 10 GB | 20 GB |
29
+ | **Node.js** | 18.x | 20.x LTS |
30
+
31
+ ### Required Software
32
+
33
+ ```bash
34
+ # Update system
35
+ sudo apt update && sudo apt upgrade -y
36
+
37
+ # Install Node.js 20.x
38
+ curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
39
+ sudo apt install -y nodejs
40
+
41
+ # Install nginx
42
+ sudo apt install -y nginx
43
+
44
+ # Verify installations
45
+ node --version # Should be v20.x
46
+ nginx -v # Should show nginx version
47
+ ```
48
+
49
+ ### Domain & DNS
50
+
51
+ You'll need:
52
+ - A domain name (e.g., `cbrowser-mcp.yourdomain.com`)
53
+ - DNS A record pointing to your server's IP
54
+ - SSL certificate (Let's Encrypt or Cloudflare Origin)
55
+
56
+ ---
57
+
58
+ ## Step 1: Install CBrowser
59
+
60
+ ```bash
61
+ # Create application directory
62
+ sudo mkdir -p /opt/cbrowser
63
+ cd /opt/cbrowser
64
+
65
+ # Install CBrowser globally or locally
66
+ npm init -y
67
+ npm install cbrowser
68
+
69
+ # Install Playwright browsers
70
+ npx playwright install chromium firefox webkit
71
+ npx playwright install-deps # Install system dependencies
72
+
73
+ # Create data directory
74
+ sudo mkdir -p /home/$USER/.cbrowser/{sessions,screenshots,videos,har,personas,scenarios,helpers,audit,baselines,browser-state,cache,journeys,performance,visual,tests,repairs,config,visual-baselines,cross-browser,responsive,ab-comparison}
75
+ sudo chown -R $USER:$USER /home/$USER/.cbrowser
76
+ ```
77
+
78
+ ---
79
+
80
+ ## Step 2: Create Systemd Service
81
+
82
+ Create the service file:
83
+
84
+ ```bash
85
+ sudo nano /etc/systemd/system/cbrowser-mcp.service
86
+ ```
87
+
88
+ Paste this configuration:
89
+
90
+ ```ini
91
+ [Unit]
92
+ Description=CBrowser Remote MCP Server
93
+ After=network.target
94
+
95
+ [Service]
96
+ Type=simple
97
+ User=YOUR_USERNAME
98
+ Group=YOUR_GROUP
99
+ WorkingDirectory=/opt/cbrowser
100
+
101
+ # Create data directories on startup
102
+ ExecStartPre=/bin/bash -c 'mkdir -p /home/YOUR_USERNAME/.cbrowser/{sessions,screenshots,videos,har,personas,scenarios,helpers,audit,baselines,browser-state,cache,journeys,performance,visual,tests,repairs,config,visual-baselines,cross-browser,responsive,ab-comparison}'
103
+
104
+ # Start the MCP server
105
+ ExecStart=/usr/bin/node node_modules/cbrowser/dist/mcp-server-remote.js
106
+
107
+ Restart=on-failure
108
+ RestartSec=5
109
+
110
+ # Environment
111
+ Environment=NODE_ENV=production
112
+ Environment=PORT=3100
113
+ Environment=HOST=127.0.0.1
114
+ Environment=MCP_SESSION_MODE=stateless
115
+ Environment=CBROWSER_DATA_DIR=/home/YOUR_USERNAME/.cbrowser
116
+
117
+ # Security hardening (optional but recommended)
118
+ NoNewPrivileges=yes
119
+ ProtectSystem=strict
120
+ ProtectHome=read-only
121
+ PrivateTmp=yes
122
+ ReadWritePaths=/opt/cbrowser /home/YOUR_USERNAME/.cbrowser /home/YOUR_USERNAME/.cache/ms-playwright
123
+
124
+ [Install]
125
+ WantedBy=multi-user.target
126
+ ```
127
+
128
+ **Important:** Replace `YOUR_USERNAME` and `YOUR_GROUP` with your actual user/group.
129
+
130
+ Enable and start the service:
131
+
132
+ ```bash
133
+ # Reload systemd
134
+ sudo systemctl daemon-reload
135
+
136
+ # Enable on boot
137
+ sudo systemctl enable cbrowser-mcp
138
+
139
+ # Start the service
140
+ sudo systemctl start cbrowser-mcp
141
+
142
+ # Check status
143
+ sudo systemctl status cbrowser-mcp
144
+ ```
145
+
146
+ Verify it's running:
147
+
148
+ ```bash
149
+ curl http://localhost:3100/health
150
+ # Should return: {"status":"ok","version":"7.x.x"}
151
+ ```
152
+
153
+ ---
154
+
155
+ ## Step 3: Configure Nginx Reverse Proxy
156
+
157
+ Create nginx configuration:
158
+
159
+ ```bash
160
+ sudo nano /etc/nginx/sites-available/cbrowser-mcp.conf
161
+ ```
162
+
163
+ ### Option A: With Cloudflare (Recommended)
164
+
165
+ ```nginx
166
+ # HTTP redirect to HTTPS
167
+ server {
168
+ listen 80;
169
+ listen [::]:80;
170
+ server_name cbrowser-mcp.yourdomain.com;
171
+ return 301 https://$server_name$request_uri;
172
+ }
173
+
174
+ # HTTPS with Cloudflare Origin Certificate
175
+ server {
176
+ listen 443 ssl http2;
177
+ listen [::]:443 ssl http2;
178
+ server_name cbrowser-mcp.yourdomain.com;
179
+
180
+ # Cloudflare Origin Certificate
181
+ ssl_certificate /etc/ssl/certs/yourdomain-origin.pem;
182
+ ssl_certificate_key /etc/ssl/private/yourdomain-origin.key;
183
+
184
+ # SSL security settings
185
+ ssl_protocols TLSv1.2 TLSv1.3;
186
+ ssl_prefer_server_ciphers on;
187
+ ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
188
+
189
+ # Reverse proxy to MCP server
190
+ location / {
191
+ proxy_pass http://127.0.0.1:3100;
192
+ proxy_http_version 1.1;
193
+
194
+ # WebSocket/SSE support for MCP
195
+ proxy_set_header Upgrade $http_upgrade;
196
+ proxy_set_header Connection "upgrade";
197
+
198
+ # Standard proxy headers
199
+ proxy_set_header Host $host;
200
+ proxy_set_header X-Real-IP $remote_addr;
201
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
202
+ proxy_set_header X-Forwarded-Proto $scheme;
203
+
204
+ # Extended timeouts for long-running MCP operations
205
+ proxy_connect_timeout 300s;
206
+ proxy_send_timeout 300s;
207
+ proxy_read_timeout 300s;
208
+
209
+ # Disable buffering for SSE
210
+ proxy_buffering off;
211
+ proxy_cache off;
212
+
213
+ # MCP session header passthrough
214
+ proxy_pass_header Mcp-Session-Id;
215
+ }
216
+
217
+ # Logging
218
+ access_log /var/log/nginx/cbrowser-mcp.access.log;
219
+ error_log /var/log/nginx/cbrowser-mcp.error.log;
220
+ }
221
+ ```
222
+
223
+ ### Option B: With Let's Encrypt
224
+
225
+ ```bash
226
+ # Install Certbot
227
+ sudo apt install certbot python3-certbot-nginx
228
+
229
+ # Get certificate
230
+ sudo certbot --nginx -d cbrowser-mcp.yourdomain.com
231
+ ```
232
+
233
+ Enable the site:
234
+
235
+ ```bash
236
+ # Enable site
237
+ sudo ln -s /etc/nginx/sites-available/cbrowser-mcp.conf /etc/nginx/sites-enabled/
238
+
239
+ # Test configuration
240
+ sudo nginx -t
241
+
242
+ # Reload nginx
243
+ sudo systemctl reload nginx
244
+ ```
245
+
246
+ ---
247
+
248
+ ## Step 4: Cloudflare Configuration (Optional)
249
+
250
+ If using Cloudflare:
251
+
252
+ ### DNS Settings
253
+
254
+ 1. Add an **A record**:
255
+ - Name: `cbrowser-mcp`
256
+ - IPv4 address: Your server IP
257
+ - Proxy status: **Proxied** (orange cloud)
258
+
259
+ ### SSL/TLS Settings
260
+
261
+ 1. Go to **SSL/TLS → Overview**
262
+ 2. Set encryption mode to **Full (strict)**
263
+
264
+ ### Origin Certificates
265
+
266
+ 1. Go to **SSL/TLS → Origin Server**
267
+ 2. Click **Create Certificate**
268
+ 3. Generate with:
269
+ - Key type: RSA (2048)
270
+ - Hostnames: `cbrowser-mcp.yourdomain.com`
271
+ - Validity: 15 years
272
+ 4. Download and save:
273
+ - Certificate → `/etc/ssl/certs/yourdomain-origin.pem`
274
+ - Private key → `/etc/ssl/private/yourdomain-origin.key`
275
+
276
+ ### Page Rules (Recommended)
277
+
278
+ Create a page rule to bypass caching:
279
+
280
+ 1. Go to **Rules → Page Rules**
281
+ 2. Create rule:
282
+ - URL: `cbrowser-mcp.yourdomain.com/*`
283
+ - Setting: **Cache Level → Bypass**
284
+
285
+ ---
286
+
287
+ ## Step 5: Test the Deployment
288
+
289
+ ### Health Check
290
+
291
+ ```bash
292
+ curl https://cbrowser-mcp.yourdomain.com/health
293
+ # {"status":"ok","version":"7.4.2"}
294
+ ```
295
+
296
+ ### Info Endpoint
297
+
298
+ ```bash
299
+ curl https://cbrowser-mcp.yourdomain.com/info
300
+ ```
301
+
302
+ ### MCP Initialize (for debugging)
303
+
304
+ ```bash
305
+ curl -X POST https://cbrowser-mcp.yourdomain.com/mcp \
306
+ -H "Content-Type: application/json" \
307
+ -H "Accept: application/json, text/event-stream" \
308
+ -d '{"jsonrpc":"2.0","method":"initialize","id":1,"params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}'
309
+ ```
310
+
311
+ ---
312
+
313
+ ## Step 6: Connect to Claude.ai
314
+
315
+ 1. Go to [claude.ai](https://claude.ai)
316
+ 2. Open **Settings → Integrations → Custom MCP Servers**
317
+ 3. Add new connector:
318
+ - **Name:** CBrowser
319
+ - **URL:** `https://cbrowser-mcp.yourdomain.com/mcp`
320
+ 4. Click **Connect**
321
+
322
+ You should see 31 CBrowser tools become available in Claude.
323
+
324
+ ---
325
+
326
+ ## Security Considerations
327
+
328
+ ### Firewall Rules
329
+
330
+ ```bash
331
+ # Allow only necessary ports
332
+ sudo ufw allow 22/tcp # SSH
333
+ sudo ufw allow 80/tcp # HTTP (redirect)
334
+ sudo ufw allow 443/tcp # HTTPS
335
+ sudo ufw enable
336
+ ```
337
+
338
+ ### Authentication (Future)
339
+
340
+ The current MCP server is open. For production with sensitive data:
341
+
342
+ 1. Use Cloudflare Access for authentication
343
+ 2. Or add API key validation (coming in future version)
344
+ 3. Or restrict to IP whitelist in nginx
345
+
346
+ ### Rate Limiting
347
+
348
+ Add to nginx config:
349
+
350
+ ```nginx
351
+ # In http block of /etc/nginx/nginx.conf
352
+ limit_req_zone $binary_remote_addr zone=mcp:10m rate=10r/s;
353
+
354
+ # In server block
355
+ location / {
356
+ limit_req zone=mcp burst=20 nodelay;
357
+ # ... rest of config
358
+ }
359
+ ```
360
+
361
+ ---
362
+
363
+ ## Monitoring
364
+
365
+ ### View Logs
366
+
367
+ ```bash
368
+ # Service logs
369
+ sudo journalctl -u cbrowser-mcp -f
370
+
371
+ # Nginx access logs
372
+ sudo tail -f /var/log/nginx/cbrowser-mcp.access.log
373
+
374
+ # Nginx error logs
375
+ sudo tail -f /var/log/nginx/cbrowser-mcp.error.log
376
+ ```
377
+
378
+ ### Health Check Script
379
+
380
+ Create `/opt/cbrowser/healthcheck.sh`:
381
+
382
+ ```bash
383
+ #!/bin/bash
384
+ response=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3100/health)
385
+ if [ "$response" != "200" ]; then
386
+ echo "CBrowser MCP unhealthy, restarting..."
387
+ sudo systemctl restart cbrowser-mcp
388
+ fi
389
+ ```
390
+
391
+ Add to cron:
392
+
393
+ ```bash
394
+ # Run every 5 minutes
395
+ */5 * * * * /opt/cbrowser/healthcheck.sh
396
+ ```
397
+
398
+ ---
399
+
400
+ ## Troubleshooting
401
+
402
+ ### Service Won't Start
403
+
404
+ ```bash
405
+ # Check logs
406
+ sudo journalctl -u cbrowser-mcp -n 50 --no-pager
407
+
408
+ # Common fixes:
409
+ # 1. Permission issues
410
+ sudo chown -R $USER:$USER /home/$USER/.cbrowser
411
+ sudo chmod -R 755 /home/$USER/.cbrowser
412
+
413
+ # 2. Missing Playwright browsers
414
+ cd /opt/cbrowser && npx playwright install
415
+
416
+ # 3. Port already in use
417
+ sudo lsof -i :3100
418
+ ```
419
+
420
+ ### "Read-only filesystem" Error
421
+
422
+ The systemd security hardening may be too restrictive:
423
+
424
+ ```bash
425
+ # Check ReadWritePaths includes all needed directories
426
+ sudo systemctl cat cbrowser-mcp | grep ReadWritePaths
427
+ ```
428
+
429
+ ### Browser Timeout Errors
430
+
431
+ ```bash
432
+ # Install all browser dependencies
433
+ npx playwright install-deps
434
+
435
+ # Or install specific deps for Ubuntu
436
+ sudo apt install -y libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 \
437
+ libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 \
438
+ libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2
439
+ ```
440
+
441
+ ### Cloudflare 522 Errors
442
+
443
+ 1. Verify nginx is running: `sudo systemctl status nginx`
444
+ 2. Check CBrowser is listening: `curl localhost:3100/health`
445
+ 3. Check firewall allows 443: `sudo ufw status`
446
+
447
+ ### MCP Connection Fails in Claude
448
+
449
+ 1. Verify URL is correct: `https://your-domain/mcp` (not `/mcp/`)
450
+ 2. Check SSL certificate: `curl -v https://your-domain/health`
451
+ 3. Verify Accept header support (claude.ai sends `Accept: application/json, text/event-stream`)
452
+
453
+ ---
454
+
455
+ ## Updating CBrowser
456
+
457
+ ```bash
458
+ # Stop service
459
+ sudo systemctl stop cbrowser-mcp
460
+
461
+ # Update package
462
+ cd /opt/cbrowser
463
+ npm update cbrowser
464
+
465
+ # Restart service
466
+ sudo systemctl start cbrowser-mcp
467
+
468
+ # Verify version
469
+ curl https://cbrowser-mcp.yourdomain.com/health
470
+ ```
471
+
472
+ ---
473
+
474
+ ## Alternative: Docker Deployment
475
+
476
+ Coming soon. See [Docker documentation](./DOCKER.md).
477
+
478
+ ---
479
+
480
+ ## Getting Help
481
+
482
+ - **Issues:** [GitHub Issues](https://github.com/alexandriashai/cbrowser/issues)
483
+ - **Discussions:** [GitHub Discussions](https://github.com/alexandriashai/cbrowser/discussions)
484
+ - **Examples:** See the `deployment/` directory for reference configs
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cbrowser",
3
- "version": "7.4.1",
3
+ "version": "7.4.3",
4
4
  "description": "AI-powered browser automation with constitutional safety, AI visual regression, persona testing, and natural language test suites. Modular architecture for visual, testing, analysis, and performance modules.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -38,6 +38,8 @@
38
38
  "build": "tsc",
39
39
  "dev": "tsc --watch",
40
40
  "start": "bun run src/cli.ts",
41
+ "mcp": "node dist/mcp-server.js",
42
+ "mcp-remote": "node dist/mcp-server-remote.js",
41
43
  "test": "bun test",
42
44
  "lint": "eslint src/",
43
45
  "clean": "rm -rf dist/",
@@ -53,6 +55,9 @@
53
55
  "user-perspective-testing",
54
56
  "accessibility-testing",
55
57
  "mcp-server",
58
+ "remote-mcp",
59
+ "claude-ai",
60
+ "custom-connector",
56
61
  "claude-integration",
57
62
  "anthropic",
58
63
  "self-healing-selectors",