nfunc-mcp 0.1.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 +395 -0
- package/dist/config/qa-mcp-baseline.eslint.config.js +18 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -0
- package/dist/mappers/correlator.d.ts +28 -0
- package/dist/mappers/correlator.js +132 -0
- package/dist/mappers/correlator.js.map +1 -0
- package/dist/mappers/defectFormatter.d.ts +15 -0
- package/dist/mappers/defectFormatter.js +209 -0
- package/dist/mappers/defectFormatter.js.map +1 -0
- package/dist/mappers/priorityMapper.d.ts +6 -0
- package/dist/mappers/priorityMapper.js +37 -0
- package/dist/mappers/priorityMapper.js.map +1 -0
- package/dist/tools/accessibility.d.ts +2 -0
- package/dist/tools/accessibility.js +63 -0
- package/dist/tools/accessibility.js.map +1 -0
- package/dist/tools/lighthouse.d.ts +2 -0
- package/dist/tools/lighthouse.js +61 -0
- package/dist/tools/lighthouse.js.map +1 -0
- package/dist/tools/qaGate.d.ts +2 -0
- package/dist/tools/qaGate.js +383 -0
- package/dist/tools/qaGate.js.map +1 -0
- package/dist/tools/staticAnalysis.d.ts +2 -0
- package/dist/tools/staticAnalysis.js +172 -0
- package/dist/tools/staticAnalysis.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/eslintConfigDetector.d.ts +5 -0
- package/dist/utils/eslintConfigDetector.js +21 -0
- package/dist/utils/eslintConfigDetector.js.map +1 -0
- package/dist/utils/outputParsers.d.ts +56 -0
- package/dist/utils/outputParsers.js +184 -0
- package/dist/utils/outputParsers.js.map +1 -0
- package/dist/utils/reportGenerator.d.ts +21 -0
- package/dist/utils/reportGenerator.js +291 -0
- package/dist/utils/reportGenerator.js.map +1 -0
- package/dist/utils/shellRunner.d.ts +12 -0
- package/dist/utils/shellRunner.js +31 -0
- package/dist/utils/shellRunner.js.map +1 -0
- package/dist/utils/toolResponse.d.ts +12 -0
- package/dist/utils/toolResponse.js +26 -0
- package/dist/utils/toolResponse.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
function envelope(payload) {
|
|
2
|
+
return {
|
|
3
|
+
content: [{ type: "text", text: JSON.stringify(payload, null, 2) }],
|
|
4
|
+
isError: true,
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
// External tool ran but produced no usable stdout (missing output, wrong exit
|
|
8
|
+
// code, etc.). Use this when the failure is in the upstream process itself.
|
|
9
|
+
export function shellErrorResponse(reason, result) {
|
|
10
|
+
return envelope({
|
|
11
|
+
error: reason,
|
|
12
|
+
exitCode: result.exitCode,
|
|
13
|
+
durationMs: result.durationMs,
|
|
14
|
+
stderr: result.stderr.slice(0, 2000),
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
// External tool produced output but parsing/normalising it failed. Use this
|
|
18
|
+
// when we have stdout but it didn't conform to the expected shape.
|
|
19
|
+
export function parseErrorResponse(reason, err, result) {
|
|
20
|
+
return envelope({
|
|
21
|
+
error: reason,
|
|
22
|
+
message: err instanceof Error ? err.message : String(err),
|
|
23
|
+
stderrPreview: result.stderr.slice(0, 500),
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=toolResponse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolResponse.js","sourceRoot":"","sources":["../../src/utils/toolResponse.ts"],"names":[],"mappings":"AAQA,SAAS,QAAQ,CAAC,OAAgC;IAChD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QACnE,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,MAAmB;IAEnB,OAAO,QAAQ,CAAC;QACd,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;KACrC,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAC5E,mEAAmE;AACnE,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,GAAY,EACZ,MAAmB;IAEnB,OAAO,QAAQ,CAAC;QACd,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;QACzD,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;KAC3C,CAAC,CAAC;AACL,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "nfunc-mcp",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "MCP server for non-functional QA — Lighthouse, pa11y, ESLint, and Semgrep in parallel with cross-tool correlation and HTML reports",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"bin": {
|
|
8
|
+
"nfunc-mcp": "dist/index.js"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"dist",
|
|
12
|
+
"README.md"
|
|
13
|
+
],
|
|
14
|
+
"engines": {
|
|
15
|
+
"node": ">=18.0.0"
|
|
16
|
+
},
|
|
17
|
+
"scripts": {
|
|
18
|
+
"dev": "tsx watch src/index.ts",
|
|
19
|
+
"build": "tsc && mkdir -p dist/config && cp src/config/*.js dist/config/",
|
|
20
|
+
"start": "node dist/index.js",
|
|
21
|
+
"prepare": "npm run build"
|
|
22
|
+
},
|
|
23
|
+
"keywords": [
|
|
24
|
+
"mcp",
|
|
25
|
+
"qa",
|
|
26
|
+
"quality-assurance",
|
|
27
|
+
"lighthouse",
|
|
28
|
+
"pa11y",
|
|
29
|
+
"accessibility",
|
|
30
|
+
"wcag",
|
|
31
|
+
"eslint",
|
|
32
|
+
"semgrep",
|
|
33
|
+
"performance",
|
|
34
|
+
"non-functional-testing",
|
|
35
|
+
"claude",
|
|
36
|
+
"ai-tools"
|
|
37
|
+
],
|
|
38
|
+
"author": "Ajinkya Kunjir",
|
|
39
|
+
"license": "ISC",
|
|
40
|
+
"repository": {
|
|
41
|
+
"type": "git",
|
|
42
|
+
"url": "https://github.com/Hiddensound/NFunc_MCP.git"
|
|
43
|
+
},
|
|
44
|
+
"homepage": "https://github.com/Hiddensound/NFunc_MCP#readme",
|
|
45
|
+
"dependencies": {
|
|
46
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
47
|
+
"execa": "^9.6.1",
|
|
48
|
+
"zod": "^4.4.3"
|
|
49
|
+
},
|
|
50
|
+
"devDependencies": {
|
|
51
|
+
"@types/node": "^25.8.0",
|
|
52
|
+
"tsx": "^4.22.0",
|
|
53
|
+
"typescript": "^6.0.3"
|
|
54
|
+
}
|
|
55
|
+
}
|