BrowserStack Load Testing with the MCP server
Use natural language prompts to create, run, and monitor load tests with the BrowserStack MCP server.
Work with Load Testing using your AI assistant using natural language. Ask your AI assistant to create tests, start or stop runs, read reports, or check VU-hours—the assistant calls Load Testing with your credentials. If you already use the BrowserStack MCP server, Load Testing comes in the same server.
To set up the server, see get started with the BrowserStack MCP server.
Load Testing in the BrowserStack MCP server is being rolled out to accounts in phases. You need @browserstack/mcp-server v2.2.0 or later. If your account isn’t enabled yet, contact your BrowserStack account team to get access.
Tools and capabilities
The BrowserStack MCP exposes five generic tools (listProducts, describeEntity, searchCapability, describeCapability, invokeCapability). The assistant uses them to find and run the Load Testing actions listed below. Users just ask in plain language.
| Tool | Use case | Sample prompt |
|---|---|---|
listLoadTestProjects |
List your projects, or find one by name | “What load-testing projects do I have?” |
listLoadTests |
List tests in a project (filter by type, framework, tag) | “Show the API tests in project Checkout” |
searchLoadTests |
Find a test by name across all projects | “Find my test called Login Smoke” |
getLoadTest |
View a test’s full configuration | “What settings does Login Smoke use?” |
createLoadTest |
Create an API, Browser, or Hybrid test from a sample or your own script | “Create a JMeter API load test using the sample script” |
updateLoadTest |
Change a test’s name, tags, SLAs, script or settings | “Set Login Smoke to 200 VUs” |
estimateLoadTestRunCost |
Estimate VU-hours for a run before starting it | “How many VU-hours will Login Smoke use?” |
startLoadTestRun |
Start a run (uses VU-hours) | “Run Login Smoke now” |
getLoadTestRunStatus |
Live status and progress of a run | “Is my run finished yet?” |
listActiveLoadTestRuns |
Runs executing right now | “What’s running right now?” |
stopLoadTestRun |
Stop a running or queued run (results so far are kept) | “Stop the Login Smoke run” |
getLoadTestInsightSummary |
AI insight: summary, root cause, and recommendations | “Summarize my last run” |
getLoadTestRunReport |
Full metrics: KPIs, SLA results, transactions, errors | “What was the p95 latency on my last run?” |
getLoadTestMetricsManifest |
Metrics available for a test (used by the assistant) | — |
compareLoadTestRuns |
Compare two runs of the same test | “Did my latest run regress vs the previous one?” |
getLoadTestHistoricalTrends |
One test’s metric trends over recent runs | “Is Login Smoke getting slower over time?” |
getLoadTestProjectTrends |
Metric trends across a project | “Is performance in Checkout improving?” |
listLoadTestRuns |
Past runs of a test | “Show the last 5 runs of Login Smoke” |
listProjectLoadTestRuns |
All runs in a project | “What ran in Checkout last week?” |
getLoadTestQuota |
Remaining VU-hours and parallel-run limit | “How many VU-hours do I have left?” |
getLoadTestPlatformStatus |
Check whether Load Testing is up | “Is Load Testing working right now?” |
All test types: API (JMeter, k6, Gatling, Locust), Browser (Playwright, Selenium, WebdriverIO, Nightwatch), and Hybrid load tests.
Setup and requirements
Load Testing requires @browserstack/mcp-server v2.2.0 or later.
Prerequisites:
- A BrowserStack account with Load Testing enabled for the MCP.
- Your BrowserStack username and access key from your account settings.
- An AI assistant that supports MCP: Claude, Cursor, VS Code, GitHub Copilot, or ChatGPT.
- For write operations (create, edit, run, stop), you need theUser or Admin role. Viewer is read-only.
See Roles and permissions for Load Testing for details.
Option 1: Local setup with npx
- Open your assistant’s MCP configuration file. For example, use
claude_desktop_config.jsonfor Claude Desktop, or Settings > MCP in Cursor. - Add the BrowserStack server to the
mcpServerssection:
{
"mcpServers": {
"browserstack": {
"command": "npx",
"args": ["-y", "@browserstack/mcp-server@latest"],
"env": {
"BROWSERSTACK_USERNAME": "<username>",
"BROWSERSTACK_ACCESS_KEY": "<access_key>"
}
}
}
}
- Replace
<username>and<access_key>with your BrowserStack credentials. - Restart your assistant for the changes to take effect.
Option 2: Remote, hosted server
- Add the hosted MCP server URL
https://mcp.browserstack.com/mcpto your assistant’s MCP configuration. - Sign in with BrowserStack when prompted. No installation is required.
For Cursor and VS Code, you can use the one-click setup on the BrowserStack MCP server GitHub page.
Test it
Ask: “List my BrowserStack load testing projects.” If you get an error, see the troubleshooting section in the main Troubleshoot guide.
How it works
- Permissions apply. Requests run with your role and project access. The assistant can perform only the actions available to you in the dashboard.
- Confirmation required. Before creating, editing, starting, or stopping, the assistant asks you to confirm.
- Dashboard links. Get links to the Load Testing dashboard for any created tests or runs.
Create a load test
The assistant asks for:
- Test type: API, Browser, or Hybrid
- Framework: Choose based on test type (e.g., k6 for API, Playwright for Browser)
- Script: Sample or your own
- Project: Existing or new
The defaults are 1 virtual user, 30 seconds, constant load, and the default zone. You get a link to edit the test in the dashboard.
To use your own script, upload a zip (100 MB for API, 250 MB for Browser). Requires Claude Code, Cursor, or VS Code with local setup.
Run and monitor a load test
- Ask to run a test. To use different VUs or duration, ask to edit the test first.
- The assistant starts the run and returns the run ID, estimated cost, and a report link. Long runs continue in the background.
- Ask for progress anytime: “How far along is my run?”
- Stop a run early if needed. Results collected before the run was stopped are still available.
Running a test uses VU-hours and sends real traffic to your target. Your assistant confirms the test and parameters first. To check the cost beforehand, ask your AI assistant to estimate the run’s VU-hours.
Read a report
Ask about a completed run: “What was the error rate?” or “Which requests were slowest?”
Your assistant fetches:
- Key metrics: p90, p95, p99 response time, request rate, error rate
- Web Vitals (browser runs): LCP, INP, CLS, FCP, TTFB
- Per-request stats and error breakdowns (4xx / 5xx)
- Threshold results
Get AI Insights
Ask your AI assistant to summarize a run or identify issues. Your assistant returns BrowserStack’s AI Insights: the same analysis from the report’s Summary tab. If unavailable, you get headline metrics instead.
Compare runs
Ask to compare two runs of the same test, like Compare reports in the dashboard.
Requirements:
- The runs must belong to the same test and be different runs
- Both runs must be completed.
- Same test type and framework
The comparison includes the baseline, new value, percentage change, and verdict (improved/regressed/unchanged). Also see per-request changes and threshold results.
For multiple runs, ask for trends instead: “How has p95 changed over the last 10 runs?”
Check VU-hours
- View capacity: “How many VU-hours do I have left?” See included hours, used, remaining, and parallel-run limits. Your plan covers API and Browser tests; Browser VUs cost 10× more.
- Estimate cost: “How many VU-hours for a 30-minute, 500-VU run?” Get a range if the load profile varies.
Limitations
Not yet supported:
- Delete tests or runs (use the dashboard)
- Schedule recurring runs (use the dashboard or CI/CD)
- Compare different tests or >2 runs (use trends instead)
Need help?
- FAQs for common questions.
- Troubleshoot for common issues.
We're sorry to hear that. Please share your feedback so we can do better
Contact our Support team for immediate help while we work on improving our docs.
We're continuously improving our docs. We'd love to know what you liked
We're sorry to hear that. Please share your feedback so we can do better
Contact our Support team for immediate help while we work on improving our docs.
We're continuously improving our docs. We'd love to know what you liked
Thank you for your valuable feedback!