A curated collection of custom agent profiles for Katalon Studio StudioAssist.
Agent profiles let you customize how StudioAssist behaves in Agent mode — giving it specialized instructions, tool permissions, and MCP server configurations for different testing workflows.
Agent profiles are project-level configurations that control StudioAssist's behavior in Agent mode. Each profile is a folder containing four files that define the agent's instructions, description, MCP server connections, and tool permissions.
Agent mode is the proactive side of StudioAssist — instead of answering questions (Ask mode), it autonomously generates test cases, modifies existing ones, creates BDD feature files, builds test data, and more.
Documentation: Configure Agent Profile
- Katalon Studio Enterprise v11.0.0 or later
- A configured AI provider (Katalon's AI Service, OpenAI, Azure OpenAI, Gemini, or AWS Bedrock)
Each agent profile is a folder inside your project's Agents/ directory. The folder name must use only alphanumeric characters, hyphens, and underscores (e.g., BDD-Agent, regression_testing_1).
YourProject/
└── Agents/
└── My-Agent/
├── prompt.md # Instructions that define agent behavior
├── profile.json # Agent name and description
├── mcp.json # Connected MCP server(s)
└── agent.json # Tool permissions
The instruction prompt that defines how StudioAssist should behave. Written in Markdown. This is where you give the agent its personality, constraints, and workflow instructions.
Stores the agent's description and enabled state. Edit this file directly to update the description shown in the StudioAssist UI.
{
"description": "What this agent does",
"enabled": true
}Lists the MCP servers connected to this agent profile. Servers are stored as an object keyed by server name inside a "servers" field. Three transport types are supported: http, sse, and stdio.
{
"servers": {
"my-http-server": {
"type": "http",
"url": "https://api.example.com/mcp",
"name": "my-http-server",
"title": "My HTTP Server"
},
"my-sse-server": {
"type": "sse",
"url": "https://api.example.com/sse",
"name": "my-sse-server",
"title": "My SSE Server"
},
"my-stdio-server": {
"command": "node",
"args": ["server.js"]
}
}
}Transport type detection: if a "type" field is present ("http", "sse", or "stdio"), it is used directly. Otherwise, a "command" field implies stdio, and a "url" field implies http (or sse if the URL path contains /sse).
Katalon Studio provides three built-in MCP servers (managed automatically, not configured in mcp.json):
| Server name | Title | Purpose |
|---|---|---|
katalon |
Katalon MCP | Searches and retrieves Katalon documentation |
katalon-studio |
Katalon Studio MCP | Reads and modifies project files (test cases, keywords, objects, suites, BDD files, test data) |
katalon-testops |
Katalon TestOps MCP | Manages test artifacts, requirements, and sprints (v10.4.0+) |
Use these server names in agent.json's mcpServerSettings[].server field to configure tool permissions for built-in servers.
You can also connect external MCP servers (HTTP or SSE transport) for integrations like Jira, Figma, Playwright, and more.
Note: AI providers enforce a 64-character limit on the combined
{server_name}___{tool_name}identifier. Keep server names short.
Controls agent behavior and tool permissions per MCP server.
{
"maxToolCalls": 5,
"autoToolApproval": false,
"disabledServers": [],
"mcpServerSettings": [
{
"server": "my-http-server",
"excludedTools": ["dangerousTool"],
"approvedTools": ["safeTool", "anotherTool"]
}
]
}| Field | Type | Default | Description |
|---|---|---|---|
maxToolCalls |
int | 5 |
Max consecutive tool calls per prompt before asking user to continue |
autoToolApproval |
boolean | false |
Auto-approve all tool calls (skips permission prompts) |
disabledServers |
string[] | [] |
Server names to completely disable |
mcpServerSettings |
object[] | [] |
Per-server tool permission overrides |
Each entry in mcpServerSettings:
| Field | Type | Description |
|---|---|---|
server |
string | MCP server name (matches the key in mcp.json's servers object) |
excludedTools |
string[] | Tool names that are never available to the agent |
approvedTools |
string[] | Tool names permanently approved (equivalent to "Always Allow" in the UI) |
Tools not in either list will prompt the user for approval at runtime, with three options:
- Allow Once — one-time execution
- Allow in Conversation — approved for the current chat session
- Always Allow — persisted to
approvedToolsinagent.json
These are the tool names available on the built-in katalon-studio MCP server. Use these names in approvedTools and excludedTools within agent.json.
| Category | Tool name | Description |
|---|---|---|
| BDD | createBddFeatureFile |
Create a new BDD feature file with Gherkin content |
| BDD | updateBddFeatureFile |
Update an existing BDD feature file |
| Test Cases | getTestCases |
List test cases in the project |
| Test Cases | getTestCaseScript |
Get the script content of a test case |
| Test Cases | createTestCase |
Create a new test case |
| Test Cases | updateTestCase |
Update test case metadata |
| Test Cases | updateTestCaseScript |
Update the script content of a test case |
| Custom Keywords | getCustomKeywords |
List all custom keywords |
| Custom Keywords | getCustomKeyword |
Get a specific custom keyword's source |
| Custom Keywords | createCustomKeyword |
Create a new custom keyword class |
| Custom Keywords | updateCustomKeyword |
Update a custom keyword class |
| Test Data | getTestDataList |
List test data entities |
| Test Data | getInternalTestDataDetails |
Get details of an internal test data entity |
| Test Data | createInternalTestData |
Create a new internal test data entity |
| Test Data | updateInternalTestData |
Update an internal test data entity |
| Test Suites | getTestSuite |
Get test suite details |
| Test Suites | createTestSuite |
Create a new test suite |
| Test Suites | updateTestSuite |
Update a test suite |
| Test Suites | createTestSuiteCollection |
Create a test suite collection |
| Test Suites | updateTestSuiteCollection |
Update a test suite collection |
| Test Suites | createDynamicTestSuite |
Create a dynamic test suite |
| Test Suites | updateDynamicTestSuite |
Update a dynamic test suite |
| Test Objects | getTestObject |
Get a test object's details |
| Test Objects | getTestObjects |
List test objects in the project |
| Test Objects | createWebTestObject |
Create a web test object |
| Test Objects | createMobileTestObject |
Create a mobile test object |
| Test Objects | createWindowsTestObject |
Create a Windows test object |
| Test Objects | createRestWebServiceTestObject |
Create a REST web service test object |
| Test Objects | createSoapWebServiceTestObject |
Create a SOAP web service test object |
| Test Objects | updateWebTestObject |
Update a web test object |
| Test Objects | updateMobileTestObject |
Update a mobile test object |
| Test Objects | updateWindowsTestObject |
Update a Windows test object |
| Test Objects | updateRestWebServiceTestObject |
Update a REST web service test object |
| Test Objects | updateSoapWebServiceTestObject |
Update a SOAP web service test object |
| WebUI | getAvailableExecutionSessions |
List available browser execution sessions |
| WebUI | webUINavigate |
Navigate to a URL in the browser |
| WebUI | webUITakePageSource |
Capture the page source |
| WebUI | webUITakeAccessibilityTreeSnapshot |
Capture the accessibility tree |
| WebUI | webUISetText |
Set text on a web element |
| WebUI | webUIClick |
Click a web element |
| Other | analyzeTestFailure |
Analyze a test failure |
| Other | submitSupportTicket |
Submit a support ticket |
The built-in katalon MCP server provides documentation search tools: search, fetch, and search_katalon_documentation_with_filter.
- Copy the agent folder into your Katalon Studio project's
Agents/directory. - Open your project in Katalon Studio.
- The agent will appear in the StudioAssist chat interface under the profile selector.
- Select the profile to activate it for your chat session.
Note: StudioAssist does not auto-select profiles. You must manually select one per chat session.
| Agent | Description |
|---|---|
| BDD-Agent | Generates BDD feature files and step definitions using Gherkin syntax |
| API-Test-Generator | Creates WebService test cases from API specifications |
| Code-Review | Applies CodeNarc-style static analysis rules when writing or reviewing Groovy scripts |
| Test-Data-Helper | Generates test data tables and binds variables to test cases |
- Create a new folder in
Agents/with a descriptive name (alphanumeric, hyphens, underscores only). - Add the four required files:
prompt.md,profile.json,mcp.json,agent.json. - Write your instructions in
prompt.md— be specific about the agent's role, constraints, and expected output format. - Set the description in
profile.jsonso users know what the agent does. - Configure
mcp.jsonwith the MCP servers the agent needs. - Set initial tool permissions in
agent.json.
See the included agents for working examples.
- Be specific about the role. "You are a BDD testing specialist" is better than "You help with testing."
- Define the output format. If you want Gherkin, say so. If you want Page Object Model, specify the pattern.
- Set constraints. Tell the agent what it should and shouldn't do.
- Reference Katalon conventions. Mention built-in keywords, project structure, and naming patterns the agent should follow.
- Keep it focused. A single-purpose agent outperforms a general-purpose one.
Contributions are welcome! To add an agent:
- Fork this repository.
- Create your agent folder in
Agents/with all four required files. - Add a brief description to the table in this README.
- Open a pull request.
- StudioAssist Agent Mode
- Configure Agent Profile
- Katalon Built-in MCP Servers
- Agent Mode & MCP Server Settings
- Add External MCP Servers
This project is licensed under the MIT License — see LICENSE for details.