qase-tms/qase-mcp-server
If you are the rightful owner of qase-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Qase MCP Server is an official Model Context Protocol server designed to integrate AI assistants with the Qase Test Management Platform.
Qase MCP Server
Official Model Context Protocol (MCP) server for Qase Test Management Platform.
Overview
The Qase MCP Server provides seamless integration between AI assistants (Claude, Cursor, etc.) and the Qase Test Management Platform. It enables AI assistants to interact with your test cases, test runs, defects, and other Qase entities through a standardized protocol.
Features
- ✅ Complete Qase API Coverage - Access all Qase entities and operations
- ✅ QQL Support - Powerful Qase Query Language for advanced searches
- ✅ Type-Safe - Full TypeScript implementation with comprehensive validation
- ✅ Custom Domains - Support for enterprise custom domains
Supported Entities
The server provides tools for managing:
- Projects - Create and manage test projects
- Test Cases - Create, update, and organize test cases
- Test Suites - Organize tests into hierarchical suites
- Test Runs - Execute test runs and track progress
- Test Results - Record and analyze test execution results
- Test Plans - Define and manage test plans
- Defects - Track and manage bugs
- Milestones - Organize work by sprints/releases
- Environments - Manage test environments
- Shared Steps - Create reusable test steps
- Shared Parameters - Define reusable test data
- Attachments - Upload and manage files
- Custom Fields - Define custom metadata
- Configurations - Manage test configurations
- Users - User management operations
- QQL Search - Advanced cross-project queries
Installation
Prerequisites
- Node.js 18+
- Qase account with API token (Get your token)
Option 1: Install from NPM (Recommended)
npm install -g @qase/qase-mcp-server
Option 2: Install from Source (Development)
# Clone the repository
git clone https://github.com/qase-tms/qase-mcp-server.git
cd qase-mcp-server
# Install dependencies
npm install
# Build the server
npm run build
Configuration
Environment Variables
Create a .env
file or set environment variables:
# Required: Your Qase API token
QASE_API_TOKEN=your_api_token_here
# Optional: Custom API domain for enterprise customers
QASE_API_DOMAIN=api.qase.io
Get your API token from: https://app.qase.io/user/api/token
Custom Domains (Enterprise)
If you're using Qase Enterprise with a custom domain:
QASE_API_DOMAIN=api.yourcompany.qase.io
Integration
Claude Desktop
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"qase": {
"command": "npx",
"args": ["-y", "@qase/mcp-server"],
"env": {
"QASE_API_TOKEN": "your_api_token_here"
}
}
}
}
Or, if installed from source:
{
"mcpServers": {
"qase": {
"command": "node",
"args": ["/absolute/path/to/qase-mcp-server/build/index.js"],
"env": {
"QASE_API_TOKEN": "your_api_token_here"
}
}
}
}
Cursor
- Open Cursor Settings
- Navigate to MCP settings
- Add the Qase MCP server:
{
"mcpServers": {
"qase": {
"command": "npx",
"args": ["-y", "@qase/mcp-server"],
"env": {
"QASE_API_TOKEN": "your_api_token_here"
}
}
}
}
Claude Code
In Claude Code, the server can be configured similarly to Claude Desktop.
Add to your MCP configuration:
{
"mcpServers": {
"qase": {
"command": "npx",
"args": ["-y", "@qase/mcp-server"],
"env": {
"QASE_API_TOKEN": "your_api_token_here"
}
}
}
}
Usage Examples
Basic Operations
List All Projects
Can you list all my Qase projects?
Create a Test Case
Create a test case in project DEMO titled "Login with valid credentials" with steps for entering username, password, and clicking login
Search with QQL
Find all failed test results from the last 7 days in project DEMO
Advanced QQL Queries
Find Flaky Tests
Search for all flaky test cases in project DEMO that are not automated
The server will execute:
entity = "case" and project = "DEMO" and isFlaky = true and automation = "Not automated"
Find Open Blocker Defects
Show me all open blocker defects in project DEMO
Find Tests by Author
Find all test cases created by john@example.com in the last month
Working with Test Runs
Create and Execute a Test Run
Create a test run in project DEMO called "Sprint 24 Regression" including all test cases from the "Authentication" suite, then add a passed result for case ID 123
Available Tools
Projects (6 tools)
list_projects
- Get all projectsget_project
- Get project detailscreate_project
- Create new projectdelete_project
- Delete projectgrant_project_access
- Grant user/group accessrevoke_project_access
- Revoke access
Test Cases (8 tools)
list_cases
- List all test casesget_case
- Get test case detailscreate_case
- Create new test caseupdate_case
- Update test casedelete_case
- Delete test casebulk_create_cases
- Create multiple casesattach_external_issue
- Link external issue (Jira, etc.)detach_external_issue
- Unlink external issue
Test Runs (7 tools)
list_runs
- List test runsget_run
- Get run detailscreate_run
- Create new rundelete_run
- Delete runcomplete_run
- Mark run as completeget_run_public_link
- Get public linkdelete_run_public_link
- Remove public link
Test Results (6 tools)
list_results
- List test resultsget_result
- Get result detailscreate_result
- Create test resultcreate_results_bulk
- Create multiple resultsupdate_result
- Update resultdelete_result
- Delete result
Test Plans (5 tools)
list_plans
- List test plansget_plan
- Get plan detailscreate_plan
- Create test planupdate_plan
- Update test plandelete_plan
- Delete test plan
Suites (5 tools)
list_suites
- List suitesget_suite
- Get suite detailscreate_suite
- Create suiteupdate_suite
- Update suitedelete_suite
- Delete suite
Defects (7 tools)
list_defects
- List defectsget_defect
- Get defect detailscreate_defect
- Create defectupdate_defect
- Update defectdelete_defect
- Delete defectresolve_defect
- Mark as resolvedupdate_defect_status
- Update status
Milestones (5 tools)
list_milestones
- List milestonesget_milestone
- Get milestone detailscreate_milestone
- Create milestoneupdate_milestone
- Update milestonedelete_milestone
- Delete milestone
Environments (5 tools)
list_environments
- List environmentsget_environment
- Get environment detailscreate_environment
- Create environmentupdate_environment
- Update environmentdelete_environment
- Delete environment
Shared Steps (5 tools)
list_shared_steps
- List shared stepsget_shared_step
- Get shared step detailscreate_shared_step
- Create shared stepupdate_shared_step
- Update shared stepdelete_shared_step
- Delete shared step
Shared Parameters (5 tools)
list_shared_parameters
- List parametersget_shared_parameter
- Get parameter detailscreate_shared_parameter
- Create parameterupdate_shared_parameter
- Update parameterdelete_shared_parameter
- Delete parameter
Supporting Entities
- Attachments (4 tools) - File management
- Authors (2 tools) - Author information
- Custom Fields (5 tools) - Custom field management
- System Fields (1 tool) - System field info
- Configurations (3 tools) - Configuration management
- Users (2 tools) - User management
QQL Search (2 tools)
qql_search
- Execute QQL queryqql_help
- Get QQL syntax help
Total: 83 tools available
Development
Building from Source
npm run build
Running Tests
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Watch mode
npm run test:watch
Linting
# Check for issues
npm run lint
# Auto-fix issues
npm run lint -- --fix
Debugging
Use the MCP Inspector for interactive debugging:
npm run inspector
Set your API token when prompted, then interact with tools in the inspector UI.
Troubleshooting
Authentication Errors
Error: Authentication failed: Please check your QASE_API_TOKEN
Solution:
- Verify your API token is correct: https://app.qase.io/user/api/token
- Ensure the token is set in your environment or config file
- Check for extra spaces or quotes in the token value
Connection Errors
Error: Network error
or ECONNREFUSED
Solution:
- Check your internet connection
- Verify the API domain is correct (especially for enterprise customers)
- Check if Qase is accessible: https://api.qase.io/v1/
Custom Domain Issues
Error: Invalid domain
or connection errors with custom domain
Solution:
- Ensure
QASE_API_DOMAIN
is set to just the domain (e.g.,api.company.qase.io
) - Don't include
https://
or/v1
in the domain - Verify with your Qase administrator
No Tools Showing in MCP Client
Error: MCP client shows "no tools, prompts or resources" or 0 tools available
Solution:
- Verify your MCP configuration has the correct command and arguments
- Check that
QASE_API_TOKEN
is set in theenv
section - Restart your MCP client completely (close and reopen)
- Check the MCP client logs for connection errors
- Verify the server is built:
npm run build
Tool Not Found
Error: Unknown tool: tool_name
Solution:
- Ensure you're using the latest version:
npm update -g @qase/mcp-server
- Check the tool name spelling matches the documentation
- Restart your MCP client after updating
Contributing
Contributions are welcome! Please see for details.
Development Guidelines
- Follow TypeScript best practices
- Add unit tests for new features
- Update documentation for new tools
- Ensure all tests pass:
npm test
- Ensure linting passes:
npm run lint
- Maintain code coverage above 70%
License
MIT License - see file for details
Links
- Qase Platform: https://qase.io
- Qase Documentation: https://help.qase.io
- API Documentation: https://developers.qase.io
- MCP Protocol: https://modelcontextprotocol.io
- Issue Tracker: https://github.com/qase-tms/qase-mcp-server/issues
Support
- Documentation: https://help.qase.io
- Email: support@qase.io
- GitHub Issues: https://github.com/qase-tms/qase-mcp-server/issues
Made with ❤️ by Qase