cbrowser 18.63.0 → 18.63.2
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/package.json +1 -1
- package/docs/ASSESSMENT.md +0 -132
- package/docs/AUTH0-SETUP.md +0 -207
- package/docs/COGNITIVE-OPTIMAL-TRANSPORT-RESEARCH.md +0 -238
- package/docs/DEMO-DEPLOYMENT.md +0 -177
- package/docs/ENTERPRISE-INTEGRATION.md +0 -250
- package/docs/GETTING-STARTED.md +0 -232
- package/docs/INSTALL.md +0 -274
- package/docs/MCP-INTEGRATION.md +0 -301
- package/docs/METHODOLOGY.md +0 -276
- package/docs/PERSONA-QUESTIONNAIRE.md +0 -328
- package/docs/README.md +0 -45
- package/docs/REMOTE-MCP-SERVER.md +0 -569
- package/docs/SECURITY_WHITEPAPER.md +0 -475
- package/docs/STRESS-TEST-v16.14.4.md +0 -241
- package/docs/Tool-Cognitive-Journey-Autonomous.md +0 -270
- package/docs/Tool-Competitive-Benchmark.md +0 -293
- package/docs/Tool-Empathy-Audit.md +0 -331
- package/docs/Tool-Hunt-Bugs.md +0 -305
- package/docs/Tool-Marketing-Campaign.md +0 -298
- package/docs/Tool-Persona-Create.md +0 -274
- package/docs/Tools-Accessibility.md +0 -208
- package/docs/Tools-Browser-Automation.md +0 -311
- package/docs/Tools-Cognitive-Journeys.md +0 -233
- package/docs/Tools-Marketing-Intelligence.md +0 -271
- package/docs/Tools-Overview.md +0 -162
- package/docs/Tools-Persona-System.md +0 -300
- package/docs/Tools-Session-State.md +0 -278
- package/docs/Tools-Testing-Quality.md +0 -257
- package/docs/Tools-Utilities.md +0 -182
- package/docs/Tools-Visual-Performance.md +0 -278
- package/docs/hunt-bugs-coverage.md +0 -103
- package/docs/personas/Persona-ADHD.md +0 -141
- package/docs/personas/Persona-ElderlyUser.md +0 -137
- package/docs/personas/Persona-FirstTimer.md +0 -137
- package/docs/personas/Persona-ImpatientUser.md +0 -138
- package/docs/personas/Persona-Index.md +0 -302
- package/docs/personas/Persona-LowVision.md +0 -139
- package/docs/personas/Persona-MobileUser.md +0 -139
- package/docs/personas/Persona-MotorTremor.md +0 -139
- package/docs/personas/Persona-PowerUser.md +0 -135
- package/docs/personas/Persona-ScreenReaderUser.md +0 -139
- package/docs/research/Bibliography.md +0 -275
- package/docs/research/Research-Methodology.md +0 -244
- package/docs/research/Values-Research.md +0 -432
- package/docs/traits/Trait-AnchoringBias.md +0 -227
- package/docs/traits/Trait-AttributionStyle.md +0 -280
- package/docs/traits/Trait-AuthoritySensitivity.md +0 -141
- package/docs/traits/Trait-ChangeBlindness.md +0 -171
- package/docs/traits/Trait-Comprehension.md +0 -180
- package/docs/traits/Trait-Curiosity.md +0 -189
- package/docs/traits/Trait-EmotionalContagion.md +0 -144
- package/docs/traits/Trait-FOMO.md +0 -150
- package/docs/traits/Trait-Index.md +0 -166
- package/docs/traits/Trait-InformationForaging.md +0 -217
- package/docs/traits/Trait-InterruptRecovery.md +0 -249
- package/docs/traits/Trait-MentalModelRigidity.md +0 -228
- package/docs/traits/Trait-MetacognitivePlanning.md +0 -164
- package/docs/traits/Trait-Patience.md +0 -137
- package/docs/traits/Trait-Persistence.md +0 -165
- package/docs/traits/Trait-ProceduralFluency.md +0 -205
- package/docs/traits/Trait-ReadingTendency.md +0 -216
- package/docs/traits/Trait-Resilience.md +0 -162
- package/docs/traits/Trait-RiskTolerance.md +0 -162
- package/docs/traits/Trait-Satisficing.md +0 -181
- package/docs/traits/Trait-SelfEfficacy.md +0 -199
- package/docs/traits/Trait-SocialProofSensitivity.md +0 -155
- package/docs/traits/Trait-TimeHorizon.md +0 -267
- package/docs/traits/Trait-TransferLearning.md +0 -249
- package/docs/traits/Trait-TrustCalibration.md +0 -227
- package/docs/traits/Trait-WorkingMemory.md +0 -192
package/docs/INSTALL.md
DELETED
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
> **This documentation is no longer maintained here.**
|
|
2
|
-
>
|
|
3
|
-
> For the latest version, please visit: **[CBrowser Installation Guide](https://cbrowser.ai/docs/INSTALL)**
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# CBrowser Installation Guide
|
|
8
|
-
|
|
9
|
-
## Installation Options
|
|
10
|
-
|
|
11
|
-
### Option 1: Claude Skill (Claude Code Users)
|
|
12
|
-
|
|
13
|
-
If you use [Claude Code](https://claude.ai/claude-code), install CBrowser as a skill:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
# One-line installation
|
|
17
|
-
curl -fsSL https://raw.githubusercontent.com/alexandriashai/cbrowser/main/scripts/install-skill.sh | bash
|
|
18
|
-
|
|
19
|
-
# Or via npm CLI
|
|
20
|
-
npx cbrowser install-skill
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
After installation:
|
|
24
|
-
|
|
25
|
-
1. Add to `~/.claude/skills/skill-index.json`:
|
|
26
|
-
```json
|
|
27
|
-
{"CBrowser": "~/.claude/skills/CBrowser/SKILL.md"}
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
2. Install dependencies:
|
|
31
|
-
```bash
|
|
32
|
-
npm install -g cbrowser
|
|
33
|
-
npx playwright install
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
See the [Claude Skill Installation wiki page](https://github.com/alexandriashai/cbrowser/wiki/Claude-Skill-Installation) for full details.
|
|
37
|
-
|
|
38
|
-
---
|
|
39
|
-
|
|
40
|
-
### Option 2: npm Package (Standard)
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
# npm
|
|
44
|
-
npm install cbrowser
|
|
45
|
-
|
|
46
|
-
# yarn
|
|
47
|
-
yarn add cbrowser
|
|
48
|
-
|
|
49
|
-
# bun
|
|
50
|
-
bun add cbrowser
|
|
51
|
-
|
|
52
|
-
# pnpm
|
|
53
|
-
pnpm add cbrowser
|
|
54
|
-
```
|
|
55
|
-
|
|
56
|
-
## Browser Setup
|
|
57
|
-
|
|
58
|
-
CBrowser uses Playwright for browser automation. After installing, you need to install the browser binaries:
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
npx playwright install chromium
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
This downloads Chromium (~150MB). For full browser support:
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
npx playwright install # Installs Chromium, Firefox, and WebKit
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
## Verify Installation
|
|
71
|
-
|
|
72
|
-
```bash
|
|
73
|
-
npx cbrowser help
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
You should see the help text with all available commands.
|
|
77
|
-
|
|
78
|
-
## Configuration
|
|
79
|
-
|
|
80
|
-
### Data Directory
|
|
81
|
-
|
|
82
|
-
By default, CBrowser stores data in `~/.cbrowser/`. To change this:
|
|
83
|
-
|
|
84
|
-
```bash
|
|
85
|
-
# Set environment variable
|
|
86
|
-
export CBROWSER_DATA_DIR="/path/to/custom/dir"
|
|
87
|
-
|
|
88
|
-
# Or per-command
|
|
89
|
-
CBROWSER_DATA_DIR="./data" npx cbrowser navigate "https://example.com"
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
### Environment Variables
|
|
93
|
-
|
|
94
|
-
| Variable | Default | Description |
|
|
95
|
-
|----------|---------|-------------|
|
|
96
|
-
| `CBROWSER_DATA_DIR` | `~/.cbrowser` | Data storage directory |
|
|
97
|
-
| `CBROWSER_HEADLESS` | `true` | Run headless by default (set to `false` for GUI) |
|
|
98
|
-
| `CBROWSER_TIMEOUT` | `30000` | Default timeout (ms) |
|
|
99
|
-
| `CBROWSER_VIEWPORT_WIDTH` | `1280` | Default viewport width |
|
|
100
|
-
| `CBROWSER_VIEWPORT_HEIGHT` | `800` | Default viewport height |
|
|
101
|
-
| `CBROWSER_VERBOSE` | `false` | Enable verbose logging |
|
|
102
|
-
|
|
103
|
-
### Persistent Configuration
|
|
104
|
-
|
|
105
|
-
Create a `.cbrowserrc` file in your project or home directory:
|
|
106
|
-
|
|
107
|
-
```json
|
|
108
|
-
{
|
|
109
|
-
"headless": true,
|
|
110
|
-
"timeout": 60000,
|
|
111
|
-
"viewportWidth": 1920,
|
|
112
|
-
"viewportHeight": 1080
|
|
113
|
-
}
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
## Platform-Specific Notes
|
|
117
|
-
|
|
118
|
-
### Linux
|
|
119
|
-
|
|
120
|
-
If running on a headless server, you may need additional dependencies:
|
|
121
|
-
|
|
122
|
-
```bash
|
|
123
|
-
# Ubuntu/Debian
|
|
124
|
-
sudo apt-get install libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2
|
|
125
|
-
|
|
126
|
-
# Or use Playwright's helper
|
|
127
|
-
npx playwright install-deps chromium
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
### macOS
|
|
131
|
-
|
|
132
|
-
No additional setup required. Works out of the box.
|
|
133
|
-
|
|
134
|
-
### Windows
|
|
135
|
-
|
|
136
|
-
No additional setup required. Works out of the box.
|
|
137
|
-
|
|
138
|
-
### Docker
|
|
139
|
-
|
|
140
|
-
```dockerfile
|
|
141
|
-
FROM node:20-slim
|
|
142
|
-
|
|
143
|
-
# Install Playwright dependencies
|
|
144
|
-
RUN apt-get update && apt-get install -y \
|
|
145
|
-
libnss3 libatk1.0-0 libatk-bridge2.0-0 libcups2 libdrm2 \
|
|
146
|
-
libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 libxrandr2 \
|
|
147
|
-
libgbm1 libpango-1.0-0 libcairo2 libasound2 \
|
|
148
|
-
&& rm -rf /var/lib/apt/lists/*
|
|
149
|
-
|
|
150
|
-
WORKDIR /app
|
|
151
|
-
COPY package*.json ./
|
|
152
|
-
RUN npm install
|
|
153
|
-
|
|
154
|
-
# Install browser
|
|
155
|
-
RUN npx playwright install chromium
|
|
156
|
-
|
|
157
|
-
COPY . .
|
|
158
|
-
|
|
159
|
-
# Run in headless mode
|
|
160
|
-
ENV CBROWSER_HEADLESS=true
|
|
161
|
-
|
|
162
|
-
CMD ["npx", "cbrowser", "help"]
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
## CI/CD Integration
|
|
166
|
-
|
|
167
|
-
### GitHub Actions
|
|
168
|
-
|
|
169
|
-
```yaml
|
|
170
|
-
name: Browser Tests
|
|
171
|
-
|
|
172
|
-
on: [push, pull_request]
|
|
173
|
-
|
|
174
|
-
jobs:
|
|
175
|
-
test:
|
|
176
|
-
runs-on: ubuntu-latest
|
|
177
|
-
steps:
|
|
178
|
-
- uses: actions/checkout@v4
|
|
179
|
-
- uses: actions/setup-node@v4
|
|
180
|
-
with:
|
|
181
|
-
node-version: '20'
|
|
182
|
-
|
|
183
|
-
- run: npm install
|
|
184
|
-
- run: npx playwright install chromium
|
|
185
|
-
|
|
186
|
-
- name: Run CBrowser tests
|
|
187
|
-
run: npm test
|
|
188
|
-
env:
|
|
189
|
-
CBROWSER_HEADLESS: true
|
|
190
|
-
```
|
|
191
|
-
|
|
192
|
-
### GitLab CI
|
|
193
|
-
|
|
194
|
-
```yaml
|
|
195
|
-
test:
|
|
196
|
-
image: mcr.microsoft.com/playwright:v1.40.0
|
|
197
|
-
script:
|
|
198
|
-
- npm install
|
|
199
|
-
- npm test
|
|
200
|
-
variables:
|
|
201
|
-
CBROWSER_HEADLESS: "true"
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
## Troubleshooting
|
|
205
|
-
|
|
206
|
-
### "Browser not found" Error
|
|
207
|
-
|
|
208
|
-
```bash
|
|
209
|
-
# Reinstall browser
|
|
210
|
-
npx playwright install chromium --force
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
### Permission Denied on Linux
|
|
214
|
-
|
|
215
|
-
```bash
|
|
216
|
-
# Make data directory writable
|
|
217
|
-
sudo chown -R $USER:$USER ~/.cbrowser
|
|
218
|
-
chmod -R 755 ~/.cbrowser
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
### Timeout Errors
|
|
222
|
-
|
|
223
|
-
Increase the default timeout:
|
|
224
|
-
|
|
225
|
-
```bash
|
|
226
|
-
CBROWSER_TIMEOUT=60000 npx cbrowser navigate "https://slow-site.com"
|
|
227
|
-
```
|
|
228
|
-
|
|
229
|
-
### Display Issues (Linux Server)
|
|
230
|
-
|
|
231
|
-
Use headless mode:
|
|
232
|
-
|
|
233
|
-
```bash
|
|
234
|
-
CBROWSER_HEADLESS=true npx cbrowser navigate "https://example.com"
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
Or set up a virtual display:
|
|
238
|
-
|
|
239
|
-
```bash
|
|
240
|
-
# Install Xvfb
|
|
241
|
-
sudo apt-get install xvfb
|
|
242
|
-
|
|
243
|
-
# Run with virtual display
|
|
244
|
-
xvfb-run npx cbrowser navigate "https://example.com"
|
|
245
|
-
```
|
|
246
|
-
|
|
247
|
-
## Upgrading
|
|
248
|
-
|
|
249
|
-
```bash
|
|
250
|
-
# npm
|
|
251
|
-
npm update cbrowser
|
|
252
|
-
|
|
253
|
-
# Check version
|
|
254
|
-
npx cbrowser --version
|
|
255
|
-
```
|
|
256
|
-
|
|
257
|
-
## Uninstalling
|
|
258
|
-
|
|
259
|
-
```bash
|
|
260
|
-
# Remove package
|
|
261
|
-
npm uninstall cbrowser
|
|
262
|
-
|
|
263
|
-
# Remove data directory (optional)
|
|
264
|
-
rm -rf ~/.cbrowser
|
|
265
|
-
|
|
266
|
-
# Remove Playwright browsers (optional)
|
|
267
|
-
rm -rf ~/.cache/ms-playwright
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
## Getting Help
|
|
271
|
-
|
|
272
|
-
- Check [README.md](../README.md) for usage examples
|
|
273
|
-
- Open an issue on GitHub for bugs
|
|
274
|
-
- See [CONTRIBUTING.md](../CONTRIBUTING.md) for development setup
|
package/docs/MCP-INTEGRATION.md
DELETED
|
@@ -1,301 +0,0 @@
|
|
|
1
|
-
> **This documentation is no longer maintained here.**
|
|
2
|
-
>
|
|
3
|
-
> For the latest version, please visit: **[MCP Server Integration](https://cbrowser.ai/docs/MCP-INTEGRATION)**
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# MCP Server Integration
|
|
8
|
-
|
|
9
|
-
CBrowser provides full Model Context Protocol (MCP) integration for Claude Desktop and claude.ai.
|
|
10
|
-
|
|
11
|
-
## Quick Setup
|
|
12
|
-
|
|
13
|
-
### Local MCP (Claude Desktop)
|
|
14
|
-
|
|
15
|
-
Add to your `claude_desktop_config.json`:
|
|
16
|
-
|
|
17
|
-
```json
|
|
18
|
-
{
|
|
19
|
-
"mcpServers": {
|
|
20
|
-
"cbrowser": {
|
|
21
|
-
"command": "npx",
|
|
22
|
-
"args": ["cbrowser", "mcp-server"]
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
### Remote MCP (claude.ai)
|
|
29
|
-
|
|
30
|
-
**Public Demo Server** (rate-limited, for evaluation):
|
|
31
|
-
```
|
|
32
|
-
URL: https://demo.cbrowser.ai/mcp
|
|
33
|
-
Rate limit: 5 requests/minute, burst of 10
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
**Deploy Your Own:**
|
|
37
|
-
```bash
|
|
38
|
-
# Default (no auth)
|
|
39
|
-
npx cbrowser mcp-remote
|
|
40
|
-
|
|
41
|
-
# With API key
|
|
42
|
-
MCP_API_KEY=your-secret npx cbrowser mcp-remote
|
|
43
|
-
|
|
44
|
-
# With Auth0 OAuth
|
|
45
|
-
AUTH0_DOMAIN=your-tenant.auth0.com \
|
|
46
|
-
AUTH0_AUDIENCE=https://your-server/ \
|
|
47
|
-
npx cbrowser mcp-remote
|
|
48
|
-
|
|
49
|
-
# Custom port
|
|
50
|
-
PORT=8080 npx cbrowser mcp-remote
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## All 91 MCP Tools
|
|
54
|
-
|
|
55
|
-
### Navigation (5 tools)
|
|
56
|
-
|
|
57
|
-
| Tool | Description |
|
|
58
|
-
|------|-------------|
|
|
59
|
-
| `navigate` | Navigate to URL with intelligent wait detection |
|
|
60
|
-
| `screenshot` | Capture page screenshot |
|
|
61
|
-
| `extract` | Extract structured data (links, headings, forms, images, text) |
|
|
62
|
-
| `cloudflare_detect` | Detect Cloudflare protection |
|
|
63
|
-
| `cloudflare_wait` | Wait for Cloudflare challenge completion |
|
|
64
|
-
|
|
65
|
-
### Interaction (4 tools)
|
|
66
|
-
|
|
67
|
-
| Tool | Description |
|
|
68
|
-
|------|-------------|
|
|
69
|
-
| `click` | Click element by selector or description |
|
|
70
|
-
| `smart_click` | Self-healing click with retry and selector recovery |
|
|
71
|
-
| `fill` | Fill form input with value |
|
|
72
|
-
| `scroll` | Scroll page or element |
|
|
73
|
-
|
|
74
|
-
### Testing (3 tools)
|
|
75
|
-
|
|
76
|
-
| Tool | Description |
|
|
77
|
-
|------|-------------|
|
|
78
|
-
| `nl_test_file` | Run natural language test suite from file |
|
|
79
|
-
| `nl_test_inline` | Run natural language tests from inline content |
|
|
80
|
-
| `repair_test` | AI-powered test repair for broken tests |
|
|
81
|
-
| `detect_flaky_tests` | Identify unreliable tests by running multiple times |
|
|
82
|
-
|
|
83
|
-
### Visual Testing (6 tools)
|
|
84
|
-
|
|
85
|
-
| Tool | Description |
|
|
86
|
-
|------|-------------|
|
|
87
|
-
| `visual_baseline` | Capture visual baseline for URL |
|
|
88
|
-
| `visual_regression` | Compare current page against baseline |
|
|
89
|
-
| `cross_browser_test` | Test across Chrome, Firefox, Safari |
|
|
90
|
-
| `cross_browser_diff` | Quick metrics comparison across browsers |
|
|
91
|
-
| `responsive_test` | Test across viewport sizes |
|
|
92
|
-
| `ab_comparison` | Compare two URLs visually |
|
|
93
|
-
|
|
94
|
-
### Cognitive Simulation (3 tools)
|
|
95
|
-
|
|
96
|
-
| Tool | Description |
|
|
97
|
-
|------|-------------|
|
|
98
|
-
| `cognitive_journey_init` | Initialize cognitive user simulation |
|
|
99
|
-
| `cognitive_journey_update_state` | Update mental state during journey |
|
|
100
|
-
| `compare_personas` | Compare experience across personas |
|
|
101
|
-
|
|
102
|
-
### Persona Questionnaire (3 tools) - *New in v16.6.0*
|
|
103
|
-
|
|
104
|
-
| Tool | Description |
|
|
105
|
-
|------|-------------|
|
|
106
|
-
| `persona_questionnaire_get` | Generate questionnaire questions for custom persona |
|
|
107
|
-
| `persona_questionnaire_build` | Build trait profile from questionnaire answers |
|
|
108
|
-
| `persona_trait_lookup` | Look up behaviors for specific trait value |
|
|
109
|
-
|
|
110
|
-
### Analysis (5 tools)
|
|
111
|
-
|
|
112
|
-
| Tool | Description |
|
|
113
|
-
|------|-------------|
|
|
114
|
-
| `hunt_bugs` | Autonomous bug hunting and issue discovery |
|
|
115
|
-
| `chaos_test` | Inject failures and test resilience |
|
|
116
|
-
| `agent_ready_audit` | Analyze site for AI-agent friendliness |
|
|
117
|
-
| `competitive_benchmark` | Compare UX across competitor sites |
|
|
118
|
-
| `empathy_audit` | Simulate users with disabilities |
|
|
119
|
-
|
|
120
|
-
### Performance (3 tools)
|
|
121
|
-
|
|
122
|
-
| Tool | Description |
|
|
123
|
-
|------|-------------|
|
|
124
|
-
| `perf_baseline` | Capture performance baseline |
|
|
125
|
-
| `perf_regression` | Detect performance regression |
|
|
126
|
-
| `list_baselines` | List all saved baselines |
|
|
127
|
-
|
|
128
|
-
### Stealth (5 tools)
|
|
129
|
-
|
|
130
|
-
| Tool | Description |
|
|
131
|
-
|------|-------------|
|
|
132
|
-
| `stealth_enable` | Enable stealth mode |
|
|
133
|
-
| `stealth_disable` | Disable stealth mode |
|
|
134
|
-
| `stealth_status` | Check current stealth status |
|
|
135
|
-
| `stealth_check` | Check for bot detection |
|
|
136
|
-
| `stealth_diagnose` | Diagnose detection issues |
|
|
137
|
-
|
|
138
|
-
### Utility (4 tools)
|
|
139
|
-
|
|
140
|
-
| Tool | Description |
|
|
141
|
-
|------|-------------|
|
|
142
|
-
| `save_session` | Save browser session (cookies, storage) |
|
|
143
|
-
| `load_session` | Load saved session |
|
|
144
|
-
| `list_sessions` | List saved sessions |
|
|
145
|
-
| `delete_session` | Delete saved session |
|
|
146
|
-
|
|
147
|
-
### Persona (4 tools)
|
|
148
|
-
|
|
149
|
-
| Tool | Description |
|
|
150
|
-
|------|-------------|
|
|
151
|
-
| `list_cognitive_personas` | List all available personas |
|
|
152
|
-
| `find_element_by_intent` | AI-powered semantic element finding |
|
|
153
|
-
| `dismiss_overlay` | Dismiss modal overlays (cookies, popups) |
|
|
154
|
-
| `status` | Get CBrowser environment status |
|
|
155
|
-
|
|
156
|
-
## Tool Usage Examples
|
|
157
|
-
|
|
158
|
-
### Cognitive Journey with Custom Persona
|
|
159
|
-
|
|
160
|
-
```
|
|
161
|
-
// Step 1: Get questionnaire
|
|
162
|
-
persona_questionnaire_get({ comprehensive: false })
|
|
163
|
-
|
|
164
|
-
// Step 2: Build traits from answers
|
|
165
|
-
persona_questionnaire_build({
|
|
166
|
-
answers: { patience: 0.25, curiosity: 0.75 },
|
|
167
|
-
name: "anxious-explorer"
|
|
168
|
-
})
|
|
169
|
-
|
|
170
|
-
// Step 3: Run journey with custom persona
|
|
171
|
-
cognitive_journey_init({
|
|
172
|
-
persona: "anxious-explorer",
|
|
173
|
-
startUrl: "https://example.com",
|
|
174
|
-
goal: "complete checkout"
|
|
175
|
-
})
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
### Agent-Ready Audit
|
|
179
|
-
|
|
180
|
-
```
|
|
181
|
-
agent_ready_audit({ url: "https://example.com" })
|
|
182
|
-
|
|
183
|
-
// Returns:
|
|
184
|
-
// - Overall score (0-100)
|
|
185
|
-
// - Grade (A-F)
|
|
186
|
-
// - Findability, stability, accessibility scores
|
|
187
|
-
// - Issues with remediation suggestions
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
### Visual Regression
|
|
191
|
-
|
|
192
|
-
```
|
|
193
|
-
// Capture baseline
|
|
194
|
-
visual_baseline({ url: "https://example.com", name: "homepage" })
|
|
195
|
-
|
|
196
|
-
// Later, compare against baseline
|
|
197
|
-
visual_regression({ url: "https://staging.example.com", baselineName: "homepage" })
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
### Competitive Benchmark
|
|
201
|
-
|
|
202
|
-
```
|
|
203
|
-
competitive_benchmark({
|
|
204
|
-
sites: [
|
|
205
|
-
"https://yoursite.com",
|
|
206
|
-
"https://competitor-a.com",
|
|
207
|
-
"https://competitor-b.com"
|
|
208
|
-
],
|
|
209
|
-
goal: "sign up for free trial",
|
|
210
|
-
persona: "first-timer"
|
|
211
|
-
})
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
## Authentication Methods
|
|
215
|
-
|
|
216
|
-
### API Key Authentication
|
|
217
|
-
|
|
218
|
-
For Claude Code CLI and scripts:
|
|
219
|
-
|
|
220
|
-
```bash
|
|
221
|
-
# Bearer token
|
|
222
|
-
curl -H "Authorization: Bearer your-api-key" https://your-server/mcp
|
|
223
|
-
|
|
224
|
-
# X-API-Key header
|
|
225
|
-
curl -H "X-API-Key: your-api-key" https://your-server/mcp
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
Configure multiple keys:
|
|
229
|
-
```bash
|
|
230
|
-
MCP_API_KEYS=key1,key2,key3 npx cbrowser mcp-remote
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
### Auth0 OAuth
|
|
234
|
-
|
|
235
|
-
For claude.ai web interface:
|
|
236
|
-
|
|
237
|
-
1. Set up Auth0 tenant
|
|
238
|
-
2. Configure environment:
|
|
239
|
-
```bash
|
|
240
|
-
AUTH0_DOMAIN=your-tenant.auth0.com
|
|
241
|
-
AUTH0_AUDIENCE=https://your-server/
|
|
242
|
-
```
|
|
243
|
-
3. In claude.ai: Settings > Integrations > Custom Connectors
|
|
244
|
-
4. Add connector URL and complete OAuth flow
|
|
245
|
-
|
|
246
|
-
Features:
|
|
247
|
-
- OAuth 2.1 with PKCE
|
|
248
|
-
- JWT and opaque token validation
|
|
249
|
-
- 30-minute token caching
|
|
250
|
-
- Protected Resource Metadata via `/.well-known/oauth-protected-resource`
|
|
251
|
-
|
|
252
|
-
### Dual Authentication
|
|
253
|
-
|
|
254
|
-
Both OAuth and API keys can be enabled simultaneously for maximum flexibility.
|
|
255
|
-
|
|
256
|
-
## Server Endpoints
|
|
257
|
-
|
|
258
|
-
| Endpoint | Description | Auth |
|
|
259
|
-
|----------|-------------|------|
|
|
260
|
-
| `/mcp` | MCP protocol endpoint | Required if configured |
|
|
261
|
-
| `/health` | Health check | Always open |
|
|
262
|
-
| `/info` | Server info | Always open |
|
|
263
|
-
| `/.well-known/oauth-protected-resource` | OAuth metadata | If Auth0 configured |
|
|
264
|
-
|
|
265
|
-
## Docker Deployment
|
|
266
|
-
|
|
267
|
-
```yaml
|
|
268
|
-
# docker-compose.yml
|
|
269
|
-
version: "3.8"
|
|
270
|
-
services:
|
|
271
|
-
cbrowser-mcp:
|
|
272
|
-
image: ghcr.io/alexandriashai/cbrowser:latest
|
|
273
|
-
command: ["mcp-remote"]
|
|
274
|
-
ports:
|
|
275
|
-
- "3000:3000"
|
|
276
|
-
environment:
|
|
277
|
-
- MCP_API_KEY=${MCP_API_KEY}
|
|
278
|
-
- PORT=3000
|
|
279
|
-
```
|
|
280
|
-
|
|
281
|
-
## Troubleshooting
|
|
282
|
-
|
|
283
|
-
### Connection Issues
|
|
284
|
-
|
|
285
|
-
1. Verify server is running: `curl http://localhost:3000/health`
|
|
286
|
-
2. Check authentication: `curl -H "Authorization: Bearer key" http://localhost:3000/info`
|
|
287
|
-
3. Verify MCP endpoint: `curl -X POST http://localhost:3000/mcp`
|
|
288
|
-
|
|
289
|
-
### Claude Desktop Not Detecting Tools
|
|
290
|
-
|
|
291
|
-
1. Restart Claude Desktop after config changes
|
|
292
|
-
2. Verify config path: `~/.config/claude/claude_desktop_config.json`
|
|
293
|
-
3. Check npx is in PATH
|
|
294
|
-
4. Verify cbrowser is installed: `npx cbrowser --version`
|
|
295
|
-
|
|
296
|
-
### Rate Limiting on Demo Server
|
|
297
|
-
|
|
298
|
-
The demo server is rate-limited for evaluation. For production use:
|
|
299
|
-
1. Deploy your own server
|
|
300
|
-
2. Use API key authentication
|
|
301
|
-
3. Configure appropriate rate limits
|