@qase/mcp-server
v1.0.0
Published
Official MCP server for Qase Test Management Platform
Maintainers
Readme
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/mcp-serverOption 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 buildConfiguration
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.ioGet 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.ioIntegration
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 loginSearch with QQL
Find all failed test results from the last 7 days in project DEMOAdvanced QQL Queries
Find Flaky Tests
Search for all flaky test cases in project DEMO that are not automatedThe 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 DEMOFind Tests by Author
Find all test cases created by [email protected] in the last monthWorking 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 123Available 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 buildRunning Tests
# Run all tests
npm test
# Run with coverage
npm run test:coverage
# Watch mode
npm run test:watchLinting
# Check for issues
npm run lint
# Auto-fix issues
npm run lint -- --fixDebugging
Use the MCP Inspector for interactive debugging:
npm run inspectorSet 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_DOMAINis set to just the domain (e.g.,api.company.qase.io) - Don't include
https://or/v1in 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_TOKENis set in theenvsection - 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 CONTRIBUTING.md 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 LICENSE 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: [email protected]
- GitHub Issues: https://github.com/qase-tms/qase-mcp-server/issues
Made with ❤️ by Qase
