Odel
Katalon True Platform MCP

Katalon True Platform MCP

@katalon-labs7JavaScriptMITUpdated 1w ago

Katalon True Platform MCP: design tests, run with AI, upload reports, assess release readiness.

Server endpointStreamable HTTPOAuthProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

Ask your coding agent to read a requirement, design the test cases, run them with AI, upload the reports, and tell you whether the release is safe to ship. The skills do the platform work through the Katalon MCP, so the agent operates your real project instead of guessing at it.

Example agent session: install the skills, analyze requirement CEL-6, design and import cases, run with AI, upload the report, and get a ship decision

An example session. Your requirement keys, suites, and verdicts come from your own workspace.

Quickstart

1. Install the skills. The skills CLI detects the agent you already run (70+ supported) and drops the skills into its native directory.

npx skills add katalon-labs/true-skills

2. Point it at your Katalon workspace. Add the MCP server to your agent's config file (the install section says which file yours is):

{
  "mcpServers": {
    "katalon-prod-mcp": {
      "type": "http",
      "url": "https://platform.katalon.io/mcp"
    }
  }
}

First connect opens a browser OAuth flow and lets you pick your workspace. Nothing to fill in, no tokens to paste, no keys to store.

3. Ask for something real.

Set up Katalon MCP and verify my projects.
Create manual tests from requirement CEL-6 and link them.
Which requirements in this sprint have no test coverage?
Run that suite with AI and summarize what broke.
Generate a Playwright script from test case TC-1042.
Upload my Playwright report to Katalon and verify the run.
Is release 3.2 safe to ship?

Or hand over the whole chain: "Analyze CEL-6, design and import the cases, build a suite, run it with AI, and tell me if we can ship."

Start where you are

Four jobs. Say the situation in your own words and the agent picks the skill.

You are aYou sayIt starts at
Manual tester
QA analyst, test analyst
I just got requirement CEL-6 and need cases · Run this suite with AI and tell me what broke · Is this failure the app or my testcreate-test-casestest-dataexecute-testanalyze-failures
Unscripted session? exploratory-charter.
Automation tester
SDET, automation engineer
Turn TC-1042 into a Playwright spec · Get my run into the platform · Our suite went flaky this monthtest-case-to-playwrightplaywright-executetest-maintenance
Test lead
QA lead, QE lead
What should we test first this sprint · Is this suite ready for the pipeline · Which requirements have no coveragetest-plantest-estimationtest-reviewtest-management
Test manager
QA manager, head of quality
Can we ship 3.2 · How long will this take and with how many people · Build the summary I present upwardrelease-analyzetest-estimationtest-reporting

Not connected yet? Start at platform-setup, which everyone runs once.

Not sure which one you are, or the request spans several? Ask true-platform-testing and it routes by role and by stage. The full map from intent to skill, including what to fall back to for the parts not built yet, is in lifecycle-map.md.

The skills

Eighteen skills, one folder each under skills/. The agent picks the right one from its description, so you rarely name a skill yourself.

SkillStageWhat it does
platform-setupsetupInstalls and verifies the Katalon MCP, and diagnoses auth or access failures. Start here.
test-plan1 planTurns quality goals into scope, ranks the work by requirement coverage and risk, and builds the folder and suite structure that acts as the executable plan.
test-estimation1 planSizes a test cycle from scope, risk, and historical execution data, resources it across the manual and automated lanes, and states the uncertainty instead of inventing precision.
create-test-cases2 designReads a requirement or free text, designs atomic manual cases with ISTQB techniques as reference, skips duplicates, imports only what is missing, and links each case back to the requirement.
test-data2 designDesigns the data a case runs on, decides what must exist before a run, keeps literals out of the step text, and resets state afterwards so the next run starts clean.
exploratory-charter2 designWrites a charter with a mission, areas, oracles, and a timebox, runs the session, and turns what was found into defects and scripted cases.
test-management3 manageOrganizes folders and suites, finds assets at scale, and produces a requirement to case to suite traceability report with coverage percentage and orphans.
test-review4 reviewReviews coverage, case quality, and flakiness before anything enters the pipeline, and returns Approve, Approve with fixes, or Reject plus the specific weak cases.
execute-test5 executeRuns a case, a list, or a suite as a manual run, a Run with AI session, or scheduled automation, then reports pass, fail, and blocked.
upload-report5 executeRuns automation and uploads or verifies Katalon Studio/KRE, JUnit XML, and Playwright reports on the platform.
test-case-to-playwright5 executeConverts manual cases into Playwright TypeScript with Page Object Model and fixtures.
test-case-to-katalon-studio5 executeConverts manual cases into Katalon Studio test cases and Groovy scripts, keeping the .tc and .ts pair GUID-consistent.
playwright-execute5 executeRuns Playwright specs, ships the report with @katalon/playwright-reporter, and verifies the run landed.
analyze-failures6 analyzeSorts failures into product defect, automation defect, and environment noise, clusters them by signature, and files ALM defects for the real bugs.
release-analyze6 analyzeReads coverage, stability, and defect data to return Ready, Ready with risk, or Not ready, with the reasons attached.
test-reporting6 analyzeTurns platform quality data into the few metrics that answer a stakeholder question, trended across releases, as a summary a manager can present upward.
test-maintenance7 maintainFinds flaky and broken cases from stability history, repairs or regenerates them, and hands the refreshed gap list back to planning.
true-platform-testingallThe router and end to end runner. Routes any request to the right stage, or drives the full chain from requirement to ship decision.

Multi-skill playbooks live in combination-recipes.md. Copy-paste prompts and cross-model notes are in prompt-recipes.md.

The lifecycle

Seven stages, each owned by a skill. The loop closes when maintenance feeds its gap list back into the plan.

The seven-stage testing lifecycle and the skill that owns each stage, with the maintenance gap list feeding back into planning

platform-setup sits before all seven, connecting the MCP. Every skill states which Katalon MCP tools it uses and where the platform stops. Full stage map: lifecycle-map.md. Every tool in one line each: mcp-tool-index.md. A self-contained visual for humans: docs/lifecycle.html.

Where the boundary is

Each skill names its limits up front so the agent does not promise work the platform cannot do.

Through the MCP: list projects and repositories, read requirements, create and update and link test cases, manage suites and folders, create manual runs, start Run with AI, poll AI sessions, read results, fetch quality metrics, and file ALM-linked defects.

Not through the MCP: creating requirements, creating a formal Test Plan entity, guaranteeing an AI run finishes, or inspecting the live app UI without a browser tool. A named suite plus a release or sprint association stands in for the Test Plan entity.

Some work is a product surface rather than an API call: object capture and resilience design in Studio, custom fields and Git config and governance in the TestOps UI, self-healing and Time Capsule and TrueTest regeneration, and rerun, terminate, and Live Monitor. The full list is in unavailable-capabilities.md.

Install

Every path needs the Katalon MCP configured.

Any agent via the skills CLI
npx skills add katalon-labs/true-skills                          # all skills, this project
npx skills add katalon-labs/true-skills --skill platform-setup   # just one
npx skills add katalon-labs/true-skills -g                       # user-global, every agent
npx skills update                                                # pull the latest

The CLI installs skill files only. Configure the MCP yourself with the snippet below, or use the Claude Code and Codex plugin paths, which bundle it.

Any agent via the Agent Plugins standard

This repository conforms to the Agent Plugins specification 1.0.0: plugin.json + skills/ + mcp.json at the repo root form a portable plugin any conformant client can load directly, and plugins/katalon-true-platform/ ships the same contract as a standalone plugin directory. Skills follow the Agent Skills format. Point your standard-aware client at either directory; mcp.json already declares the canonical endpoint as a streamable-http server, so there is nothing to fill in.

Claude Code plugin marketplace
claude plugin marketplace add katalon-labs/true-skills
claude plugin install katalon-true-platform@katalon-true-platform-marketplace

Developing against a checkout:

claude --plugin-dir plugins/katalon-true-platform

The plugin ships the skills and an .mcp.json. If your setup does not auto-load the bundled MCP, add it manually.

Codex plugin marketplace
codex plugin marketplace add katalon-labs/true-skills

Open Plugins in Codex and install Katalon True Platform. Set your subdomain in the plugin's .mcp.json.

GitHub Copilot agent skills + MCP
mkdir -p .github .vscode \
  && cp -R <checkout>/.github/skills .github/ \
  && cp -R <checkout>/.github/prompts .github/ \
  && cp <checkout>/.github/copilot-instructions.md .github/ \
  && cp <checkout>/.github/mcp.json .github/ \
  && cp <checkout>/.vscode/mcp.json .vscode/
  • VS Code (agent mode) - skills in .github/skills/ load automatically; prompt files stay available as /platform-setup etc. Start the katalon-prod-mcp server when VS Code offers it: it signs you in through the browser OAuth flow and you pick your workspace. Nothing to configure, no token pasting.
  • Copilot CLI - the same skills are auto-discovered (/skills list to see them). The MCP server auto-loads from .github/mcp.json with no edits; or register it interactively with /mcp add (type http, same URL). The CLI does not read .vscode/mcp.json.
  • Copilot coding agent & code review - read .github/skills/ from your repository automatically. Neither surface supports OAuth remote MCP servers yet, so keep Katalon platform operations in VS Code or the CLI for now.
Cursor project rules
cp -R <checkout>/.cursor .cursor

Rules in .cursor/rules/*.mdc load by description when relevant. MCP config lives in .cursor/mcp.json.

Kiro steering docs
cp -R <checkout>/.kiro .kiro

Steering docs use manual inclusion, so reference one in chat with #true-platform-testing. MCP config lives in .kiro/settings/mcp.json.

Windsurf rules
cp -R <checkout>/.windsurf .windsurf

Rules in .windsurf/rules/*.md trigger on their description. Add the MCP under Settings → MCP, or in ~/.codeium/windsurf/mcp_config.json.

Cline project rules
cp -R <checkout>/.clinerules .clinerules

Cline loads every file in .clinerules/. Add the MCP through its MCP Servers panel.

Continue rules and MCP block
cp -R <checkout>/.continue .continue

Rules live in .continue/rules/*.md, the MCP block in .continue/mcpServers/katalon.yaml.

Anything else via AGENTS.md

Point your agent at AGENTS.md. It indexes every skill and tells the agent to open skills/<name>/SKILL.md. Use the root .mcp.json for the server config.

Connect the Katalon MCP

One endpoint serves every workspace: https://platform.katalon.io/mcp. Sign-in presents a workspace picker, so there is no subdomain to look up. The canonical shape lives in .mcp.json:

{
  "mcpServers": {
    "katalon-prod-mcp": {
      "type": "http",
      "url": "https://platform.katalon.io/mcp"
    }
  }
}

Agents without native remote-MCP support (Kiro, Continue, Codex) use the mcp-remote wrapper against the same endpoint:

npx -y mcp-remote https://platform.katalon.io/mcp --transport http-first
  1. Complete the browser OAuth flow that opens on first connect.
  2. Pick your workspace.
  3. Reload the agent if the tools do not show up.

On a dedicated Katalon domain, substitute https://<your-sub-domain>.katalon.io/mcp.

Auth is browser OAuth only. Never paste passwords, API tokens, cookies, JWTs, MFA codes, or OAuth callback URLs into chat, and never commit them. The skills enforce this.

How it is built

The skill bodies live once. Everything each agent needs is generated from them, so no adapter can drift.

  skills/                      13 SKILL.md files plus references/
     |
     |  node scripts/build-adapters.mjs      deterministic, checked in CI
     v
  Claude Code · Codex · Copilot · Cursor · Kiro · Windsurf · Cline · Continue · AGENTS.md
     |
     |  every adapter points at the same server
     v
  Katalon MCP  ->  requirements, test cases, suites, Run with AI, results, defects
skills/                              source of truth, 18 skills
scripts/build-adapters.mjs           generates every agent config
plugins/katalon-true-platform/       Claude Code and Codex plugin      (generated)
.claude-plugin/  .agents/            plugin marketplaces               (generated)
.cursor/  .kiro/  .github/           Cursor, Kiro, Copilot             (generated)
.windsurf/  .clinerules/  .continue/ Windsurf, Cline, Continue         (generated)
.mcp.json  .vscode/mcp.json          MCP config                        (generated)
AGENTS.md  llms.txt                  agent-readable index              (generated)

Contributing

Edit skills/ only. Everything else is generated. Then:

node scripts/validate-skills.mjs    # skills/ matches scripts/skills.config.mjs
node scripts/build-adapters.mjs     # regenerate every agent config

The build is deterministic. Re-running it with no skill changes produces no diff, and CI rejects out-of-sync adapters. Details in CONTRIBUTING.md.

Support

Privacy

The skills are plain markdown that runs inside the agent you already use. This repository collects nothing. Platform operations go to your own Katalon workspace over OAuth, and what Katalon does with that data is covered by the Katalon Privacy Policy.

License

MIT © Katalon. "Katalon" and "Katalon True Platform" are trademarks of Katalon, Inc.