Skip to content

Integrations

This page is generated from the live QualityMax MCP registry. Examples use placeholders; replace them with values for your workspace.

Add an existing automation script to the project’s test framework. Fetches the script by ID, ensures the framework exists (creating it if needed), and writes the test file into the framework directory.

Parameter Type Required Description
script_id integer Yes Automation script ID to add to the framework
framework string No Framework type. Known values: playwright (default), pytest, rust_cargo, go_test. Unknown values fall back to playwright via FrameworkManager.resolve_framework_type, so existing MCP clients passing arbitrary strings (the historical contract) are not rejected — this field is intentionally not strictly enum-enforced.

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"script_id": 1
},
"tool": "add_script_to_framework"
}

Create a pull request with generated tests or fixes

Parameter Type Required Description
repo_id string Yes Repository ID
title string Yes Pull request title
description string Yes Pull request description
branch_name string No Branch name for the PR
test_files array No Test files to include in PR

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"description": "your-description",
"repo_id": "your-repo-id",
"title": "your-title"
},
"tool": "create_pr"
}

Create a new project (optionally with main_url). Will check for similar existing projects and ask for confirmation if found.

Parameter Type Required Description
name string Yes No description supplied.
key string No Optional project key (max 10). If omitted, derived from name.
description string No No description supplied.
main_url string No Optional main URL for AI crawl
force_create boolean No If true, skip similarity check and create immediately (use when user confirmed they want a new project)

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"name": "your-name"
},
"tool": "create_project"
}

Export a project’s test framework as a zip archive. Since MCP cannot return binary data, the zip is saved to a temporary file and the file path and size are returned.

Parameter Type Required Description
project_id integer Yes Project ID to export the framework for
framework string No Framework type: ‘playwright’ (default) or ‘pytest’

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"project_id": 1
},
"tool": "export_framework"
}

Post a comment on a Linear issue as the connected user. Use this to report what a run did — findings, a PR link, why something was not done. WRITE: requires the user to have enabled Linear writes for this run, and only works on issues in the workspace they connected. If it is refused, say so and continue; the refusal cannot be worked around.

Parameter Type Required Description
issue string Yes Linear issue identifier such as ‘ENG-123’, or UUID.
body string Yes Comment body (markdown).

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"body": "your-body",
"issue": "your-issue"
},
"tool": "linear_add_comment"
}

Read the comment thread on a Linear issue, oldest first. Use this for the discussion and decisions that are not in the issue description. Read-only.

Parameter Type Required Description
issue string Yes Linear issue identifier such as ‘ENG-123’, or UUID.
limit integer No Max comments (default 50, max 100).

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"issue": "your-issue"
},
"tool": "linear_get_comments"
}

Read one Linear issue by its identifier (e.g. ‘ENG-123’) or UUID. Returns title, description, state, assignee, priority, labels and URL. Use this whenever the task mentions a Linear issue — do not rely on details pasted into the prompt, which may be stale. Read-only.

Parameter Type Required Description
issue string Yes Linear issue identifier such as ‘ENG-123’, or the issue UUID.

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"issue": "your-issue"
},
"tool": "linear_get_issue"
}

Search the connected Linear workspace. All filters are optional and combine: full-text query, team_key (e.g. ‘ENG’), assigned_to_me. Completed and cancelled issues are excluded unless include_completed is true. Read-only.

Parameter Type Required Description
query string No Full-text search over title and description.
team_key string No Restrict to one team by key, e.g. ‘ENG’.
assigned_to_me boolean No Only issues assigned to the connected Linear user.
include_completed boolean No Include completed/cancelled issues (default false).
limit integer No Max issues (default 25, max 100).

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {},
"tool": "linear_search_issues"
}

Move a Linear issue to a workflow state by name (e.g. ‘In Review’, ‘Done’). Call it WITHOUT state first to see the states that issue’s team actually allows — state names are per-team and cannot be guessed. WRITE: requires the user to have enabled Linear writes for this run, and only works on issues in the workspace they connected.

Parameter Type Required Description
issue string Yes Linear issue identifier such as ‘ENG-123’, or UUID.
state string No Target workflow state name. Omit to list the allowed states instead.

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"issue": "your-issue"
},
"tool": "linear_set_issue_state"
}

Proactive advice from Max from QualityMax — the platform’s always-on companion. Returns your pending and recent proactive notes (things Max noticed about your projects, test runs, and crawls). Pass refresh=true to have Max look at your current platform state right now and produce a fresh note if there is something genuinely worth saying. Requires Max to be enabled for MCP by an owner and your own stored consent.

Parameter Type Required Description
refresh boolean No Run a fresh observation pass for your account before returning notes.

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {},
"tool": "max_advice"
}

Create a Pull Request on the linked GitHub repository that adds a GitHub Actions workflow file running the project’s test suite. Auto-detects the framework from the repo’s analyzed languages (playwright / pytest / go / rust) when omitted, and for Rust auto-detects apt packages from Cargo.lock (glib-sys→libglib2.0-dev, openssl-sys→libssl-dev, libxdo-sys→libxdo-dev, etc.) so the generated workflow builds on a bare ubuntu-latest runner. Requires the GitHub App to be installed on the target repo. Returns the PR URL, PR number, workflow file path, detected framework, and the apt packages that were injected.

Parameter Type Required Description
repo_id integer Yes Code repository ID in QualityMax.
framework string No Optional framework override. Leave unset to auto-detect from the repo’s language analysis. Accepts both CI-template names (playwright / pytest / jest / go / rust) and the canonical execution framework names (rust_cargo / go_test) — they are normalized to the CI naming internally.
target_branch string No Branch the generated workflow triggers on. Defaults to the repo’s default branch.
trigger_events array No Events to trigger the workflow. Only push, pull_request, and workflow_dispatch are supported.
test_suite string No Test suite to run — all (default), smoke, regression, custom.
browser string No Playwright-only. chromium (default), firefox, webkit.
base_url string No Optional BASE_URL to bake into the workflow.
include_manual_trigger boolean No Add a workflow_dispatch trigger so the workflow can be run manually.

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"repo_id": 1
},
"tool": "setup_cicd"
}

Trigger a full framework test execution for a project. The framework must already exist (tests added via accept_pending_tests or add_to_framework). Supports every registered framework — playwright, pytest, cypress, rust_cargo (cargo test), go_test (go test -json), k6, etc. The runner is picked from the project’s framework type; native (Rust/Go) runs execute via cargo/go and return normalized console_logs just like browser runs.

Parameter Type Required Description
project_id integer Yes Project ID to run framework tests for

The live registry does not declare a response schema. Expect a tool-specific JSON result and handle success, error, and result fields defensively.

{
"arguments": {
"project_id": 1
},
"tool": "trigger_framework_run"
}