@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.
Files changed (50) hide show
  1. package/README.md +1062 -224
  2. package/cli/build/assess-full.js +532 -106
  3. package/cli/build/assess-security.js +54 -90
  4. package/cli/build/lib/cli-parser.js +14 -1
  5. package/cli/build/lib/cli-parserSchemas.js +1 -0
  6. package/cli/build/lib/result-output.js +21 -0
  7. package/cli/build/profiles.js +20 -0
  8. package/cli/build/validate-testbed.js +0 -0
  9. package/cli/package.json +1 -1
  10. package/client/dist/assets/{OAuthCallback-BS8-A1sU.js → OAuthCallback-Chi58kRc.js} +1 -1
  11. package/client/dist/assets/{OAuthDebugCallback-025_TM2i.js → OAuthDebugCallback-BluD_Wxg.js} +1 -1
  12. package/client/dist/assets/{index-DEhlIjy-.js → index-KW2LwGdp.js} +4 -4
  13. package/client/dist/index.html +1 -1
  14. package/client/lib/lib/assessment/configSchemas.d.ts +64 -64
  15. package/client/lib/lib/assessment/jsonlEventSchemas.d.ts +286 -286
  16. package/client/lib/lib/assessment/resultTypes.d.ts +10 -0
  17. package/client/lib/lib/assessment/resultTypes.d.ts.map +1 -1
  18. package/client/lib/lib/assessmentTypes.d.ts +1 -20
  19. package/client/lib/lib/assessmentTypes.d.ts.map +1 -1
  20. package/client/lib/lib/assessmentTypes.js +1 -20
  21. package/client/lib/services/assessment/AssessmentOrchestrator.d.ts +57 -104
  22. package/client/lib/services/assessment/AssessmentOrchestrator.d.ts.map +1 -1
  23. package/client/lib/services/assessment/AssessmentOrchestrator.js +298 -133
  24. package/client/lib/services/assessment/modules/ErrorHandlingAssessor.d.ts +25 -0
  25. package/client/lib/services/assessment/modules/ErrorHandlingAssessor.d.ts.map +1 -0
  26. package/client/lib/services/assessment/modules/ErrorHandlingAssessor.deprecated.js +1 -1
  27. package/client/lib/services/assessment/modules/ErrorHandlingAssessor.js +564 -0
  28. package/client/lib/services/assessment/modules/SecurityAssessor.d.ts +5 -0
  29. package/client/lib/services/assessment/modules/SecurityAssessor.d.ts.map +1 -1
  30. package/client/lib/services/assessment/modules/SecurityAssessor.js +62 -0
  31. package/client/lib/services/assessment/modules/index.d.ts +1 -1
  32. package/client/lib/services/assessment/modules/index.js +1 -1
  33. package/client/lib/services/assessment/modules/securityTests/SecurityPayloadTester.d.ts +15 -0
  34. package/client/lib/services/assessment/modules/securityTests/SecurityPayloadTester.d.ts.map +1 -1
  35. package/client/lib/services/assessment/modules/securityTests/SecurityPayloadTester.js +72 -0
  36. package/client/lib/services/assessment/modules/securityTests/factory.d.ts +2 -0
  37. package/client/lib/services/assessment/modules/securityTests/factory.d.ts.map +1 -1
  38. package/client/lib/services/assessment/modules/securityTests/factory.js +1 -0
  39. package/client/lib/services/assessment/registry/AssessorDefinitions.js +1 -1
  40. package/client/lib/services/assessment/responseValidatorSchemas.d.ts +12 -12
  41. package/client/package.json +3 -3
  42. package/package.json +4 -2
  43. package/server/package.json +1 -1
  44. package/cli/build/lib/__tests__/zodErrorFormatter.test.js +0 -282
  45. package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.d.ts +0 -109
  46. package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.d.ts.map +0 -1
  47. package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.d.ts +0 -109
  48. package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.d.ts.map +0 -1
  49. package/client/lib/services/assessment/modules/ProtocolComplianceAssessor.deprecated.js +0 -852
  50. 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
@@ -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"}