@testkase/mcp-server 2.1.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,220 +1,187 @@
1
- # @testkase/mcp-server
2
-
3
- [![npm version](https://img.shields.io/npm/v/@testkase/mcp-server.svg)](https://www.npmjs.com/package/@testkase/mcp-server)
4
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
-
6
- Model Context Protocol (MCP) server for TestKase API. Enables AI agents like Claude Desktop and GitHub Copilot to manage the complete test management lifecycle — test cases, cycles, plans, execution, and reporting.
7
-
8
- ## Features
9
-
10
- - **Complete lifecycle** — test cases, cycles, plans, execution, and 40+ report types
11
- - **Stateless** — every tool takes `projectId` explicitly (no state management required)
12
- - **11 thoughtful tools** — fewer tools, broader coverage, designed for AI agents
13
- - **Structured JSON** — all responses are JSON (AI agents format for users)
14
- - **Secure** — PAT token authentication with auto-resolved organization
15
-
16
- ## Installation
17
-
18
- ### Global Installation (Recommended)
19
-
20
- ```bash
21
- npm install -g @testkase/mcp-server
22
- ```
23
-
24
- ### Local Installation
25
-
26
- ```bash
27
- npm install @testkase/mcp-server
28
- ```
29
-
30
- ## Quick Start
31
-
32
- ### 1. Get Your PAT Token
33
-
34
- 1. Log in to [TestKase](https://app.testkase.com)
35
- 2. Navigate to **Settings > Personal Access Tokens**
36
- 3. Click **"Generate New Token"**
37
- 4. Copy the token (starts with `xyz_`)
38
-
39
- ### 2. Configure Your AI Agent
40
-
41
- #### For Claude Desktop
42
-
43
- Edit your Claude config file:
44
- - **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
45
- - **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
46
-
47
- ```json
48
- {
49
- "mcpServers": {
50
- "testkase": {
51
- "command": "npx",
52
- "args": ["-y", "@testkase/mcp-server"],
53
- "env": {
54
- "TESTKASE_API_BASE_URL": "https://apiqa.testkase.com",
55
- "TESTKASE_PAT_TOKEN": "xyz_your_pat_token_here"
56
- }
57
- }
58
- }
59
- }
60
- ```
61
-
62
- #### For GitHub Copilot (VS Code)
63
-
64
- Edit your Copilot config file:
65
- - **Windows**: `%APPDATA%\Code\User\globalStorage\github.copilot\mcp.json`
66
- - **macOS**: `~/Library/Application Support/Code/User/globalStorage/github.copilot/mcp.json`
67
-
68
- ```json
69
- {
70
- "mcpServers": {
71
- "testkase": {
72
- "command": "npx",
73
- "args": ["-y", "@testkase/mcp-server"],
74
- "env": {
75
- "TESTKASE_API_BASE_URL": "https://apiqa.testkase.com",
76
- "TESTKASE_PAT_TOKEN": "xyz_your_pat_token_here"
77
- }
78
- }
79
- }
80
- }
81
- ```
82
-
83
- ### 3. Restart Your AI Agent
84
-
85
- - **Claude Desktop**: Close and reopen completely
86
- - **VS Code**: Restart VS Code
87
-
88
- ### 4. Start Using!
89
-
90
- ```
91
- "List my projects"
92
- "Show test cases in project PRJ-1001"
93
- "Create a test cycle called 'Sprint 42 Regression' in project PRJ-1001"
94
- "Execute TEST-1 as pass and TEST-2 as fail in cycle TCYCLE-5"
95
- "Show me the execution summary report for project PRJ-1001"
96
- ```
97
-
98
- ## Available Tools (11)
99
-
100
- ### 1. `list_projects`
101
- List all projects the user has access to. Use this first to discover project IDs.
102
- - **Params:** `search?`, `page?`, `limit?`
103
-
104
- ### 2. `get_project_structure`
105
- Get folders, labels, and team members for a project.
106
- - **Params:** `projectId`, `section?` (TESTCASE|TEST_CYCLE|TEST_PLAN), `include?` (folders,labels,members)
107
-
108
- ### 3. `search_testcases`
109
- Search and list test cases with filters, sorting, and pagination.
110
- - **Params:** `projectId`, `search?`, `filters?`, `page?`, `limit?`, `sortBy?`, `sortOrder?`
111
-
112
- ### 4. `get_testcase`
113
- Get full details of a test case including test steps.
114
- - **Params:** `projectId`, `testcaseId`
115
-
116
- ### 5. `manage_testcase`
117
- Create, bulk create, update, or delete test cases.
118
- - **Actions:** `create`, `create_bulk`, `update`, `delete`
119
- - **Params:** `projectId`, `action`, + action-specific params (title, summary, priority, folder_id, labels, test_steps, testcases, ids, field, value)
120
-
121
- ### 6. `manage_folder`
122
- Create, rename, move, or delete folders across all sections.
123
- - **Actions:** `create`, `rename`, `move`, `delete`
124
- - **Params:** `projectId`, `action`, `section?`, `name?`, `folderId?`, `parentId?`
125
-
126
- ### 7. `search_test_cycles`
127
- List and search test cycles with execution progress.
128
- - **Params:** `projectId`, `search?`, `folderId?`, `status?`, `page?`, `limit?`
129
-
130
- ### 8. `manage_test_cycle`
131
- Full test cycle lifecycle management.
132
- - **Actions:** `create`, `update`, `delete`, `get_details`, `get_testcases`, `link_testcases`, `unlink_testcases`, `assign_testcases`
133
- - **Params:** `projectId`, `action`, `cycleId?`, + action-specific params
134
-
135
- ### 9. `execute_tests`
136
- Record test execution results (single or bulk). This is the most critical tool for test execution workflows.
137
- - **Params:** `projectId`, `cycleId`, `results` (JSON array with testcase_id, execution_status, actual_result?, environment?)
138
- - Auto-detects single vs bulk execution by array length
139
-
140
- ### 10. `manage_test_plan`
141
- Full test plan lifecycle management.
142
- - **Actions:** `create`, `update`, `delete`, `list`, `get_details`, `link_cycles`, `unlink_cycles`, `get_cycles`, `get_testcases`
143
- - **Params:** `projectId`, `action`, `planId?`, + action-specific params
144
-
145
- ### 11. `get_report`
146
- Unified reporting with 40+ report types covering execution, coverage, trends, team, defects, and AI insights.
147
- - **Params:** `projectId`, `report_type`, `test_cycle_ids?`, `test_plan_ids?`, `startDate?`, `endDate?`, `granularity?`
148
- - **Report types:** execution_summary, execution_by_cycle, execution_by_tester, execution_by_priority, execution_by_environment, execution_by_folder, requirement_coverage, traceability_matrix, failed_requirements, uncovered_requirements, testcase_coverage, unlinked_testcases, defects_by_folder, tester_workload, testcase_distribution, execution_trend, execution_burnup, execution_burndown, test_creation, cycle_comparison, scorecard_by_folder, scorecard_by_tester, created_vs_executed, execution_by_automation, defects_by_cycle, defects_by_tester, requirement_coverage_trend, flaky_tests, release_readiness, risk_heatmap_folder, risk_heatmap_feature, testcase_quality, predictive_failure, smart_prioritization, tester_effectiveness, stale_tests, defect_hotspots, cycle_health, suite_optimization, requirement_risk_matrix, execution_velocity, project_health
149
-
150
- ## Configuration
151
-
152
- ### Environment Variables
153
-
154
- - **`TESTKASE_API_BASE_URL`**: API base URL (default: `https://apiqa.testkase.com`)
155
- - **`TESTKASE_PAT_TOKEN`**: Your Personal Access Token (required)
156
-
157
- ### Using with Different Environments
158
-
159
- **Production:**
160
- ```json
161
- "env": {
162
- "TESTKASE_API_BASE_URL": "https://api.testkase.com",
163
- "TESTKASE_PAT_TOKEN": "xyz_your_token"
164
- }
165
- ```
166
-
167
- **Local Development:**
168
- ```json
169
- "env": {
170
- "TESTKASE_API_BASE_URL": "http://localhost:8080",
171
- "TESTKASE_PAT_TOKEN": "xyz_your_token"
172
- }
173
- ```
174
-
175
- ## Migration from v2.0
176
-
177
- v2.1 is a redesign of the tool surface. Key changes:
178
-
179
- | v2 (14 tools) | v3 (11 tools) |
180
- |---|---|
181
- | `get_my_projects` + `set_active_project` + `get_active_project` | `list_projects` (stateless) |
182
- | `get_folders` + `get_labels` | `get_project_structure` (combined) |
183
- | `get_testcases` | `search_testcases` |
184
- | `get_testcase_detail` | `get_testcase` |
185
- | `create_testcase` + `create_bulk_testcase` + `update_testcase_field` + `delete_testcase` | `manage_testcase` (action-based) |
186
- | `create_folder` | `manage_folder` (full CRUD, all sections) |
187
- | N/A | `search_test_cycles` (NEW) |
188
- | N/A | `manage_test_cycle` (NEW) |
189
- | N/A | `execute_tests` (NEW) |
190
- | N/A | `manage_test_plan` (NEW) |
191
- | N/A | `get_report` (NEW - 40+ report types) |
192
-
193
- ## Troubleshooting
194
-
195
- ### "Authentication required" error
196
- - Verify your PAT token is correct and starts with `xyz_`
197
- - Check that the token hasn't been revoked or expired
198
-
199
- ### Tool not showing up
200
- 1. Restart your AI agent completely
201
- 2. Check the config file path is correct
202
- 3. Verify the JSON syntax is valid
203
-
204
- ### API connection issues
205
- - Check that the API base URL is correct
206
- - Verify the TestKase API is accessible
207
-
208
- ## Documentation
209
-
210
- - [TestKase Documentation](https://docs.testkase.com)
211
- - [Model Context Protocol](https://modelcontextprotocol.io)
212
-
213
- ## Support
214
-
215
- - Email: support@testkase.com
216
- - Website: [testkase.com](https://testkase.com)
217
-
218
- ## License
219
-
220
- MIT
1
+ <p align="center">
2
+ <a href="https://testkase.com">
3
+ <img src="https://testkase.com/logo.png" alt="TestKase" width="120" />
4
+ </a>
5
+ </p>
6
+
7
+ <h3 align="center">@testkase/mcp-server</h3>
8
+
9
+ <p align="center">
10
+ Official MCP server for <a href="https://testkase.com">TestKase</a> — connect your AI agent to a complete test management platform.
11
+ </p>
12
+
13
+ <p align="center">
14
+ <a href="https://www.npmjs.com/package/@testkase/mcp-server"><img src="https://img.shields.io/npm/v/@testkase/mcp-server.svg?style=flat-square" alt="npm version" /></a>
15
+ <a href="https://www.npmjs.com/package/@testkase/mcp-server"><img src="https://img.shields.io/npm/dm/@testkase/mcp-server.svg?style=flat-square" alt="npm downloads" /></a>
16
+ <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square" alt="MIT License" /></a>
17
+ </p>
18
+
19
+ ---
20
+
21
+ ## What is this?
22
+
23
+ This package gives AI agents — Claude Desktop, GitHub Copilot, Cursor, or any [MCP](https://modelcontextprotocol.io)-compatible client — full access to your TestKase projects. Your agent can create test cases, run test cycles, record execution results, and pull reports, all through natural language.
24
+
25
+ **11 tools. Zero config beyond a token. Works out of the box.**
26
+
27
+ ## Quick Start
28
+
29
+ ### 1. Get a PAT token
30
+
31
+ Log in to [TestKase](https://app.testkase.com) > **Settings** > **Personal Access Tokens** > **Generate New Token**
32
+
33
+ ### 2. Add to your AI agent
34
+
35
+ <details>
36
+ <summary><strong>Claude Desktop</strong></summary>
37
+
38
+ Edit your config file:
39
+ - **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
40
+ - **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
41
+
42
+ ```json
43
+ {
44
+ "mcpServers": {
45
+ "testkase": {
46
+ "command": "npx",
47
+ "args": ["-y", "@testkase/mcp-server"],
48
+ "env": {
49
+ "TESTKASE_API_BASE_URL": "https://api.testkase.com",
50
+ "TESTKASE_PAT_TOKEN": "xyz_your_token_here"
51
+ }
52
+ }
53
+ }
54
+ }
55
+ ```
56
+ </details>
57
+
58
+ <details>
59
+ <summary><strong>GitHub Copilot (VS Code)</strong></summary>
60
+
61
+ Edit your config file:
62
+ - **Windows:** `%APPDATA%\Code\User\globalStorage\github.copilot\mcp.json`
63
+ - **macOS:** `~/Library/Application Support/Code/User/globalStorage/github.copilot/mcp.json`
64
+
65
+ ```json
66
+ {
67
+ "mcpServers": {
68
+ "testkase": {
69
+ "command": "npx",
70
+ "args": ["-y", "@testkase/mcp-server"],
71
+ "env": {
72
+ "TESTKASE_API_BASE_URL": "https://api.testkase.com",
73
+ "TESTKASE_PAT_TOKEN": "xyz_your_token_here"
74
+ }
75
+ }
76
+ }
77
+ }
78
+ ```
79
+ </details>
80
+
81
+ <details>
82
+ <summary><strong>Claude Code (CLI)</strong></summary>
83
+
84
+ ```bash
85
+ claude mcp add testkase -e TESTKASE_API_BASE_URL=https://api.testkase.com -e TESTKASE_PAT_TOKEN=xyz_your_token_here -- npx -y @testkase/mcp-server
86
+ ```
87
+ </details>
88
+
89
+ <details>
90
+ <summary><strong>Cursor</strong></summary>
91
+
92
+ Add to `.cursor/mcp.json` in your project root:
93
+
94
+ ```json
95
+ {
96
+ "mcpServers": {
97
+ "testkase": {
98
+ "command": "npx",
99
+ "args": ["-y", "@testkase/mcp-server"],
100
+ "env": {
101
+ "TESTKASE_API_BASE_URL": "https://api.testkase.com",
102
+ "TESTKASE_PAT_TOKEN": "xyz_your_token_here"
103
+ }
104
+ }
105
+ }
106
+ }
107
+ ```
108
+ </details>
109
+
110
+ ### 3. Restart your agent and start talking
111
+
112
+ ```
113
+ "List my projects"
114
+ "Create a login test case in PRJ-1001 with steps"
115
+ "Run TEST-1 as pass in cycle TCYCLE-5"
116
+ "Show me the execution summary for PRJ-1001"
117
+ ```
118
+
119
+ ---
120
+
121
+ ## Tools
122
+
123
+ | Tool | Description |
124
+ |------|-------------|
125
+ | `list_projects` | List all accessible projects |
126
+ | `get_project_structure` | Get folders, labels, members, and field options for a project |
127
+ | `search_testcases` | Search test cases with filters, sorting, and pagination |
128
+ | `get_testcase` | Get full test case details including steps |
129
+ | `manage_testcase` | Create, bulk create, update, or delete test cases |
130
+ | `manage_folder` | Create, rename, move, or delete folders (all sections) |
131
+ | `search_test_cycles` | Search test cycles with execution progress |
132
+ | `manage_test_cycle` | Full cycle lifecycle — CRUD, link/unlink/assign test cases |
133
+ | `execute_tests` | Record execution results (single or bulk) |
134
+ | `manage_test_plan` | Full plan lifecycle — CRUD, link/unlink cycles, view test cases |
135
+ | `get_report` | Pull from 40+ report types (see below) |
136
+
137
+ ### Reporting
138
+
139
+ `get_report` covers execution, coverage, trends, team, defect, and AI-powered report types:
140
+
141
+ | Category | Report Types |
142
+ |----------|-------------|
143
+ | **Execution** | `execution_summary`, `execution_by_cycle`, `execution_by_tester`, `execution_by_priority`, `execution_by_environment`, `execution_by_folder`, `execution_by_automation` |
144
+ | **Coverage** | `requirement_coverage`, `traceability_matrix`, `failed_requirements`, `uncovered_requirements`, `testcase_coverage`, `unlinked_testcases` |
145
+ | **Trends** | `execution_trend`, `execution_burnup`, `execution_burndown`, `test_creation`, `requirement_coverage_trend`, `execution_velocity` |
146
+ | **Comparison** | `cycle_comparison`, `created_vs_executed`, `scorecard_by_folder`, `scorecard_by_tester` |
147
+ | **Team** | `tester_workload`, `testcase_distribution`, `tester_effectiveness` |
148
+ | **Defects** | `defects_by_cycle`, `defects_by_tester`, `defects_by_folder`, `defect_hotspots` |
149
+ | **AI Insights** | `predictive_failure`, `smart_prioritization`, `testcase_quality`, `stale_tests`, `flaky_tests`, `suite_optimization` |
150
+ | **Risk & Release** | `release_readiness`, `risk_heatmap_folder`, `risk_heatmap_feature`, `requirement_risk_matrix`, `cycle_health`, `project_health` |
151
+
152
+ ---
153
+
154
+ ## Configuration
155
+
156
+ | Variable | Required | Default | Description |
157
+ |----------|----------|---------|-------------|
158
+ | `TESTKASE_PAT_TOKEN` | Yes | — | Personal Access Token (starts with `xyz_`) |
159
+ | `TESTKASE_API_BASE_URL` | No | `https://api.testkase.com` | API endpoint |
160
+
161
+ ---
162
+
163
+ ## Troubleshooting
164
+
165
+ | Problem | Solution |
166
+ |---------|----------|
167
+ | "Authentication required" | Verify your token starts with `xyz_` and hasn't expired |
168
+ | Tool not showing up | Restart your AI agent completely; check JSON syntax in config |
169
+ | API connection errors | Verify `TESTKASE_API_BASE_URL` is reachable |
170
+
171
+ ---
172
+
173
+ ## Links
174
+
175
+ - [TestKase](https://testkase.com) — Product website
176
+ - [Documentation](https://docs.testkase.com) — Full platform docs
177
+ - [MCP Protocol](https://modelcontextprotocol.io) — Model Context Protocol spec
178
+
179
+ ## License
180
+
181
+ MIT
182
+
183
+ ---
184
+
185
+ <p align="center">
186
+ Built by <a href="https://testkase.com">TestKase</a>
187
+ </p>