Skip to main content

MCP API Reference

Full specification with all parameters

This page is an overview. For the complete API reference with parameters, request/response examples, retry policies, and concurrency guidelines, see the full MCP API specification.

Or run npx bz-agent init to generate it locally in your project.

The Model Context Protocol (MCP) API enables AI agents to programmatically interact with Boozang for automated test management.

Authentication

Getting an API Token

  1. Log into Boozang at https://ai.boozang.com
  2. Navigate to Settings -> API Tokens
  3. Generate a new token with appropriate permissions
  4. Store securely (tokens cannot be retrieved after creation)

Tokens are prefixed with bzmcp_ and scoped to a project. Two permission scopes are available:

ScopeAccess
readRead-only tools (getModules, getTests, getActions, getEnvironments, getIDEState, etc.)
writeAll tools including create, edit, and delete operations

Using the Token

Include the token in all API requests:

curl -X POST https://ai.boozang.com/api/mcp \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "tools/call", ...}'

Protocol

The MCP API uses JSON-RPC 2.0 over HTTPS.

Request Format

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "tool_name",
"arguments": {
"param1": "value1"
}
}
}

Response Format

{
"jsonrpc": "2.0",
"id": 1,
"result": {
"content": [
{
"type": "text",
"text": "Result data here"
}
]
}
}

Available Tools (40+)

Module Tools

ToolDescriptionKey Parameters
getModulesList all modulesprojectId, versionId, includeTests
createModuleCreate a new modulename, projectId, versionId, parentModule, comment
editModuleUpdate a modulemoduleCode, projectId, versionId, name, comment
deleteModuleDelete a module and its testsmoduleCode, projectId, versionId

Test Tools

ToolDescriptionKey Parameters
getTestsList tests in a moduleprojectId, versionId, moduleCode
createTestCreate a new testname, projectId, versionId, moduleCode, type
editTestUpdate a testtestCode, projectId, versionId, moduleCode
deleteTestDelete a testtestCode, projectId, versionId, moduleCode

Action Tools

ToolDescriptionKey Parameters
getActionsList actions in a testprojectId, versionId, moduleCode, testCode
createActionCreate a new actiontype, projectId, versionId, moduleCode, testCode
editActionUpdate an actionactionIndex, projectId, versionId, moduleCode, testCode
deleteActionDelete an actionactionIndex, projectId, versionId, moduleCode, testCode

Environment Tools

ToolDescriptionKey Parameters
getEnvironmentsList all environmentsprojectId, versionId
createEnvironmentCreate an environmentname, projectId, versionId, items
editEnvironmentUpdate an environmentenvironmentCode, projectId, versionId
deleteEnvironmentDelete an environmentenvironmentCode, projectId, versionId
provisionEnvironmentsProvision multiple environmentsprojectId, versionId, environments

IDE Control Tools

These tools control the Boozang IDE browser window. They require the IDE to be open and logged into a project.

ToolDescriptionKey Parameters
getIDEStateGet current IDE state(none)
navigateToNavigate to module/testmoduleId, testId
runTestRun a testmoduleId, testId
stopTestStop a running test
pauseTest / resumeTestPause/resume test
getTestStatusGet running test status
getTestResultsGet last test results
getPageInfoGet current page info
getPageElementsGet page elements
getScreenshotCapture screenshot
getConsoleLogGet browser console
setBreakpoint / getBreakpoints / clearBreakpointsManage breakpoints
getAppUrl / navigateUrl / refreshPageControl AUT browser
waitForPageReadyWait for page load
getIDEUrl / setIDEUrlGet/set IDE URL

Auth Config Tools

ToolDescription
getAuthConfigGet authentication configuration
configureAuthConfigure authentication settings

Quick Example

import requests

def call_mcp_tool(tool_name, arguments, token):
response = requests.post(
"https://ai.boozang.com/api/mcp",
headers={
"Authorization": f"Bearer {token}",
"Content-Type": "application/json"
},
json={
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": tool_name,
"arguments": arguments
}
}
)
return response.json()

# List all modules with tests
result = call_mcp_tool("getModules", {
"projectId": "p123",
"versionId": "master",
"includeTests": True
}, "bzmcp_your_token_here")

Error Handling

CodeMeaningResolution
-32700Parse errorCheck JSON syntax
-32600Invalid requestVerify request format
-32601Method not foundCheck tool name
-32602Invalid paramsVerify parameters
-32603Internal errorContact support
-32000Auth/execution errorCheck token and permissions

Full Specification

For complete details including:

  • All parameter types and descriptions
  • Request/response examples for every tool
  • Retry policies and exponential backoff
  • Concurrency guidelines

See the full MCP API specification or run npx bz-agent init to generate it locally.