@validate.qa/mcp 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.
- package/README.md +139 -0
- package/bin.cjs +10 -0
- package/dist/index.js +983 -0
- package/dist/index.js.map +1 -0
- package/package.json +32 -0
package/README.md
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# @validate.qa/mcp
|
|
2
|
+
|
|
3
|
+
MCP server for Validate.QA.
|
|
4
|
+
|
|
5
|
+
This package lets AI IDEs like Claude Code and Cursor connect directly to your
|
|
6
|
+
Validate.QA workspace over stdio. Your AI can create, edit, run, and heal tests
|
|
7
|
+
from inside the editor while Validate.QA handles execution, scheduling, and
|
|
8
|
+
reporting on the platform side.
|
|
9
|
+
|
|
10
|
+
## Requirements
|
|
11
|
+
|
|
12
|
+
- Node.js 18+
|
|
13
|
+
- A Validate.QA API URL
|
|
14
|
+
- A `pat_...` personal access token
|
|
15
|
+
- A Validate.QA project ID
|
|
16
|
+
|
|
17
|
+
## Quick Start
|
|
18
|
+
|
|
19
|
+
Run it directly with `npx`:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx @validate.qa/mcp \
|
|
23
|
+
--api-url https://api.myorg.validate.qa \
|
|
24
|
+
--token pat_xxxxxxxxxxxx \
|
|
25
|
+
--project-id proj_xxxxxxxxxxxx
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Or install it globally:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
npm install -g @validate.qa/mcp
|
|
32
|
+
|
|
33
|
+
validate-mcp \
|
|
34
|
+
--api-url https://api.myorg.validate.qa \
|
|
35
|
+
--token pat_xxxxxxxxxxxx \
|
|
36
|
+
--project-id proj_xxxxxxxxxxxx
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Required Arguments
|
|
40
|
+
|
|
41
|
+
- `--api-url`
|
|
42
|
+
Your Validate.QA API base URL, for example `https://api.myorg.validate.qa`
|
|
43
|
+
or `http://localhost:3001`.
|
|
44
|
+
- `--token`
|
|
45
|
+
A Validate.QA personal access token. For IDE usage, use a `pat_...` token.
|
|
46
|
+
- `--project-id`
|
|
47
|
+
The project the MCP server should scope all tool calls to.
|
|
48
|
+
|
|
49
|
+
## Configuration Resolution
|
|
50
|
+
|
|
51
|
+
The package resolves config in this order:
|
|
52
|
+
|
|
53
|
+
1. CLI args: `--api-url`, `--token`, `--project-id`
|
|
54
|
+
2. Environment variables: `VALIDATEQA_API_URL`, `VALIDATEQA_TOKEN`,
|
|
55
|
+
`VALIDATEQA_PROJECT_ID`
|
|
56
|
+
3. `.validateqa.json` in the current working directory
|
|
57
|
+
|
|
58
|
+
Example `.validateqa.json`:
|
|
59
|
+
|
|
60
|
+
```json
|
|
61
|
+
{
|
|
62
|
+
"apiUrl": "https://api.myorg.validate.qa",
|
|
63
|
+
"projectId": "proj_xxxxxxxxxxxx"
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
`token` is intentionally not read from `.validateqa.json`; pass it via CLI or
|
|
68
|
+
environment variable instead.
|
|
69
|
+
|
|
70
|
+
## Claude Code Example
|
|
71
|
+
|
|
72
|
+
Create `.mcp.json` in your repo:
|
|
73
|
+
|
|
74
|
+
```json
|
|
75
|
+
{
|
|
76
|
+
"mcpServers": {
|
|
77
|
+
"validate.qa": {
|
|
78
|
+
"command": "npx",
|
|
79
|
+
"args": [
|
|
80
|
+
"@validate.qa/mcp",
|
|
81
|
+
"--api-url",
|
|
82
|
+
"https://api.myorg.validate.qa",
|
|
83
|
+
"--token",
|
|
84
|
+
"pat_xxxxxxxxxxxx",
|
|
85
|
+
"--project-id",
|
|
86
|
+
"proj_xxxxxxxxxxxx"
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## Cursor Example
|
|
94
|
+
|
|
95
|
+
Create `.cursor/mcp.json` in your repo:
|
|
96
|
+
|
|
97
|
+
```json
|
|
98
|
+
{
|
|
99
|
+
"mcpServers": {
|
|
100
|
+
"validate.qa": {
|
|
101
|
+
"command": "npx",
|
|
102
|
+
"args": [
|
|
103
|
+
"@validate.qa/mcp",
|
|
104
|
+
"--api-url",
|
|
105
|
+
"https://api.myorg.validate.qa",
|
|
106
|
+
"--token",
|
|
107
|
+
"pat_xxxxxxxxxxxx",
|
|
108
|
+
"--project-id",
|
|
109
|
+
"proj_xxxxxxxxxxxx"
|
|
110
|
+
]
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Optional Init Helper
|
|
117
|
+
|
|
118
|
+
The package also includes a helper to write MCP config files for supported IDEs:
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
npx @validate.qa/mcp init \
|
|
122
|
+
--api-url https://api.myorg.validate.qa \
|
|
123
|
+
--token pat_xxxxxxxxxxxx \
|
|
124
|
+
--project-id proj_xxxxxxxxxxxx
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
This can create or update:
|
|
128
|
+
|
|
129
|
+
- `.mcp.json` for Claude Code
|
|
130
|
+
- `.cursor/mcp.json` for Cursor
|
|
131
|
+
- `.windsurf/mcp.json` for Windsurf
|
|
132
|
+
- `.vscode/mcp.json` for VS Code
|
|
133
|
+
|
|
134
|
+
## More Docs
|
|
135
|
+
|
|
136
|
+
- Full MCP guide:
|
|
137
|
+
[docs/MCP.md](https://github.com/Validate-QA/validate.qa/blob/main/docs/MCP.md)
|
|
138
|
+
- Package source:
|
|
139
|
+
[packages/mcp-server](https://github.com/Validate-QA/validate.qa/tree/main/packages/mcp-server)
|
package/bin.cjs
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// CommonJS wrapper for Windows compatibility — npx can't run ESM bin files on Windows
|
|
3
|
+
const { resolve } = require('path');
|
|
4
|
+
const { execFileSync } = require('child_process');
|
|
5
|
+
const entry = resolve(__dirname, 'dist', 'index.js');
|
|
6
|
+
try {
|
|
7
|
+
execFileSync('node', [entry, ...process.argv.slice(2)], { stdio: 'inherit' });
|
|
8
|
+
} catch (e) {
|
|
9
|
+
process.exit(e.status || 1);
|
|
10
|
+
}
|