servers / qase-mcp-server

@qase/mcp-server

communityunknownnpmwrite capablehealthy

Official MCP server for Qase Test Management Platform


01Tools · 14

How to read this: tool names here are observed from a live tools/list handshake. The Risk label is a heuristic inferred from the tool name (write/destructive verbs), not from executing the tool — a conservative guess, not a verified capability. We never escalate risk from a description. Found one that's wrong? Tell us — we fix on report.

ToolRiskSide effectsApproval
qase_case_upsert
Create or update a test case. If `id` is provided, updates the existing case; if omitted, creates a new one. Enum fields (priority, severity, type, etc.) accept both labels ("high", "blocker") and numeric IDs — the server normalizes automatically. If the project has "Test case review" enabled, changes may need to go through a review instead of being written directly — run qase_discover_tools with "review" for those tools.
unknownunknownunknown
qase_api
Direct Qase REST API call for endpoints not covered by other tools. Pass the HTTP method, path (starting with /v1/), and optional body/query. See https://developers.qase.io for API reference. Use this as an escape hatch when the dedicated tools do not cover your use case. Sends JSON only: it cannot upload files, which need multipart/form-data — use qase_attachment_upload for that.
readfalseunknown
qase_attachment_upload
Upload a file attachment and get back its hash, which the `attachments` field of qase_case_upsert, qase_result_record, qase_ci_report, qase_triage_defect, and qase_shared_step_upsert accepts. This is the only way to obtain such a hash — the upload endpoint needs multipart/form-data, which qase_api cannot send. Pass the file as base64 (`file_base64`), which is the only option when the server runs remotely, such as the hosted connector; `file_path` works only when the server runs on the same machine as the file.
writetrueunknown
qase_ci_report
Report CI/CD test results in one call: creates a run, records all results, and optionally completes the run. Replaces the 3-4 step manual workflow of create_run → bulk_create_results → complete_run. Designed for CI pipeline integration.
unknownunknownunknown
qase_defect_upsert
Create or update a defect. If `id` is provided, updates (including status changes and resolve). If omitted, creates a new defect. Set `status: "resolved"` to resolve an existing defect.
readfalseunknown
qase_regression_run
Set up a regression test run in one call. Accepts case selection by suite IDs, explicit case IDs, or plan ID. Creates the run and adds all matching cases. Replaces the multi-step workflow of find cases → create run → add cases.
writetrueunknown
qase_discover_tools
Search for and activate additional Qase tools. By default, only core tools are visible. Use this to find tools for specific needs: deletions, milestone management, attachments, etc. Found tools are automatically activated and become available for use.
readfalseunknown
qase_result_record
Record one or more test results into a run. Accepts an array of results — a single entry uses the single-result API, multiple entries use bulk. Each result must include a status; case_id is recommended.
readfalseunknown
qase_get
Get any Qase entity by type and ID. Supports field projection via the `fields` parameter. For project-scoped entities (case, suite, run, result, plan, defect, milestone, environment, shared_step, shared_parameter, configuration), `code` is required. For global entities (user, author, attachment, custom_field), `code` can be omitted.
readfalseunknown
qase_project_context
Get full project context in one call: project details, suites tree, milestones, environments, custom fields, and users. Cached for 5 minutes. Use this as the first call when starting work with a project — it seeds all the metadata the LLM needs without making 6 separate list calls. Each collection returns its first 100 entities by default; the `coverage` field reports `{ total, loaded, truncated }` per collection, so check it before assuming a list is complete. Pass `full: true` to page through everything.
readfalseunknown
qase_run_upsert
Create or update a test run. If `id` is provided, updates; if omitted, creates.
writetrueunknown
qase_triage_defect
Create a defect from a test failure. Requires title, actual_result, and severity. Note: the API offers no way to attach existing runs or results to a defect — the runs/results seen on a defect are populated by the test runner when a result is reported as a defect. Reference failing results in actual_result instead.
unknownunknownunknown
qql_help
Get one section of the Qase Query Language (QQL) reference. `topic` is required — ask for the section you need rather than the whole reference. Start with "entities" when you are unsure which fields an entity has (they differ per entity), "aggregation" to count or summarise without paging, and "enumValues" for valid field values.
readfalseunknown
qql_search
Search entities using Qase Query Language (QQL) with powerful filtering and cross-project queries
readfalseunknown

02Install & source
npx -y @qase/mcp-server
npx

05Provenance & freshness
sourcesnpm registry [p4]
last_checked2026-08-20 10:02Z
next_check2026-08-21 14:27Z
cadenceevery 29h
verifiedtools_list:passed handshake:passed metadata:passed
index_statusindex8 unique facts >= 5

06Badge

Add the “as seen on MCPExplorer” badge to your README. @qase/mcp-server MCP — as seen on mcpexplorer.com

[![@qase/mcp-server MCP — as seen on mcpexplorer.com](https://mcpexplorer.com/badge/qase-mcp-server.svg)](https://mcpexplorer.com/servers/qase-mcp-server)

Next step

This is one server. A loadout combines the right servers, governance, and proven plays for a whole job — assembled deliberately, not tool-dumped.

Explore loadouts →
@qase/mcp-server — MCPExplorer