imperial-mcp-qase 1.0.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.
@@ -0,0 +1,15 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(npm install:*)",
5
+ "Bash(npm run build:*)",
6
+ "Bash(QASE_API_TOKEN=test node:*)",
7
+ "Bash(QASE_API_TOKEN=e63b4898fd2610aeff00876902676a7fbcd7209ac0a594501882ce09c0c4a172 node:*)",
8
+ "Bash(curl:*)",
9
+ "Bash(python3:*)",
10
+ "Bash(npm whoami:*)",
11
+ "Bash(npm publish:*)",
12
+ "Bash(npm config set:*)"
13
+ ]
14
+ }
15
+ }
package/README.md ADDED
@@ -0,0 +1,208 @@
1
+ # Imperial MCP Qase
2
+
3
+ MCP (Model Context Protocol) server for Qase.io test management platform. Built by Imperial Healthtech for fast, seamless integration between Claude Code and Qase API.
4
+
5
+ ## Features
6
+
7
+ - **Test Cases**: List, get, create, update, and delete test cases
8
+ - **Defects**: Manage defects including create, update, resolve, and delete
9
+ - **Test Runs**: Create and manage test runs
10
+ - **Test Results**: Add and track test results
11
+
12
+ ## Installation
13
+
14
+ ```bash
15
+ npm install imperial-mcp-qase
16
+ ```
17
+
18
+ Or clone and build locally:
19
+
20
+ ```bash
21
+ git clone https://github.com/imperial-healthtech/imperial-mcp-qase.git
22
+ cd imperial-mcp-qase
23
+ npm install
24
+ npm run build
25
+ ```
26
+
27
+ ## Configuration
28
+
29
+ ### Get Your Qase API Token
30
+
31
+ 1. Log in to [Qase.io](https://qase.io)
32
+ 2. Go to **Settings** → **API Tokens**
33
+ 3. Create a new token with appropriate permissions
34
+
35
+ ### Configure Claude Code
36
+
37
+ Add to your Claude Code settings (`~/.claude/settings.json` or project `.claude/settings.json`):
38
+
39
+ ```json
40
+ {
41
+ "mcpServers": {
42
+ "qase": {
43
+ "command": "node",
44
+ "args": ["/path/to/imperial-mcp-qase/dist/index.js"],
45
+ "env": {
46
+ "QASE_API_TOKEN": "your_api_token_here"
47
+ }
48
+ }
49
+ }
50
+ }
51
+ ```
52
+
53
+ Or if installed globally via npm:
54
+
55
+ ```json
56
+ {
57
+ "mcpServers": {
58
+ "qase": {
59
+ "command": "npx",
60
+ "args": ["imperial-mcp-qase"],
61
+ "env": {
62
+ "QASE_API_TOKEN": "your_api_token_here"
63
+ }
64
+ }
65
+ }
66
+ }
67
+ ```
68
+
69
+ ## Available Tools
70
+
71
+ ### Test Cases (Priority 1)
72
+
73
+ | Tool | Description |
74
+ |------|-------------|
75
+ | `qase_list_cases` | List test cases in a project with optional filtering |
76
+ | `qase_get_case` | Get a single test case by ID |
77
+ | `qase_create_case` | Create a new test case |
78
+ | `qase_update_case` | Update an existing test case |
79
+ | `qase_delete_case` | Delete a test case |
80
+
81
+ ### Defects (Priority 2)
82
+
83
+ | Tool | Description |
84
+ |------|-------------|
85
+ | `qase_list_defects` | List defects in a project |
86
+ | `qase_get_defect` | Get a single defect by ID |
87
+ | `qase_create_defect` | Create a new defect |
88
+ | `qase_update_defect` | Update an existing defect |
89
+ | `qase_resolve_defect` | Mark a defect as resolved |
90
+ | `qase_delete_defect` | Delete a defect |
91
+
92
+ ### Test Runs (Priority 3)
93
+
94
+ | Tool | Description |
95
+ |------|-------------|
96
+ | `qase_list_runs` | List test runs in a project |
97
+ | `qase_get_run` | Get a single test run by ID |
98
+ | `qase_create_run` | Create a new test run |
99
+ | `qase_complete_run` | Complete/finish a test run |
100
+ | `qase_delete_run` | Delete a test run |
101
+
102
+ ### Test Results (Priority 3)
103
+
104
+ | Tool | Description |
105
+ |------|-------------|
106
+ | `qase_list_results` | List test results for a test run |
107
+ | `qase_get_result` | Get a single test result by hash |
108
+ | `qase_add_result` | Add a test result to a test run |
109
+ | `qase_add_results_bulk` | Add multiple test results at once |
110
+ | `qase_delete_result` | Delete a test result |
111
+
112
+ ## Usage Examples
113
+
114
+ ### List Test Cases
115
+
116
+ ```
117
+ List all test cases in project DEMO
118
+ ```
119
+
120
+ Claude will use `qase_list_cases` with `project_code: "DEMO"`.
121
+
122
+ ### Create a Test Case
123
+
124
+ ```
125
+ Create a new test case in DEMO project titled "Login Flow" with steps:
126
+ 1. Navigate to login page
127
+ 2. Enter credentials
128
+ 3. Click login button
129
+ ```
130
+
131
+ ### Add Test Result
132
+
133
+ ```
134
+ Add a passed result for case 123 in run 456 for project DEMO
135
+ ```
136
+
137
+ ### Create a Defect
138
+
139
+ ```
140
+ Create a defect in DEMO project: "Login button not working" with severity blocker
141
+ ```
142
+
143
+ ## Development
144
+
145
+ ```bash
146
+ # Install dependencies
147
+ npm install
148
+
149
+ # Development (watch mode)
150
+ npm run dev
151
+
152
+ # Build
153
+ npm run build
154
+
155
+ # Type check
156
+ npm run typecheck
157
+
158
+ # Test locally
159
+ echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | QASE_API_TOKEN=xxx node dist/index.js
160
+ ```
161
+
162
+ ## API Reference
163
+
164
+ This MCP server wraps the [Qase.io API v1](https://developers.qase.io/reference/).
165
+
166
+ ### Severity Levels
167
+
168
+ | Value | Level |
169
+ |-------|-------|
170
+ | 0 | Not set |
171
+ | 1 | Blocker |
172
+ | 2 | Critical |
173
+ | 3 | Major |
174
+ | 4 | Normal |
175
+ | 5 | Minor |
176
+ | 6 | Trivial |
177
+
178
+ ### Priority Levels
179
+
180
+ | Value | Level |
181
+ |-------|-------|
182
+ | 0 | Not set |
183
+ | 1 | High |
184
+ | 2 | Medium |
185
+ | 3 | Low |
186
+
187
+ ### Result Status
188
+
189
+ - `passed`
190
+ - `failed`
191
+ - `blocked`
192
+ - `skipped`
193
+ - `invalid`
194
+
195
+ ### Defect Status
196
+
197
+ - `open`
198
+ - `resolved`
199
+ - `in_progress`
200
+ - `invalid`
201
+
202
+ ## License
203
+
204
+ MIT
205
+
206
+ ## Author
207
+
208
+ Imperial Healthtech
@@ -0,0 +1 @@
1
+ #!/usr/bin/env node