@bryan-thompson/inspector-assessment 1.43.2 → 1.43.4
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 +1062 -224
- package/cli/build/assess-full.js +532 -106
- package/cli/build/assess-security.js +54 -90
- package/cli/build/lib/cli-parser.js +14 -1
- package/cli/build/lib/cli-parserSchemas.js +1 -0
- package/cli/build/lib/result-output.js +21 -0
- package/cli/build/profiles.js +20 -0
- package/cli/build/validate-testbed.js +0 -0
- package/cli/package.json +1 -1
- package/client/dist/assets/{OAuthCallback-BS8-A1sU.js → OAuthCallback-Chi58kRc.js} +1 -1
- package/client/dist/assets/{OAuthDebugCallback-025_TM2i.js → OAuthDebugCallback-BluD_Wxg.js} +1 -1
- package/client/dist/assets/{index-DEhlIjy-.js → index-KW2LwGdp.js} +4 -4
- package/client/dist/index.html +1 -1
- package/client/lib/lib/assessment/configSchemas.d.ts +64 -64
- package/client/lib/lib/assessment/jsonlEventSchemas.d.ts +286 -286
- package/client/lib/lib/assessment/resultTypes.d.ts +10 -0
- package/client/lib/lib/assessment/resultTypes.d.ts.map +1 -1
- package/client/lib/lib/assessmentTypes.d.ts +1 -20
- package/client/lib/lib/assessmentTypes.d.ts.map +1 -1
- package/client/lib/lib/assessmentTypes.js +1 -20
- package/client/lib/services/assessment/AssessmentOrchestrator.d.ts +57 -104
- package/client/lib/services/assessment/AssessmentOrchestrator.d.ts.map +1 -1
- package/client/lib/services/assessment/AssessmentOrchestrator.js +298 -133
- package/client/lib/services/assessment/modules/ErrorHandlingAssessor.d.ts +25 -0
- package/client/lib/services/assessment/modules/ErrorHandlingAssessor.d.ts.map +1 -0
- package/client/lib/services/assessment/modules/ErrorHandlingAssessor.deprecated.js +1 -1
- package/client/lib/services/assessment/modules/ErrorHandlingAssessor.js +564 -0
- package/client/lib/services/assessment/modules/SecurityAssessor.d.ts +5 -0
- package/client/lib/services/assessment/modules/SecurityAssessor.d.ts.map +1 -1
- package/client/lib/services/assessment/modules/SecurityAssessor.js +62 -0
- package/client/lib/services/assessment/modules/index.d.ts +1 -1
- package/client/lib/services/assessment/modules/index.js +1 -1
- package/client/lib/services/assessment/modules/securityTests/SecurityPayloadTester.d.ts +15 -0
- package/client/lib/services/assessment/modules/securityTests/SecurityPayloadTester.d.ts.map +1 -1
- package/client/lib/services/assessment/modules/securityTests/SecurityPayloadTester.js +72 -0
- package/client/lib/services/assessment/modules/securityTests/factory.d.ts +2 -0
- package/client/lib/services/assessment/modules/securityTests/factory.d.ts.map +1 -1
- package/client/lib/services/assessment/modules/securityTests/factory.js +1 -0
- package/client/lib/services/assessment/registry/AssessorDefinitions.js +1 -1
- package/client/lib/services/assessment/responseValidatorSchemas.d.ts +12 -12
- package/client/package.json +3 -3
- package/package.json +4 -2
- package/server/package.json +1 -1
- package/cli/build/lib/__tests__/zodErrorFormatter.test.js +0 -282
- package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.d.ts +0 -109
- package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.d.ts.map +0 -1
- package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.d.ts +0 -109
- package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.d.ts.map +0 -1
- package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.js +0 -852
- package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.js +0 -852
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Protocol Compliance Assessor Module
|
|
3
|
-
*
|
|
4
|
-
* Unified module for MCP protocol compliance validation.
|
|
5
|
-
* Merges MCPSpecComplianceAssessor and ProtocolConformanceAssessor functionality.
|
|
6
|
-
*
|
|
7
|
-
* Protocol Checks:
|
|
8
|
-
* 1. JSON-RPC 2.0 Compliance - Validates request/response structure
|
|
9
|
-
* 2. Server Info Validity - Validates initialization handshake
|
|
10
|
-
* 3. Schema Compliance - Validates tool input schemas
|
|
11
|
-
* 4. Error Response Format - Validates isError flag, content array structure
|
|
12
|
-
* 5. Content Type Support - Validates valid content types (text, image, audio, resource)
|
|
13
|
-
* 6. Structured Output Support - Checks for outputSchema usage
|
|
14
|
-
* 7. Capabilities Compliance - Validates declared vs actual capabilities
|
|
15
|
-
*
|
|
16
|
-
* @module assessment/modules/ProtocolComplianceAssessor
|
|
17
|
-
*/
|
|
18
|
-
import { MCPSpecComplianceAssessment, AssessmentConfiguration } from "../../../lib/assessmentTypes.js";
|
|
19
|
-
import type { ProtocolCheck } from "../../../lib/assessment/extendedTypes.js";
|
|
20
|
-
import { BaseAssessor } from "./BaseAssessor.js";
|
|
21
|
-
import { AssessmentContext } from "../AssessmentOrchestrator.js";
|
|
22
|
-
/**
|
|
23
|
-
* Protocol Compliance Assessment Result
|
|
24
|
-
* Unified output type for protocol compliance checks
|
|
25
|
-
*/
|
|
26
|
-
export interface ProtocolComplianceAssessment extends MCPSpecComplianceAssessment {
|
|
27
|
-
/** Additional conformance-style checks from ProtocolConformanceAssessor */
|
|
28
|
-
conformanceChecks?: {
|
|
29
|
-
errorResponseFormat: ProtocolCheck;
|
|
30
|
-
contentTypeSupport: ProtocolCheck;
|
|
31
|
-
initializationHandshake: ProtocolCheck;
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
export declare class ProtocolComplianceAssessor extends BaseAssessor<ProtocolComplianceAssessment> {
|
|
35
|
-
private ajv;
|
|
36
|
-
constructor(config: AssessmentConfiguration);
|
|
37
|
-
/**
|
|
38
|
-
* Get MCP spec version from config or use default
|
|
39
|
-
*/
|
|
40
|
-
private getSpecVersion;
|
|
41
|
-
/**
|
|
42
|
-
* Get base URL for MCP specification
|
|
43
|
-
*/
|
|
44
|
-
private getSpecBaseUrl;
|
|
45
|
-
/**
|
|
46
|
-
* Assess MCP Protocol Compliance - Unified Approach
|
|
47
|
-
* Combines MCPSpecComplianceAssessor and ProtocolConformanceAssessor functionality
|
|
48
|
-
*/
|
|
49
|
-
assess(context: AssessmentContext): Promise<ProtocolComplianceAssessment>;
|
|
50
|
-
/**
|
|
51
|
-
* Extract protocol version from context
|
|
52
|
-
*/
|
|
53
|
-
private extractProtocolVersion;
|
|
54
|
-
/**
|
|
55
|
-
* Check JSON-RPC 2.0 compliance
|
|
56
|
-
*/
|
|
57
|
-
private checkJsonRpcCompliance;
|
|
58
|
-
/**
|
|
59
|
-
* Check if server info is valid and properly formatted
|
|
60
|
-
*/
|
|
61
|
-
private checkServerInfoValidity;
|
|
62
|
-
/**
|
|
63
|
-
* Check schema compliance for all tools
|
|
64
|
-
*/
|
|
65
|
-
private checkSchemaCompliance;
|
|
66
|
-
/**
|
|
67
|
-
* Check error response compliance (basic check from MCPSpec)
|
|
68
|
-
*/
|
|
69
|
-
private checkErrorResponses;
|
|
70
|
-
/**
|
|
71
|
-
* Analyze outputSchema coverage across all tools (Issue #64)
|
|
72
|
-
* Returns detailed coverage metrics instead of just a boolean
|
|
73
|
-
*/
|
|
74
|
-
private analyzeOutputSchemaCoverage;
|
|
75
|
-
/**
|
|
76
|
-
* Check capabilities compliance
|
|
77
|
-
*/
|
|
78
|
-
private checkCapabilitiesCompliance;
|
|
79
|
-
/**
|
|
80
|
-
* Select representative tools for testing (first, middle, last for diversity)
|
|
81
|
-
*/
|
|
82
|
-
private selectToolsForTesting;
|
|
83
|
-
/**
|
|
84
|
-
* Check Error Response Format (conformance-style with multi-tool testing)
|
|
85
|
-
*/
|
|
86
|
-
private checkErrorResponseFormat;
|
|
87
|
-
/**
|
|
88
|
-
* Check Content Type Support
|
|
89
|
-
*/
|
|
90
|
-
private checkContentTypeSupport;
|
|
91
|
-
/**
|
|
92
|
-
* Check Initialization Handshake
|
|
93
|
-
*/
|
|
94
|
-
private checkInitializationHandshake;
|
|
95
|
-
private assessTransportCompliance;
|
|
96
|
-
private assessAnnotationSupport;
|
|
97
|
-
private assessStreamingSupport;
|
|
98
|
-
private assessOAuthCompliance;
|
|
99
|
-
private extractMetadataHints;
|
|
100
|
-
/**
|
|
101
|
-
* Generate explanation based on all protocol checks
|
|
102
|
-
*/
|
|
103
|
-
private generateExplanation;
|
|
104
|
-
/**
|
|
105
|
-
* Generate recommendations based on all checks
|
|
106
|
-
*/
|
|
107
|
-
private generateRecommendations;
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=ProtocolComplianceAssessor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProtocolComplianceAssessor.d.ts","sourceRoot":"","sources":["../../../../src/services/assessment/modules/ProtocolComplianceAssessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,2BAA2B,EAM3B,uBAAuB,EAMxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAOpE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAmB9D;;;GAGG;AACH,MAAM,WAAW,4BAA6B,SAAQ,2BAA2B;IAC/E,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE;QAClB,mBAAmB,EAAE,aAAa,CAAC;QACnC,kBAAkB,EAAE,aAAa,CAAC;QAClC,uBAAuB,EAAE,aAAa,CAAC;KACxC,CAAC;CACH;AAED,qBAAa,0BAA2B,SAAQ,YAAY,CAAC,4BAA4B,CAAC;IACxF,OAAO,CAAC,GAAG,CAAc;gBAEb,MAAM,EAAE,uBAAuB;IAK3C;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACG,MAAM,CACV,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,4BAA4B,CAAC;IAyIxC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyB9B;;OAEG;YACW,sBAAsB;IAuBpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsB/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAwC7B;;OAEG;YACW,mBAAmB;IAiCjC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAiDnC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAkEnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;OAEG;YACW,wBAAwB;IA4GtC;;OAEG;YACW,uBAAuB;IA2FrC;;OAEG;YACW,4BAA4B;IAoD1C,OAAO,CAAC,yBAAyB;IAwGjC,OAAO,CAAC,uBAAuB;IAqB/B,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,oBAAoB;IA8E5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAqEhC"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Protocol Compliance Assessor Module
|
|
3
|
-
*
|
|
4
|
-
* Unified module for MCP protocol compliance validation.
|
|
5
|
-
* Merges MCPSpecComplianceAssessor and ProtocolConformanceAssessor functionality.
|
|
6
|
-
*
|
|
7
|
-
* Protocol Checks:
|
|
8
|
-
* 1. JSON-RPC 2.0 Compliance - Validates request/response structure
|
|
9
|
-
* 2. Server Info Validity - Validates initialization handshake
|
|
10
|
-
* 3. Schema Compliance - Validates tool input schemas
|
|
11
|
-
* 4. Error Response Format - Validates isError flag, content array structure
|
|
12
|
-
* 5. Content Type Support - Validates valid content types (text, image, audio, resource)
|
|
13
|
-
* 6. Structured Output Support - Checks for outputSchema usage
|
|
14
|
-
* 7. Capabilities Compliance - Validates declared vs actual capabilities
|
|
15
|
-
*
|
|
16
|
-
* @module assessment/modules/ProtocolComplianceAssessor
|
|
17
|
-
*/
|
|
18
|
-
import { MCPSpecComplianceAssessment, AssessmentConfiguration } from "../../../lib/assessmentTypes.js";
|
|
19
|
-
import type { ProtocolCheck } from "../../../lib/assessment/extendedTypes.js";
|
|
20
|
-
import { BaseAssessor } from "./BaseAssessor.js";
|
|
21
|
-
import { AssessmentContext } from "../AssessmentOrchestrator.js";
|
|
22
|
-
/**
|
|
23
|
-
* Protocol Compliance Assessment Result
|
|
24
|
-
* Unified output type for protocol compliance checks
|
|
25
|
-
*/
|
|
26
|
-
export interface ProtocolComplianceAssessment extends MCPSpecComplianceAssessment {
|
|
27
|
-
/** Additional conformance-style checks from ProtocolConformanceAssessor */
|
|
28
|
-
conformanceChecks?: {
|
|
29
|
-
errorResponseFormat: ProtocolCheck;
|
|
30
|
-
contentTypeSupport: ProtocolCheck;
|
|
31
|
-
initializationHandshake: ProtocolCheck;
|
|
32
|
-
};
|
|
33
|
-
}
|
|
34
|
-
export declare class ProtocolComplianceAssessor extends BaseAssessor<ProtocolComplianceAssessment> {
|
|
35
|
-
private ajv;
|
|
36
|
-
constructor(config: AssessmentConfiguration);
|
|
37
|
-
/**
|
|
38
|
-
* Get MCP spec version from config or use default
|
|
39
|
-
*/
|
|
40
|
-
private getSpecVersion;
|
|
41
|
-
/**
|
|
42
|
-
* Get base URL for MCP specification
|
|
43
|
-
*/
|
|
44
|
-
private getSpecBaseUrl;
|
|
45
|
-
/**
|
|
46
|
-
* Assess MCP Protocol Compliance - Unified Approach
|
|
47
|
-
* Combines MCPSpecComplianceAssessor and ProtocolConformanceAssessor functionality
|
|
48
|
-
*/
|
|
49
|
-
assess(context: AssessmentContext): Promise<ProtocolComplianceAssessment>;
|
|
50
|
-
/**
|
|
51
|
-
* Extract protocol version from context
|
|
52
|
-
*/
|
|
53
|
-
private extractProtocolVersion;
|
|
54
|
-
/**
|
|
55
|
-
* Check JSON-RPC 2.0 compliance
|
|
56
|
-
*/
|
|
57
|
-
private checkJsonRpcCompliance;
|
|
58
|
-
/**
|
|
59
|
-
* Check if server info is valid and properly formatted
|
|
60
|
-
*/
|
|
61
|
-
private checkServerInfoValidity;
|
|
62
|
-
/**
|
|
63
|
-
* Check schema compliance for all tools
|
|
64
|
-
*/
|
|
65
|
-
private checkSchemaCompliance;
|
|
66
|
-
/**
|
|
67
|
-
* Check error response compliance (basic check from MCPSpec)
|
|
68
|
-
*/
|
|
69
|
-
private checkErrorResponses;
|
|
70
|
-
/**
|
|
71
|
-
* Analyze outputSchema coverage across all tools (Issue #64)
|
|
72
|
-
* Returns detailed coverage metrics instead of just a boolean
|
|
73
|
-
*/
|
|
74
|
-
private analyzeOutputSchemaCoverage;
|
|
75
|
-
/**
|
|
76
|
-
* Check capabilities compliance
|
|
77
|
-
*/
|
|
78
|
-
private checkCapabilitiesCompliance;
|
|
79
|
-
/**
|
|
80
|
-
* Select representative tools for testing (first, middle, last for diversity)
|
|
81
|
-
*/
|
|
82
|
-
private selectToolsForTesting;
|
|
83
|
-
/**
|
|
84
|
-
* Check Error Response Format (conformance-style with multi-tool testing)
|
|
85
|
-
*/
|
|
86
|
-
private checkErrorResponseFormat;
|
|
87
|
-
/**
|
|
88
|
-
* Check Content Type Support
|
|
89
|
-
*/
|
|
90
|
-
private checkContentTypeSupport;
|
|
91
|
-
/**
|
|
92
|
-
* Check Initialization Handshake
|
|
93
|
-
*/
|
|
94
|
-
private checkInitializationHandshake;
|
|
95
|
-
private assessTransportCompliance;
|
|
96
|
-
private assessAnnotationSupport;
|
|
97
|
-
private assessStreamingSupport;
|
|
98
|
-
private assessOAuthCompliance;
|
|
99
|
-
private extractMetadataHints;
|
|
100
|
-
/**
|
|
101
|
-
* Generate explanation based on all protocol checks
|
|
102
|
-
*/
|
|
103
|
-
private generateExplanation;
|
|
104
|
-
/**
|
|
105
|
-
* Generate recommendations based on all checks
|
|
106
|
-
*/
|
|
107
|
-
private generateRecommendations;
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=ProtocolComplianceAssessor.deprecated.d.ts.map
|
package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProtocolComplianceAssessor.deprecated.d.ts","sourceRoot":"","sources":["../../../../src/services/assessment/modules/ProtocolComplianceAssessor.deprecated.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,2BAA2B,EAM3B,uBAAuB,EAMxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAOpE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAmB9D;;;GAGG;AACH,MAAM,WAAW,4BAA6B,SAAQ,2BAA2B;IAC/E,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE;QAClB,mBAAmB,EAAE,aAAa,CAAC;QACnC,kBAAkB,EAAE,aAAa,CAAC;QAClC,uBAAuB,EAAE,aAAa,CAAC;KACxC,CAAC;CACH;AAED,qBAAa,0BAA2B,SAAQ,YAAY,CAAC,4BAA4B,CAAC;IACxF,OAAO,CAAC,GAAG,CAAc;gBAEb,MAAM,EAAE,uBAAuB;IAK3C;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;;OAGG;IACG,MAAM,CACV,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,4BAA4B,CAAC;IAyIxC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAyB9B;;OAEG;YACW,sBAAsB;IAuBpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsB/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAwC7B;;OAEG;YACW,mBAAmB;IAiCjC;;;OAGG;IACH,OAAO,CAAC,2BAA2B;IAiDnC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAkEnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;OAEG;YACW,wBAAwB;IA4GtC;;OAEG;YACW,uBAAuB;IA2FrC;;OAEG;YACW,4BAA4B;IAoD1C,OAAO,CAAC,yBAAyB;IAwGjC,OAAO,CAAC,uBAAuB;IAqB/B,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,oBAAoB;IA8E5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAqEhC"}
|