
Qase MCP Server: Setup for Claude, Cursor and Other Apps
Lets Claude, Cursor and other assistants read and write your Qase test cases, runs, results and defects.
Qase's own MCP server lets your assistant work with your Qase projects: read and create test cases, set up runs, record results and file defects. You can connect to the hosted server with your Qase login, or run it yourself with an API token. It can also delete cases, runs and whole projects, so connect it to an account that suits what you want the assistant to change.
Good for
- QA engineers who write and organize test cases with an assistant
- Teams that report CI results into Qase runs
- Test leads who triage failures into defects and set up regression runs
Works in
14 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports hosted MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports hosted MCP servers.
Install Qase Test Management MCP
ChatGPT
- 1
Open Settings, then MCPs, then Add server.
- 2
Enter https://mcp.qase.io/mcp exactly, without quotes (use https://mcp-eu.qase.io/mcp on the EU cluster).
- 3
Click Authenticate and sign in to Qase.
Requires Paid Qase plan.
Qase's connect guide labels its first route "ChatGPT / Codex app" and gives no steps for ChatGPT's own Apps & Connectors screen, so the Developer mode steps are generated, not documented by Qase. The hosted server rejects tool calls on the Qase Free plan.
From the vendor's docs. Source.
Tools
Fetches one Qase item by type and ID
Reads a single case, suite, run, result, plan, defect, milestone, environment, shared step, review, user or similar item. You can ask for only some fields.
Try: “Show me test case 42 in project DEMO.”
Read ·
qase_getGives the full layout of a project in one call
Returns a project's details, suite tree, milestones, environments, custom fields and users, first 100 of each by default, and caches it for 5 minutes. Best first call when you start work on a project.
Try: “Show me the structure of project DEMO.”
Read ·
qase_project_contextSearches with Qase's query language
Runs a Qase Query Language search across cases, runs, results, defects and plans, including counts and cross-project queries.
Try: “Find all failed results from the last 7 days in project DEMO.”
Read ·
qql_searchExplains the query language
Returns one section of the QQL reference, such as syntax, entities or examples, so the assistant can write a correct query.
Try: “Show me the QQL operators.”
Read ·
qql_helpCreates or updates a test case
Creates a test case, or updates it when you give an ID. Priority, severity and other fields accept labels like "high" and are matched to your workspace settings.
Try: “Create a high-priority smoke test titled "Login with valid credentials" in DEMO.”
Write ·
qase_case_upsertCreates up to 100 test cases at once
Creates many cases in one request, for imports or generated suites. It only creates, and returns the new IDs in order.
Try: “Create these 20 login test cases in DEMO.”
Write ·
qase_case_bulk_createDeletes a test case
Deletes one case and its execution history. It cannot be undone, and each call asks you to confirm.
Try: “Delete case 17 in DEMO.”
Delete ·
qase_case_deleteCreates or updates a defect
Creates a defect, or updates one by ID, including setting its status to resolved.
Try: “Resolve defect 8 in DEMO.”
Write ·
qase_defect_upsertDeletes a defect
Deletes one defect by project code and ID, after asking you to confirm.
Try: “Delete defect 8 in DEMO.”
Delete ·
qase_defect_deleteCreates or updates a test run
Creates a run, or updates one by ID. You can set its cases, environment, milestone, plan, tags and times.
Try: “Create a run called "Sprint 12 smoke" in DEMO with cases 1 to 10.”
Write ·
qase_run_upsertMarks a test run as complete
Closes a run so no more results are expected.
Try: “Complete run 42 in DEMO.”
Write ·
qase_run_completeDeletes a test run
Deletes one run, after asking you to confirm.
Try: “Delete run 42 in DEMO.”
Delete ·
qase_run_deleteRecords test results into a run
Adds one or more results (passed, failed, blocked, skipped, invalid) to a run, up to 200 per call. Results are append-only, so a long list is refused rather than split.
Try: “Record case 1 as passed and case 2 as failed with "timeout" in run 42.”
Write ·
qase_result_recordDeletes a test result
Deletes one result by run ID and result hash, after asking you to confirm.
Try: “Delete the last result in run 42.”
Delete ·
qase_result_deleteCreates or updates a test suite
Creates a suite, or updates one by ID. A parent suite ID nests it.
Try: “Create a suite called "Checkout" in DEMO.”
Write ·
qase_suite_upsertDeletes a test suite
Deletes a suite. If you set delete_cases, every case in it is deleted too. Otherwise the cases move to the parent suite.
Try: “Delete the Legacy suite in DEMO and keep its cases.”
Delete ·
qase_suite_deleteCreates or updates a milestone
Creates a milestone, or updates one by ID, with status and due date.
Try: “Create a milestone "Release 4.2" due on December 1.”
Write ·
qase_milestone_upsertDeletes a milestone
Deletes one milestone by project code and ID, after asking you to confirm.
Try: “Delete milestone 3 in DEMO.”
Delete ·
qase_milestone_deleteCreates or updates a test plan
Creates a plan from a list of case IDs, or updates one by ID.
Try: “Create a plan "Regression" with the cases in the Checkout suite.”
Write ·
qase_plan_upsertDeletes a test plan
Deletes one plan by project code and ID, after asking you to confirm.
Try: “Delete plan 5 in DEMO.”
Delete ·
qase_plan_deleteCreates or updates a reusable step
Creates a shared step that many test cases can include, or updates one by its hash.
Try: “Create a shared step "Log in as admin".”
Write ·
qase_shared_step_upsertDeletes a shared step
Deletes one shared step by its hash, after asking you to confirm.
Try: “Delete the shared step "Log in as admin".”
Delete ·
qase_shared_step_deleteCreates or updates a test environment
Creates an environment with a slug and host, or updates one by ID.
Try: “Create a staging environment at staging.example.com.”
Write ·
qase_environment_upsertDeletes a test environment
Deletes one environment by project code and ID, after asking you to confirm.
Try: “Delete environment 2 in DEMO.”
Delete ·
qase_environment_deleteUploads files and returns their hashes
Uploads up to 20 files (32 MB each) and returns hashes that other tools accept in attachment fields. Local servers can read a file path; the hosted server takes base64 content.
Try: “Upload screenshot.png and attach it to defect 8.”
Write ·
qase_attachment_uploadDeletes an attachment
Deletes one attachment by its hash, after asking you to confirm.
Try: “Delete attachment abc123.”
Delete ·
qase_attachment_deleteLinks or unlinks cases and runs to Jira issues
Attaches test cases or runs to Jira Cloud or Jira Server issues, or detaches them. A run can have only one link, and a new one replaces the old.
Try: “Link case 17 to Jira issue PROJ-1234.”
Delete ·
qase_external_issue_linkProposes a new case or a change for review
Opens a review for a new case, or for edits to an existing one, and can assign reviewers. Approving and merging are only possible in the Qase web app.
Try: “Open a review for the new login case and assign Dana.”
Write ·
qase_review_createChanges a review proposal or its reviewers
Edits the proposal, reassigns reviewers, or both. Changing the proposal resets approvals already given.
Try: “Add Sam as a reviewer on review 9.”
Write ·
qase_review_updateLists reviews
Lists reviews filtered by status, type, case, author or reviewer, with per-reviewer approval status.
Try: “List open reviews in DEMO.”
Read ·
qase_review_listDeletes a review
Removes a review proposal. It does not decline it, and merged reviews cannot be deleted.
Try: “Delete review 9.”
Delete ·
qase_review_deleteOpens several reviews at once
Opens many reviews in one request. One invalid item rejects the whole batch.
Try: “Open reviews for these five new cases.”
Write ·
qase_review_bulk_createReports a whole CI run in one call
Creates a run, records all results (up to 2000, split automatically) and by default completes the run.
Try: “Report these CI results for DEMO: case 1 passed, case 2 failed.”
Write ·
qase_ci_reportSets up a regression run in one call
Creates a run and adds cases chosen by suite IDs, case IDs or a plan.
Try: “Create a regression run from the Checkout and Login suites.”
Write ·
qase_regression_runCreates a defect from a test failure
Creates a defect from a failure. Title, actual result and severity are required, and failing results are described in the text.
Try: “Create a critical defect for the login timeout in run 42.”
Write ·
qase_triage_defectCalls any Qase REST endpoint
Sends a GET, POST, PUT, PATCH or DELETE to a /v1/ path for things no other tool covers. A DELETE asks you to confirm.
Try: “Call GET /v1/project/DEMO/run.”
Delete ·
qase_apiSearches the tool list by task
Finds the right tool by what you want to do, by name or category.
Try: “Which tool creates a milestone?”
Read ·
qase_discover_toolsShows the full docs for one tool
Returns the argument details, limits and warnings for a named tool before it is used.
Try: “Show help for qase_run_upsert.”
Read ·
qase_tool_helpCreates or updates a custom field
Creates a workspace-wide custom field for cases, runs or defects, or updates one. The entity and type cannot change after creation.
Try: “Create a "Browser" dropdown field for cases.”
Write ·
qase_custom_field_upsertDeletes a custom field everywhere
Deletes a field from every project, with the values entered in it. It cannot be undone and asks you to confirm.
Try: “Delete the "Browser" custom field.”
Delete ·
qase_custom_field_deleteCreates a new project
Creates a project with a unique code of 2 to 10 characters. Title, code and access cannot be changed through the API afterwards.
Try: “Create a project SMOKE_01 called "Smoke tests".”
Write ·
qase_project_createDeletes a whole project
Deletes a project with every case, suite, run, result, defect and milestone in it. It cannot be undone and asks you to confirm.
Try: “Delete project SMOKE_01.”
Delete ·
qase_project_delete
Read from the source code
Permissions
high risk · 5 things to watch
High risk
It can create, change and delete Qase data, including deleting a whole project, and it has no read-only mode. Use an account or API token limited to the projects you want it to touch, and read each delete confirmation.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can delete cases, runs and whole projects
Thirteen tools delete data, and qase_project_delete removes a project with every case, run and result, with no trash. The docs say each delete asks you to confirm first, so read each prompt before approving. github.com
qase_api can call any Qase endpoint
This tool sends any method to any /v1/ path, so it reaches things the dedicated tools do not. A DELETE through it asks for confirmation like the other delete tools. github.com
The local token has full access to your account
The self-run server uses one Qase API token for every call. Use a token from an account that can only reach the projects you want the assistant to touch. github.com
Hosted server needs a paid plan
The hosted server rejects tool calls on the Free plan. Run the server yourself with an API token on Free, or on a dedicated instance. github.com
Local file upload reads files from your machine
On a local server, qase_attachment_upload can take a file path and send that file to Qase. The hosted server takes base64 content only. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Talks to | Qase API (api.qase.io, api-eu.qase.io or your own domain). mcp.qase.io or mcp-eu.qase.io when you use the hosted server |
|---|---|
| Sign-in and keys | Hosted: you sign in with your Qase account through OAuth. Local: QASE_API_TOKEN from your Qase API token page sits in your MCP client config. |
Questions
Is the Qase MCP server official?
Yes. It is published by Qase (qase-tms) in its own GitHub organization and is listed as an official Qase connector. It is the vendor's own server for its own product.
What is the Qase MCP server URL?
Use https://mcp.qase.io/mcp for the main cloud (app.qase.io) and https://mcp-eu.qase.io/mcp for the EU cluster (app-eu.qase.io). Pick the one your workspace is on.
Do I need an API key?
Not for the hosted server: you sign in with your Qase account. The local server needs a Qase API token in QASE_API_TOKEN, from your account settings. Set QASE_API_DOMAIN if your workspace is on the EU cluster or a dedicated instance.
Does it work on the Free plan?
Only if you run it yourself. The hosted server is available on every paid plan and rejects tool calls on Free. Running it locally with an API token works on every plan.
Can it delete things?
Yes. It can delete test cases, defects, runs, results, suites, milestones, plans, shared steps, environments, attachments, custom fields, reviews and whole projects. Each delete asks you to confirm first.
Can I use it read-only?
No read-only switch is documented. The read tools are separate from the write tools, but all of them are on by default. Use an account or token with limited access to the projects you share.
Can the assistant approve test case reviews?
No. The tools can open, update, list and delete reviews. Approving, requesting changes, merging and declining are only possible in the Qase web app.
Does it work with ChatGPT?
Not documented for ChatGPT's own custom connectors. Qase's connect guide lists Claude, Cursor, Codex and VS Code, and one entry for the "ChatGPT / Codex app" (Settings, MCPs, Add server, enter the URL, Authenticate). Any other client that supports remote servers with OAuth 2.1 can use the hosted URL, but Qase gives no ChatGPT Apps & Connectors steps.
Information
updated Nov 2, 2026
- Publisher
- Official
- Package
@qase/mcp-server- Registry
- npm
- Endpoint
https://mcp.qase.io/mcp- Transport
- stdio, Streamable HTTP
- Auth
- OAuth
- Version
- 3.0.4
- License
- MIT
- Last commit
- Oct 30, 2026
- Open issues
- 0
- Listed in
- Official MCP registry
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 6Hide
- github.com · github.com
- github.com · github.com
- github.com · github.com
- github.com · github.com
- github.com · github.com
- github.com · github.com