Skip to content

katalon-studio-samples/awesome-studio-agents

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Studio Agents

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.

What are Agent Profiles?

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

Requirements

  • Katalon Studio Enterprise v11.0.0 or later
  • A configured AI provider (Katalon's AI Service, OpenAI, Azure OpenAI, Gemini, or AWS Bedrock)

Agent Profile Structure

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

prompt.md

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.

profile.json

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
}

mcp.json

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.

agent.json

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 approvedTools in agent.json

Built-in Tool Reference

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.

Installing an Agent Profile

  1. Copy the agent folder into your Katalon Studio project's Agents/ directory.
  2. Open your project in Katalon Studio.
  3. The agent will appear in the StudioAssist chat interface under the profile selector.
  4. 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.

Included Agents

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

Creating Your Own Agent

  1. Create a new folder in Agents/ with a descriptive name (alphanumeric, hyphens, underscores only).
  2. Add the four required files: prompt.md, profile.json, mcp.json, agent.json.
  3. Write your instructions in prompt.md — be specific about the agent's role, constraints, and expected output format.
  4. Set the description in profile.json so users know what the agent does.
  5. Configure mcp.json with the MCP servers the agent needs.
  6. Set initial tool permissions in agent.json.

See the included agents for working examples.

Tips for Writing Good Prompts

  • 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.

Contributing

Contributions are welcome! To add an agent:

  1. Fork this repository.
  2. Create your agent folder in Agents/ with all four required files.
  3. Add a brief description to the table in this README.
  4. Open a pull request.

Related Documentation

License

This project is licensed under the MIT License — see LICENSE for details.

About

Custom agents for Katalon Studio

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors