Connect to NeoLoad Web MCP
The NeoLoad Web Model Context Protocol (MCP) integration lets you interact with your performance testing platform through natural language conversations with AI assistants. Instead of navigating complex UIs or writing scripts, you can manage tests, analyze results, and generate reports through simple conversational prompts.
MCP transforms your performance testing experience by enabling you to:
-
Discover and manage workspaces and tests through natural language.
-
Execute performance tests with conversational commands.
-
Analyze results and generate insights automatically.
-
Monitor test execution in real-time.
-
Create comprehensive reports without manual data gathering.
Note: MCP requires a compatible AI assistant that supports the Model Context Protocol standard. Currently tested and supported platforms include Cursor and Claude Desktop.
Before you start
Before you connect to NeoLoad MCP, make sure you have:
-
An API token from NeoLoad Web.
-
A compatible AI assistant (Cursor or Claude Desktop).
-
Node.js v18 or later installed on your system.
Get your API token
To connect to the MCP server, you need a valid API token from NeoLoad Web. To get your API token, follow these steps:
-
Sign in to NeoLoad Web.
-
Select User menu > Profile.
-
Go to the Access tokens section.
-
Select + Generate token.
-
Copy and securely save your token.
Configure your AI assistant
Configure your AI assistant to connect to the NeoLoad Web MCP server. The configuration steps depend on which AI assistant you're using.
To configure Cursor to connect to NeoLoad Web MCP, follow these steps:
-
Open your Cursor settings and open the
Tools & Integrationstab. -
Select
New MCP Server. -
Add the NeoLoad Web MCP server configuration using the appropriate server URL for your region:
-
US Region:https://neoload-v2.saas.neotys.com/mcp-server/mcp -
EU Region:https://neoload-v2-eu.saas.neotys.com/mcp-server/mcp
Copy{
"mcpServers": {
"nlweb-mcp-server": {
"command": "npx",
"args": [
"mcp-remote",
"https://neoload-v2.saas.neotys.com/mcp-server/mcp",
"-y",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "<your NLW API token>"
}
}
}
} -
-
Enter your API token in the authentication settings.
To configure Claude Desktop to connect to NeoLoad Web MCP, follow these steps:
-
Open your Claude Desktop configuration file.
-
Add the NeoLoad Web MCP server configuration using the appropriate server URL for your region:
-
US Region:https://neoload-v2.saas.neotys.com/mcp-server/mcp -
EU Region:https://neoload-v2-eu.saas.neotys.com/mcp-server/mcp
Copy{
"mcpServers": {
"nlweb-mcp-server": {
"command": "npx",
"args": [
"mcp-remote",
"https://neoload-v2.saas.neotys.com/mcp-server/mcp",
"-y",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "<your NLW API token>"
}
}
}
} -
-
Replace
<your NLW API token>with your actual API token.
Verify your connection
To verify that your MCP connection is working correctly, follow these steps:
-
Open your AI assistant.
-
Start a conversation with a simple command like:
"Show me all available workspaces" -
If the connection is successful, you should see a list of your NeoLoad Web workspaces.
If you encounter connection issues, verify that:
-
Your API token is valid and correctly entered.
-
You're using the correct server URL for your region.
-
The MCP feature is enabled for your account.
-
Node.js v18 or later, and required dependencies are properly installed.
Available MCP actions
Once connected, you can use these MCP actions to manage your performance testing workflow through natural language conversations:
Workspace and test management
Manage your workspaces and run performance tests with these actions:
| Action | Description | Parameters |
|---|---|---|
list-workspaces
|
Get a list of all workspaces you can access. | None |
list-tests-workspace
|
Get all tests in a workspace. | workspaceId, pageNumber, pageSize, sort |
list-results-workspace
|
Get test results from a workspace. | workspaceId, pageNumber, pageSize, sort |
run-test
|
Start a performance test. | testId, resultName |
stop-test-execution
|
Stop a test that's currently running. | testExecutionId |
get-test-project
|
Get test available scenarios. | None |
get-test-scenario-populations
|
Get populations from a specific test. | testId |
update-test-scenario-populations
|
Update populations in a test scenario. | testId, populations, constant_load, rampup_load, peaks_load, custom_load |
update-selected-test-scenario
|
Update the selected scenario in a test. | None |
update-test-zone-configuration
|
Reads all populations from the scenario, suggests optimal zone distribution, considers population-specific requirements, recommends zone sizing per population, and updates the test. | testId, controllerZoneId (optional), lgsByZone (optional), cloudLgResourcesSize (optional) |
Result analysis
Analyze and examine your test results in detail with these actions:
| Action | Description | Parameters |
|---|---|---|
get-result
|
Get detailed information about a test result. | resultId |
get-result-elements
|
Get the elements from a test result. | resultId |
get-result-events
|
Get events that occurred during test execution. | resultId, pageNumber, pageSize, sort |
get-result-logs
|
Get logs from test execution. | resultId, sort |
get-result-requests-values
|
Get performance metrics for requests. | resultId, intervalId (optional), pageNumber, pageSize, sort |
get-result-transactions-values
|
Get performance metrics for transactions. | resultId, intervalId (optional), pageNumber, pageSize, sort |
Interval management
Create and manage time intervals for detailed test result analysis with these actions:
| Action | Description | Parameters |
|---|---|---|
generate-intervals
|
Create intervals to analyze test results. | resultId |
list-intervals
|
Get all intervals from a test result. | resultId |
Zone management
Configure and manage your load testing zones with these actions:
| Action | Description | Parameters |
|---|---|---|
list-zones
|
Get available zones, optionally filtered by type. | type (STATIC, DYNAMIC, CLOUD) |
create-static-zone
|
Create a static zone. | zoneName |
create-dynamic-zone
|
Create a dynamic zone with specified resources. | zoneName, providerId, sizing |
enable-cloud-zone
|
Enable a cloud zone in a specific region. | cloudRegion |
disable-cloud-zone
|
Turn off a cloud zone. | zoneId |
update-dynamic-zone-resource-sizing
|
Change resource sizing for a dynamic zone. | zoneId, sizing |
rename-static-zone
|
Change the name of a static zone. | zoneId or name, newName |
delete-static-dynamic-zone
|
Remove a static or dynamic zone. | zoneId or name |
Dashboard management
Configure and manage your dashboards with these actions:
| Action | Description | Parameters |
|---|---|---|
list-dashboards
|
List all available dashboards. | workspaceId (optional), testResultld (optional), sort (optional), pageNumber (optional), pageSize (optional) |
get-dashboard-tiles
|
Get detailed information about all the tiles in your dashboard. | dashboardId |
create-dashboard
|
Create a new empty dashboard. | workspaceId, name, dashboardType (optional) |
create-dashboard-tile
|
Add a new tile to your dashboard. | dashboardId, title, x, y, width (optional, default: 1), height (optional, default:1) |
add-data-series-to-dashboard-tile
|
Add a data series to a tile, such as element, timeseries, or monitor data. | dashboardId, tileId, dataSeries (includes filter, color, legend, resultId, resultName, visible) |
Infrastructure management
Monitor and check your infrastructure providers with these actions:
| Action | Description | Parameters |
|---|---|---|
list-infrastructure-providers
|
Get all available infrastructure providers. | None |
check-infra-provider-availability
|
Check if an infrastructure provider is available. | providerId |
Webhook management
Access and manage webhook configurations for your workspaces with these actions:
| Action | Description | Parameters |
|---|---|---|
get-webhooks
|
Get webhooks configured for a workspace. | workspaceId |
What's next?
Now that you've connected to NeoLoad Web MCP, you can:
-
Learn MCP prompting best practices to get the most out of your natural language interactions.