mcp4openapi 0.3.0 → 0.3.1
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/dist/src/argument-normalizer.d.ts +5 -0
- package/dist/src/argument-normalizer.d.ts.map +1 -0
- package/dist/src/argument-normalizer.js +61 -0
- package/dist/src/argument-normalizer.js.map +1 -0
- package/dist/src/auth/oauth-provider.d.ts.map +1 -1
- package/dist/src/auth/oauth-provider.js +5 -2
- package/dist/src/auth/oauth-provider.js.map +1 -1
- package/dist/src/cli-config.d.ts +9 -0
- package/dist/src/cli-config.d.ts.map +1 -0
- package/dist/src/cli-config.js +111 -0
- package/dist/src/cli-config.js.map +1 -0
- package/dist/src/composite-executor.d.ts +77 -0
- package/dist/src/composite-executor.d.ts.map +1 -0
- package/dist/src/composite-executor.js +193 -0
- package/dist/src/composite-executor.js.map +1 -0
- package/dist/src/constants.d.ts +85 -0
- package/dist/src/constants.d.ts.map +1 -0
- package/dist/src/constants.js +85 -0
- package/dist/src/constants.js.map +1 -0
- package/dist/src/core/cli-config.d.ts.map +1 -1
- package/dist/src/core/cli-config.js +1 -0
- package/dist/src/core/cli-config.js.map +1 -1
- package/dist/src/core/index.d.ts.map +1 -1
- package/dist/src/core/index.js +1 -0
- package/dist/src/core/index.js.map +1 -1
- package/dist/src/dag-executor.d.ts +49 -0
- package/dist/src/dag-executor.d.ts.map +1 -0
- package/dist/src/dag-executor.js +138 -0
- package/dist/src/dag-executor.js.map +1 -0
- package/dist/src/errors.d.ts +59 -0
- package/dist/src/errors.d.ts.map +1 -0
- package/dist/src/errors.js +119 -0
- package/dist/src/errors.js.map +1 -0
- package/dist/src/filtering.d.ts +19 -0
- package/dist/src/filtering.d.ts.map +1 -0
- package/dist/src/filtering.js +292 -0
- package/dist/src/filtering.js.map +1 -0
- package/dist/src/generated-schemas.d.ts +45 -0
- package/dist/src/generated-schemas.d.ts.map +1 -1
- package/dist/src/generated-schemas.js +3 -0
- package/dist/src/generated-schemas.js.map +1 -1
- package/dist/src/http-client-factory.d.ts +62 -0
- package/dist/src/http-client-factory.d.ts.map +1 -0
- package/dist/src/http-client-factory.js +133 -0
- package/dist/src/http-client-factory.js.map +1 -0
- package/dist/src/http-transport-config.d.ts +6 -0
- package/dist/src/http-transport-config.d.ts.map +1 -0
- package/dist/src/http-transport-config.js +47 -0
- package/dist/src/http-transport-config.js.map +1 -0
- package/dist/src/http-transport.d.ts +316 -0
- package/dist/src/http-transport.d.ts.map +1 -0
- package/dist/src/http-transport.js +2412 -0
- package/dist/src/http-transport.js.map +1 -0
- package/dist/src/index.js +0 -0
- package/dist/src/interceptors.d.ts +116 -0
- package/dist/src/interceptors.d.ts.map +1 -0
- package/dist/src/interceptors.js +392 -0
- package/dist/src/interceptors.js.map +1 -0
- package/dist/src/jsonrpc-validator.d.ts +27 -0
- package/dist/src/jsonrpc-validator.d.ts.map +1 -0
- package/dist/src/jsonrpc-validator.js +58 -0
- package/dist/src/jsonrpc-validator.js.map +1 -0
- package/dist/src/logger.d.ts +59 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/logger.js +177 -0
- package/dist/src/logger.js.map +1 -0
- package/dist/src/mcp-server-manager.d.ts +20 -0
- package/dist/src/mcp-server-manager.d.ts.map +1 -0
- package/dist/src/mcp-server-manager.js +38 -0
- package/dist/src/mcp-server-manager.js.map +1 -0
- package/dist/src/mcp-server.d.ts +203 -0
- package/dist/src/mcp-server.d.ts.map +1 -0
- package/dist/src/mcp-server.js +1369 -0
- package/dist/src/mcp-server.js.map +1 -0
- package/dist/src/metrics.d.ts +97 -0
- package/dist/src/metrics.d.ts.map +1 -0
- package/dist/src/metrics.js +273 -0
- package/dist/src/metrics.js.map +1 -0
- package/dist/src/naming-warnings.d.ts +23 -0
- package/dist/src/naming-warnings.d.ts.map +1 -0
- package/dist/src/naming-warnings.js +83 -0
- package/dist/src/naming-warnings.js.map +1 -0
- package/dist/src/naming.d.ts +58 -0
- package/dist/src/naming.d.ts.map +1 -0
- package/dist/src/naming.js +510 -0
- package/dist/src/naming.js.map +1 -0
- package/dist/src/oauth-provider.d.ts +131 -0
- package/dist/src/oauth-provider.d.ts.map +1 -0
- package/dist/src/oauth-provider.js +836 -0
- package/dist/src/oauth-provider.js.map +1 -0
- package/dist/src/openapi/openapi-parser.d.ts.map +1 -1
- package/dist/src/openapi/openapi-parser.js +22 -0
- package/dist/src/openapi/openapi-parser.js.map +1 -1
- package/dist/src/openapi-parser.d.ts +70 -0
- package/dist/src/openapi-parser.d.ts.map +1 -0
- package/dist/src/openapi-parser.js +436 -0
- package/dist/src/openapi-parser.js.map +1 -0
- package/dist/src/profile/profile-loader.d.ts.map +1 -1
- package/dist/src/profile/profile-loader.js +8 -1
- package/dist/src/profile/profile-loader.js.map +1 -1
- package/dist/src/profile/profile-registry.d.ts +2 -1
- package/dist/src/profile/profile-registry.d.ts.map +1 -1
- package/dist/src/profile/profile-registry.js +18 -1
- package/dist/src/profile/profile-registry.js.map +1 -1
- package/dist/src/profile/profile-resolver.d.ts +16 -0
- package/dist/src/profile/profile-resolver.d.ts.map +1 -1
- package/dist/src/profile/profile-resolver.js +120 -0
- package/dist/src/profile/profile-resolver.js.map +1 -1
- package/dist/src/profile-loader.d.ts +78 -0
- package/dist/src/profile-loader.d.ts.map +1 -0
- package/dist/src/profile-loader.js +483 -0
- package/dist/src/profile-loader.js.map +1 -0
- package/dist/src/profile-registry.d.ts +18 -0
- package/dist/src/profile-registry.d.ts.map +1 -0
- package/dist/src/profile-registry.js +26 -0
- package/dist/src/profile-registry.js.map +1 -0
- package/dist/src/profile-resolver.d.ts +19 -0
- package/dist/src/profile-resolver.d.ts.map +1 -0
- package/dist/src/profile-resolver.js +167 -0
- package/dist/src/profile-resolver.js.map +1 -0
- package/dist/src/proxy-executor.d.ts +86 -0
- package/dist/src/proxy-executor.d.ts.map +1 -0
- package/dist/src/proxy-executor.js +497 -0
- package/dist/src/proxy-executor.js.map +1 -0
- package/dist/src/schema-validator.d.ts +30 -0
- package/dist/src/schema-validator.d.ts.map +1 -0
- package/dist/src/schema-validator.js +128 -0
- package/dist/src/schema-validator.js.map +1 -0
- package/dist/src/startup-profile.d.ts +17 -0
- package/dist/src/startup-profile.d.ts.map +1 -0
- package/dist/src/startup-profile.js +30 -0
- package/dist/src/startup-profile.js.map +1 -0
- package/dist/src/startup-validation.d.ts +11 -0
- package/dist/src/startup-validation.d.ts.map +1 -0
- package/dist/src/startup-validation.js +21 -0
- package/dist/src/startup-validation.js.map +1 -0
- package/dist/src/tool-filter.d.ts +65 -0
- package/dist/src/tool-filter.d.ts.map +1 -0
- package/dist/src/tool-filter.js +471 -0
- package/dist/src/tool-filter.js.map +1 -0
- package/dist/src/tool-generator.d.ts +67 -0
- package/dist/src/tool-generator.d.ts.map +1 -0
- package/dist/src/tool-generator.js +182 -0
- package/dist/src/tool-generator.js.map +1 -0
- package/dist/src/tooling/composite-executor.d.ts.map +1 -1
- package/dist/src/tooling/composite-executor.js +7 -2
- package/dist/src/tooling/composite-executor.js.map +1 -1
- package/dist/src/tooling/proxy-executor.d.ts.map +1 -1
- package/dist/src/tooling/proxy-executor.js +4 -0
- package/dist/src/tooling/proxy-executor.js.map +1 -1
- package/dist/src/tooling/tool-generator.d.ts.map +1 -1
- package/dist/src/tooling/tool-generator.js +36 -3
- package/dist/src/tooling/tool-generator.js.map +1 -1
- package/dist/src/transport/http-transport-config.d.ts.map +1 -1
- package/dist/src/transport/http-transport-config.js +1 -0
- package/dist/src/transport/http-transport-config.js.map +1 -1
- package/dist/src/transport/http-transport.d.ts +5 -0
- package/dist/src/transport/http-transport.d.ts.map +1 -1
- package/dist/src/transport/http-transport.js +63 -1
- package/dist/src/transport/http-transport.js.map +1 -1
- package/dist/src/transport/profile-index.d.ts +84 -0
- package/dist/src/transport/profile-index.d.ts.map +1 -0
- package/dist/src/transport/profile-index.js +405 -0
- package/dist/src/transport/profile-index.js.map +1 -0
- package/dist/src/types/http-transport.d.ts +1 -0
- package/dist/src/types/http-transport.d.ts.map +1 -1
- package/dist/src/types/openapi.d.ts +3 -0
- package/dist/src/types/openapi.d.ts.map +1 -1
- package/dist/src/types/profile.d.ts +3 -0
- package/dist/src/types/profile.d.ts.map +1 -1
- package/dist/src/validation/validation-utils.d.ts.map +1 -1
- package/dist/src/validation/validation-utils.js +1 -0
- package/dist/src/validation/validation-utils.js.map +1 -1
- package/dist/src/validation-utils.d.ts +49 -0
- package/dist/src/validation-utils.d.ts.map +1 -0
- package/dist/src/validation-utils.js +138 -0
- package/dist/src/validation-utils.js.map +1 -0
- package/html/profile-index.html +386 -0
- package/package.json +2 -1
- package/profile-schema.json +14 -0
- package/profiles/gitlab/developer-profile-oauth.json +1 -1
- package/profiles/gitlab/developer-profile.json +1508 -0
- package/profiles/gitlab/developer-profile.test.json +3432 -0
- package/profiles/n8n/profile-optimized.json +1 -1
- package/profiles/n8n/profile.json +1 -1
- package/profiles/n8n-nodes/profile-nodes.json +1 -1
- package/profiles/semgrep/profile.json +1 -1
- package/profiles/youtrack/profile.json +1 -1
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured error types for MCP server
|
|
3
|
+
*
|
|
4
|
+
* Provides type-safe error handling with machine-readable error codes
|
|
5
|
+
* and structured error details for better debugging and client handling.
|
|
6
|
+
*/
|
|
7
|
+
import { randomUUID } from 'node:crypto';
|
|
8
|
+
export class MCPError extends Error {
|
|
9
|
+
constructor(message, code, details) {
|
|
10
|
+
super(message);
|
|
11
|
+
this.code = code;
|
|
12
|
+
this.details = details;
|
|
13
|
+
this.name = 'MCPError';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export class ValidationError extends MCPError {
|
|
17
|
+
constructor(message, details) {
|
|
18
|
+
super(message, 'VALIDATION_ERROR', details);
|
|
19
|
+
this.name = 'ValidationError';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export class OperationNotFoundError extends MCPError {
|
|
23
|
+
constructor(operationId) {
|
|
24
|
+
super(`Operation not found: ${operationId}`, 'OPERATION_NOT_FOUND', { operationId });
|
|
25
|
+
this.name = 'OperationNotFoundError';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export class ResourceNotFoundError extends MCPError {
|
|
29
|
+
constructor(resource, resourceType = 'Resource') {
|
|
30
|
+
super(`${resourceType} not found: ${resource}`, 'RESOURCE_NOT_FOUND', { resource, resourceType });
|
|
31
|
+
this.name = 'ResourceNotFoundError';
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class ParameterError extends MCPError {
|
|
35
|
+
constructor(paramName, reason) {
|
|
36
|
+
super(`Invalid parameter '${paramName}': ${reason}`, 'PARAMETER_ERROR', { paramName, reason });
|
|
37
|
+
this.name = 'ParameterError';
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export class AuthenticationError extends MCPError {
|
|
41
|
+
constructor(message = 'Authentication required', details) {
|
|
42
|
+
super(message, 'AUTHENTICATION_ERROR', details);
|
|
43
|
+
this.name = 'AuthenticationError';
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
export class AuthorizationError extends MCPError {
|
|
47
|
+
constructor(message = 'Insufficient permissions') {
|
|
48
|
+
super(message, 'AUTHORIZATION_ERROR');
|
|
49
|
+
this.name = 'AuthorizationError';
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
export class RateLimitError extends MCPError {
|
|
53
|
+
constructor(message, retryAfter) {
|
|
54
|
+
super(message, 'RATE_LIMIT_EXCEEDED', retryAfter ? { retryAfter } : undefined);
|
|
55
|
+
this.name = 'RateLimitError';
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export class NetworkError extends MCPError {
|
|
59
|
+
constructor(message, statusCode, details) {
|
|
60
|
+
super(message, 'NETWORK_ERROR', { statusCode, ...details });
|
|
61
|
+
this.name = 'NetworkError';
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export class ConfigurationError extends MCPError {
|
|
65
|
+
constructor(message, details) {
|
|
66
|
+
super(message, 'CONFIGURATION_ERROR', details);
|
|
67
|
+
this.name = 'ConfigurationError';
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
export class SessionError extends MCPError {
|
|
71
|
+
constructor(message, sessionId) {
|
|
72
|
+
super(message, 'SESSION_ERROR', sessionId ? { sessionId } : undefined);
|
|
73
|
+
this.name = 'SessionError';
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
export class UnknownCliFlagError extends MCPError {
|
|
77
|
+
constructor(flags) {
|
|
78
|
+
const sortedFlags = [...flags].sort();
|
|
79
|
+
super(`Unknown CLI flags: ${sortedFlags.join(', ')}`, 'UNKNOWN_CLI_FLAG', { flags: sortedFlags });
|
|
80
|
+
this.name = 'UnknownCliFlagError';
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Helper function to check if an error is an MCPError
|
|
85
|
+
*/
|
|
86
|
+
export function isMCPError(error) {
|
|
87
|
+
return error instanceof MCPError;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Generate a unique correlation ID for error tracking
|
|
91
|
+
*
|
|
92
|
+
* Why: Allows matching client-reported errors with server logs
|
|
93
|
+
*/
|
|
94
|
+
export function generateCorrelationId() {
|
|
95
|
+
return randomUUID();
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Helper function to get error details for logging
|
|
99
|
+
*/
|
|
100
|
+
export function getErrorDetails(error) {
|
|
101
|
+
if (isMCPError(error)) {
|
|
102
|
+
return {
|
|
103
|
+
name: error.name,
|
|
104
|
+
code: error.code,
|
|
105
|
+
message: error.message,
|
|
106
|
+
details: error.details,
|
|
107
|
+
stack: error.stack,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
if (error instanceof Error) {
|
|
111
|
+
return {
|
|
112
|
+
name: error.name,
|
|
113
|
+
message: error.message,
|
|
114
|
+
stack: error.stack,
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
return { message: String(error) };
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjC,YACE,OAAe,EACR,IAAY,EACZ,OAAiC;QAExC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,SAAI,GAAJ,IAAI,CAAQ;QACZ,YAAO,GAAP,OAAO,CAA0B;QAGxC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IACzB,CAAC;CACF;AAED,MAAM,OAAO,eAAgB,SAAQ,QAAQ;IAC3C,YAAY,OAAe,EAAE,OAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,QAAQ;IAClD,YAAY,WAAmB;QAC7B,KAAK,CACH,wBAAwB,WAAW,EAAE,EACrC,qBAAqB,EACrB,EAAE,WAAW,EAAE,CAChB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,QAAQ;IACjD,YAAY,QAAgB,EAAE,eAAuB,UAAU;QAC7D,KAAK,CACH,GAAG,YAAY,eAAe,QAAQ,EAAE,EACxC,oBAAoB,EACpB,EAAE,QAAQ,EAAE,YAAY,EAAE,CAC3B,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,SAAiB,EAAE,MAAc;QAC3C,KAAK,CACH,sBAAsB,SAAS,MAAM,MAAM,EAAE,EAC7C,iBAAiB,EACjB,EAAE,SAAS,EAAE,MAAM,EAAE,CACtB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAC/C,YAAY,UAAkB,yBAAyB,EAAE,OAAiC;QACxF,KAAK,CAAC,OAAO,EAAE,sBAAsB,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,QAAQ;IAC9C,YAAY,UAAkB,0BAA0B;QACtD,KAAK,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAC1C,YAAY,OAAe,EAAE,UAAmB;QAC9C,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC/E,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,YAAY,OAAe,EAAE,UAAmB,EAAE,OAAiC;QACjF,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,QAAQ;IAC9C,YAAY,OAAe,EAAE,OAAiC;QAC5D,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,YAAY,OAAe,EAAE,SAAkB;QAC7C,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACvE,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAC/C,YAAY,KAAe;QACzB,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,KAAK,CACH,sBAAsB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC9C,kBAAkB,EAClB,EAAE,KAAK,EAAE,WAAW,EAAE,CACvB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,OAAO,KAAK,YAAY,QAAQ,CAAC;AACnC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,UAAU,EAAE,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACpC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ToolDefinition } from './types/profile.js';
|
|
2
|
+
import type { OperationInfo } from './types/openapi.js';
|
|
3
|
+
export type FilteringRules = Record<string, string[]>;
|
|
4
|
+
export interface FilteringParseResult {
|
|
5
|
+
filtering: FilteringRules;
|
|
6
|
+
normalizedHeader: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function normalizeFilteringHeaderValue(value?: string): string | undefined;
|
|
9
|
+
export declare function parseFilteringHeader(headerValue: string): FilteringParseResult;
|
|
10
|
+
export declare function isControlKey(key: string): boolean;
|
|
11
|
+
export declare function getFilterMaxValues(): number;
|
|
12
|
+
export declare function enforceFiltering(context: {
|
|
13
|
+
filtering: FilteringRules;
|
|
14
|
+
toolDef: ToolDefinition;
|
|
15
|
+
args: Record<string, unknown>;
|
|
16
|
+
parameterAliases?: Record<string, string[]>;
|
|
17
|
+
operation?: OperationInfo;
|
|
18
|
+
}): void;
|
|
19
|
+
//# sourceMappingURL=filtering.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filtering.d.ts","sourceRoot":"","sources":["../../src/filtering.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAOxD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;AAEtD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,6BAA6B,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOhF;AAED,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CA2D9E;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEjD;AAaD,wBAAgB,kBAAkB,IAAI,MAAM,CAY3C;AAyJD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IACxC,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,GAAG,IAAI,CA+BP"}
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import { AuthorizationError, ValidationError } from './errors.js';
|
|
2
|
+
const CONTROL_KEYS = new Set(['_allow_list', '_allow_read']);
|
|
3
|
+
const KEY_PATTERN = /^[A-Za-z0-9_][A-Za-z0-9_-]{0,63}$/;
|
|
4
|
+
export function normalizeFilteringHeaderValue(value) {
|
|
5
|
+
if (value === undefined || value === null) {
|
|
6
|
+
return undefined;
|
|
7
|
+
}
|
|
8
|
+
const normalized = value.trim();
|
|
9
|
+
return normalized.length > 0 ? normalized : undefined;
|
|
10
|
+
}
|
|
11
|
+
export function parseFilteringHeader(headerValue) {
|
|
12
|
+
const normalizedHeader = normalizeFilteringHeaderValue(headerValue);
|
|
13
|
+
if (!normalizedHeader) {
|
|
14
|
+
return { filtering: Object.create(null), normalizedHeader: '' };
|
|
15
|
+
}
|
|
16
|
+
const maxValues = getFilterMaxValues();
|
|
17
|
+
const filtering = Object.create(null);
|
|
18
|
+
const parts = normalizedHeader.split(',');
|
|
19
|
+
for (const part of parts) {
|
|
20
|
+
const trimmed = part.trim();
|
|
21
|
+
if (!trimmed) {
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
const equalsIndex = trimmed.indexOf('=');
|
|
25
|
+
if (equalsIndex === -1) {
|
|
26
|
+
if (!CONTROL_KEYS.has(trimmed) || !KEY_PATTERN.test(trimmed)) {
|
|
27
|
+
throw new ValidationError('Invalid X-Mcp4-Params header. Expected comma-separated key=value pairs.');
|
|
28
|
+
}
|
|
29
|
+
filtering[trimmed] = filtering[trimmed] ?? [];
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
const key = trimmed.slice(0, equalsIndex).trim();
|
|
33
|
+
const rawValue = trimmed.slice(equalsIndex + 1).trim();
|
|
34
|
+
if (!key || !KEY_PATTERN.test(key)) {
|
|
35
|
+
throw new ValidationError('Invalid X-Mcp4-Params header. Expected comma-separated key=value pairs.');
|
|
36
|
+
}
|
|
37
|
+
if (CONTROL_KEYS.has(key)) {
|
|
38
|
+
throw new ValidationError('Invalid X-Mcp4-Params header. Expected comma-separated key=value pairs.');
|
|
39
|
+
}
|
|
40
|
+
if (!rawValue) {
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
let decodedValue;
|
|
44
|
+
try {
|
|
45
|
+
decodedValue = decodeURIComponent(rawValue);
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
throw new ValidationError('Invalid X-Mcp4-Params header. Expected comma-separated key=value pairs.');
|
|
49
|
+
}
|
|
50
|
+
const values = filtering[key] ?? [];
|
|
51
|
+
if (values.length >= maxValues) {
|
|
52
|
+
throw new ValidationError(`X-Mcp4-Params exceeds max values for key '${key}'. Max allowed is ${maxValues}.`);
|
|
53
|
+
}
|
|
54
|
+
values.push(decodedValue);
|
|
55
|
+
filtering[key] = values;
|
|
56
|
+
}
|
|
57
|
+
return { filtering, normalizedHeader };
|
|
58
|
+
}
|
|
59
|
+
export function isControlKey(key) {
|
|
60
|
+
return CONTROL_KEYS.has(key);
|
|
61
|
+
}
|
|
62
|
+
export function getFilterMaxValues() {
|
|
63
|
+
const raw = process.env.MCP4_FILTER_MAX_VALUES;
|
|
64
|
+
if (raw === undefined) {
|
|
65
|
+
return 10;
|
|
66
|
+
}
|
|
67
|
+
const parsed = parseInt(raw, 10);
|
|
68
|
+
if (Number.isNaN(parsed) || parsed <= 0) {
|
|
69
|
+
throw new ValidationError(`Invalid MCP4_FILTER_MAX_VALUES: expected positive integer, got '${raw}'.`);
|
|
70
|
+
}
|
|
71
|
+
return parsed;
|
|
72
|
+
}
|
|
73
|
+
function prepareFilteringContext(filtering, toolDef, args, parameterAliases, operation) {
|
|
74
|
+
const aliasToCanonical = buildAliasToCanonical(parameterAliases);
|
|
75
|
+
const toolParamGroups = buildToolParamGroups(toolDef, parameterAliases, aliasToCanonical);
|
|
76
|
+
const filterKeys = Object.keys(filtering).filter(key => !isControlKey(key));
|
|
77
|
+
validateFilterKeys(filterKeys, toolParamGroups, toolDef.parameters);
|
|
78
|
+
const allowedByCanonical = buildAllowedByCanonical(filterKeys, filtering, aliasToCanonical, toolParamGroups);
|
|
79
|
+
const applicableCanonicals = Array.from(allowedByCanonical.keys());
|
|
80
|
+
const operationCategory = resolveOperationCategory(operation, args['action']);
|
|
81
|
+
return {
|
|
82
|
+
aliasToCanonical,
|
|
83
|
+
toolParamGroups,
|
|
84
|
+
allowedByCanonical,
|
|
85
|
+
applicableCanonicals,
|
|
86
|
+
operationCategory,
|
|
87
|
+
hasAnyFilterParam: applicableCanonicals.some(canonical => {
|
|
88
|
+
const group = toolParamGroups.get(canonical);
|
|
89
|
+
return group ? getArgumentValue(args, group.names) !== undefined : false;
|
|
90
|
+
}),
|
|
91
|
+
permissions: {
|
|
92
|
+
allowList: Object.prototype.hasOwnProperty.call(filtering, '_allow_list'),
|
|
93
|
+
allowRead: Object.prototype.hasOwnProperty.call(filtering, '_allow_read')
|
|
94
|
+
},
|
|
95
|
+
action: typeof args['action'] === 'string' ? args['action'] : undefined
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
function buildAllowedByCanonical(filterKeys, filtering, aliasToCanonical, toolParamGroups) {
|
|
99
|
+
const allowedByCanonical = new Map();
|
|
100
|
+
for (const key of filterKeys) {
|
|
101
|
+
const canonical = aliasToCanonical.get(key) ?? key;
|
|
102
|
+
if (!toolParamGroups.has(canonical)) {
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
const values = filtering[key] ?? [];
|
|
106
|
+
if (values.length === 0) {
|
|
107
|
+
continue;
|
|
108
|
+
}
|
|
109
|
+
const existing = allowedByCanonical.get(canonical) ?? [];
|
|
110
|
+
existing.push(...values);
|
|
111
|
+
allowedByCanonical.set(canonical, dedupe(existing));
|
|
112
|
+
}
|
|
113
|
+
return allowedByCanonical;
|
|
114
|
+
}
|
|
115
|
+
function validateParameterValue(argValue, allowedValues, canonical) {
|
|
116
|
+
const allowedSet = new Set(allowedValues);
|
|
117
|
+
if (Array.isArray(argValue)) {
|
|
118
|
+
for (const item of argValue) {
|
|
119
|
+
if (!isPrimitiveValue(item)) {
|
|
120
|
+
throw new AuthorizationError(`Filter conflict for '${canonical}': expected one of [${allowedValues.join(', ')}], got '${formatValue(item)}'.`);
|
|
121
|
+
}
|
|
122
|
+
const stringValue = String(item);
|
|
123
|
+
if (!allowedSet.has(stringValue)) {
|
|
124
|
+
throw new AuthorizationError(`Filter conflict for '${canonical}': expected one of [${allowedValues.join(', ')}], got '${stringValue}'.`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
if (typeof argValue === 'object' && argValue !== null) {
|
|
130
|
+
throw new AuthorizationError(`Filter conflict for '${canonical}': expected one of [${allowedValues.join(', ')}], got '${formatValue(argValue)}'.`);
|
|
131
|
+
}
|
|
132
|
+
const stringValue = String(argValue);
|
|
133
|
+
if (!allowedSet.has(stringValue)) {
|
|
134
|
+
throw new AuthorizationError(`Filter conflict for '${canonical}': expected one of [${allowedValues.join(', ')}], got '${stringValue}'.`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function validateCanonicalParameter(ctx, canonical, args, toolDef) {
|
|
138
|
+
const allowedValues = ctx.allowedByCanonical.get(canonical) ?? [];
|
|
139
|
+
const group = ctx.toolParamGroups.get(canonical);
|
|
140
|
+
if (!group) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
const paramDefinition = toolDef.parameters[canonical];
|
|
144
|
+
const argValue = getArgumentValue(args, group.names);
|
|
145
|
+
const { operationCategory, permissions, hasAnyFilterParam, action } = ctx;
|
|
146
|
+
const isList = operationCategory === 'list';
|
|
147
|
+
const isRead = operationCategory === 'read';
|
|
148
|
+
const isModify = operationCategory === 'modify';
|
|
149
|
+
if (argValue === undefined) {
|
|
150
|
+
if ((isList && permissions.allowList) || (isRead && permissions.allowRead)) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
if (action && isRequiredForAction(paramDefinition, action)) {
|
|
154
|
+
throw new AuthorizationError(`Filter requires parameter '${canonical}' for tool '${toolDef.name}' action '${action}'.`);
|
|
155
|
+
}
|
|
156
|
+
if (isModify && hasAnyFilterParam) {
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
if (isList || isRead || isModify) {
|
|
160
|
+
throw new AuthorizationError(`Filter requires parameter '${canonical}' for tool '${toolDef.name}'.`);
|
|
161
|
+
}
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
// For list/read operations, allow _allow_list/_allow_read to relax value enforcement.
|
|
165
|
+
// This enables "read/list any" access while keeping modify operations constrained to the allow-set.
|
|
166
|
+
if ((isList && permissions.allowList) || (isRead && permissions.allowRead)) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
validateParameterValue(argValue, allowedValues, canonical);
|
|
170
|
+
}
|
|
171
|
+
export function enforceFiltering(context) {
|
|
172
|
+
const { filtering, toolDef, args, parameterAliases, operation } = context;
|
|
173
|
+
const filterKeys = Object.keys(filtering).filter(key => !isControlKey(key));
|
|
174
|
+
if (filterKeys.length === 0) {
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
177
|
+
const ctx = prepareFilteringContext(filtering, toolDef, args, parameterAliases ?? {}, operation);
|
|
178
|
+
if (ctx.applicableCanonicals.length === 0) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
if (ctx.operationCategory === 'modify' && !ctx.hasAnyFilterParam) {
|
|
182
|
+
for (const canonical of ctx.applicableCanonicals) {
|
|
183
|
+
const paramDefinition = toolDef.parameters[canonical];
|
|
184
|
+
if (ctx.action && isRequiredForAction(paramDefinition, ctx.action)) {
|
|
185
|
+
throw new AuthorizationError(`Filter requires parameter '${canonical}' for tool '${toolDef.name}' action '${ctx.action}'.`);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
throw new AuthorizationError(`Filter requires at least one of [${ctx.applicableCanonicals.join(', ')}] for tool '${toolDef.name}'.`);
|
|
189
|
+
}
|
|
190
|
+
for (const canonical of ctx.applicableCanonicals) {
|
|
191
|
+
validateCanonicalParameter(ctx, canonical, args, toolDef);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
function buildAliasToCanonical(parameterAliases) {
|
|
195
|
+
const aliasToCanonical = new Map();
|
|
196
|
+
for (const [canonical, aliases] of Object.entries(parameterAliases)) {
|
|
197
|
+
for (const alias of aliases) {
|
|
198
|
+
if (!aliasToCanonical.has(alias)) {
|
|
199
|
+
aliasToCanonical.set(alias, canonical);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return aliasToCanonical;
|
|
204
|
+
}
|
|
205
|
+
function buildToolParamGroups(toolDef, parameterAliases, aliasToCanonical) {
|
|
206
|
+
const groups = new Map();
|
|
207
|
+
for (const paramName of Object.keys(toolDef.parameters)) {
|
|
208
|
+
const canonical = aliasToCanonical.get(paramName) ?? paramName;
|
|
209
|
+
const aliasNames = parameterAliases[canonical] ?? [];
|
|
210
|
+
const group = groups.get(canonical) ?? { names: [] };
|
|
211
|
+
group.names = dedupe([canonical, ...aliasNames, paramName, ...group.names]);
|
|
212
|
+
groups.set(canonical, group);
|
|
213
|
+
}
|
|
214
|
+
return groups;
|
|
215
|
+
}
|
|
216
|
+
function validateFilterKeys(filterKeys, toolParamGroups, parameters) {
|
|
217
|
+
const allowedKeys = new Set();
|
|
218
|
+
for (const [canonical, group] of toolParamGroups.entries()) {
|
|
219
|
+
allowedKeys.add(canonical);
|
|
220
|
+
for (const name of group.names) {
|
|
221
|
+
allowedKeys.add(name);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
for (const key of Object.keys(parameters)) {
|
|
225
|
+
allowedKeys.add(key);
|
|
226
|
+
}
|
|
227
|
+
const unknownKeys = filterKeys.filter(key => !allowedKeys.has(key));
|
|
228
|
+
if (unknownKeys.length === 0) {
|
|
229
|
+
return;
|
|
230
|
+
}
|
|
231
|
+
const allowedList = Array.from(allowedKeys).sort().join(', ');
|
|
232
|
+
throw new ValidationError(`Unknown filter key '${unknownKeys[0]}'. Allowed keys: ${allowedList}`);
|
|
233
|
+
}
|
|
234
|
+
function isRequiredForAction(paramDefinition, action) {
|
|
235
|
+
if (!paramDefinition) {
|
|
236
|
+
return false;
|
|
237
|
+
}
|
|
238
|
+
if (paramDefinition.required) {
|
|
239
|
+
return true;
|
|
240
|
+
}
|
|
241
|
+
if (!paramDefinition.required_for || paramDefinition.required_for.length === 0) {
|
|
242
|
+
return false;
|
|
243
|
+
}
|
|
244
|
+
return paramDefinition.required_for.includes(action);
|
|
245
|
+
}
|
|
246
|
+
function getArgumentValue(args, names) {
|
|
247
|
+
for (const name of names) {
|
|
248
|
+
if (args[name] !== undefined) {
|
|
249
|
+
return args[name];
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
return undefined;
|
|
253
|
+
}
|
|
254
|
+
function resolveOperationCategory(operation, action) {
|
|
255
|
+
if (operation) {
|
|
256
|
+
const method = operation.method.toLowerCase();
|
|
257
|
+
if (method === 'get') {
|
|
258
|
+
const hasPathParams = operation.parameters.some(param => param.in === 'path');
|
|
259
|
+
return hasPathParams ? 'read' : 'list';
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
const actionValue = typeof action === 'string' ? action.toLowerCase() : '';
|
|
263
|
+
if (actionValue === 'list' || actionValue === 'search') {
|
|
264
|
+
return 'list';
|
|
265
|
+
}
|
|
266
|
+
if (actionValue === 'get' || actionValue === 'read') {
|
|
267
|
+
return 'read';
|
|
268
|
+
}
|
|
269
|
+
return 'modify';
|
|
270
|
+
}
|
|
271
|
+
function dedupe(values) {
|
|
272
|
+
return Array.from(new Set(values));
|
|
273
|
+
}
|
|
274
|
+
function isPrimitiveValue(value) {
|
|
275
|
+
return ['string', 'number', 'boolean'].includes(typeof value);
|
|
276
|
+
}
|
|
277
|
+
function formatValue(value) {
|
|
278
|
+
if (value === undefined) {
|
|
279
|
+
return 'undefined';
|
|
280
|
+
}
|
|
281
|
+
if (value === null) {
|
|
282
|
+
return 'null';
|
|
283
|
+
}
|
|
284
|
+
if (Array.isArray(value)) {
|
|
285
|
+
return 'array';
|
|
286
|
+
}
|
|
287
|
+
if (typeof value === 'object') {
|
|
288
|
+
return 'object';
|
|
289
|
+
}
|
|
290
|
+
return String(value);
|
|
291
|
+
}
|
|
292
|
+
//# sourceMappingURL=filtering.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filtering.js","sourceRoot":"","sources":["../../src/filtering.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,9 @@ export declare const parameterDefinitionSchema: z.ZodObject<{
|
|
|
19
19
|
required: z.ZodOptional<z.ZodBoolean>;
|
|
20
20
|
required_for: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
21
21
|
enum: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
22
|
+
minLength: z.ZodOptional<z.ZodNumber>;
|
|
23
|
+
maxLength: z.ZodOptional<z.ZodNumber>;
|
|
24
|
+
pattern: z.ZodOptional<z.ZodString>;
|
|
22
25
|
items: z.ZodOptional<z.ZodObject<{
|
|
23
26
|
type: z.ZodString;
|
|
24
27
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -55,6 +58,9 @@ export declare const parameterDefinitionSchema: z.ZodObject<{
|
|
|
55
58
|
required?: boolean | undefined;
|
|
56
59
|
required_for?: string[] | undefined;
|
|
57
60
|
enum?: string[] | undefined;
|
|
61
|
+
minLength?: number | undefined;
|
|
62
|
+
maxLength?: number | undefined;
|
|
63
|
+
pattern?: string | undefined;
|
|
58
64
|
items?: {
|
|
59
65
|
type: string;
|
|
60
66
|
} | undefined;
|
|
@@ -75,6 +81,9 @@ export declare const parameterDefinitionSchema: z.ZodObject<{
|
|
|
75
81
|
required?: boolean | undefined;
|
|
76
82
|
required_for?: string[] | undefined;
|
|
77
83
|
enum?: string[] | undefined;
|
|
84
|
+
minLength?: number | undefined;
|
|
85
|
+
maxLength?: number | undefined;
|
|
86
|
+
pattern?: string | undefined;
|
|
78
87
|
items?: {
|
|
79
88
|
type: string;
|
|
80
89
|
} | undefined;
|
|
@@ -305,6 +314,9 @@ export declare const toolDefinitionSchema: z.ZodObject<{
|
|
|
305
314
|
required: z.ZodOptional<z.ZodBoolean>;
|
|
306
315
|
required_for: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
307
316
|
enum: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
317
|
+
minLength: z.ZodOptional<z.ZodNumber>;
|
|
318
|
+
maxLength: z.ZodOptional<z.ZodNumber>;
|
|
319
|
+
pattern: z.ZodOptional<z.ZodString>;
|
|
308
320
|
items: z.ZodOptional<z.ZodObject<{
|
|
309
321
|
type: z.ZodString;
|
|
310
322
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -341,6 +353,9 @@ export declare const toolDefinitionSchema: z.ZodObject<{
|
|
|
341
353
|
required?: boolean | undefined;
|
|
342
354
|
required_for?: string[] | undefined;
|
|
343
355
|
enum?: string[] | undefined;
|
|
356
|
+
minLength?: number | undefined;
|
|
357
|
+
maxLength?: number | undefined;
|
|
358
|
+
pattern?: string | undefined;
|
|
344
359
|
items?: {
|
|
345
360
|
type: string;
|
|
346
361
|
} | undefined;
|
|
@@ -361,6 +376,9 @@ export declare const toolDefinitionSchema: z.ZodObject<{
|
|
|
361
376
|
required?: boolean | undefined;
|
|
362
377
|
required_for?: string[] | undefined;
|
|
363
378
|
enum?: string[] | undefined;
|
|
379
|
+
minLength?: number | undefined;
|
|
380
|
+
maxLength?: number | undefined;
|
|
381
|
+
pattern?: string | undefined;
|
|
364
382
|
items?: {
|
|
365
383
|
type: string;
|
|
366
384
|
} | undefined;
|
|
@@ -388,6 +406,9 @@ export declare const toolDefinitionSchema: z.ZodObject<{
|
|
|
388
406
|
required?: boolean | undefined;
|
|
389
407
|
required_for?: string[] | undefined;
|
|
390
408
|
enum?: string[] | undefined;
|
|
409
|
+
minLength?: number | undefined;
|
|
410
|
+
maxLength?: number | undefined;
|
|
411
|
+
pattern?: string | undefined;
|
|
391
412
|
items?: {
|
|
392
413
|
type: string;
|
|
393
414
|
} | undefined;
|
|
@@ -435,6 +456,9 @@ export declare const toolDefinitionSchema: z.ZodObject<{
|
|
|
435
456
|
required?: boolean | undefined;
|
|
436
457
|
required_for?: string[] | undefined;
|
|
437
458
|
enum?: string[] | undefined;
|
|
459
|
+
minLength?: number | undefined;
|
|
460
|
+
maxLength?: number | undefined;
|
|
461
|
+
pattern?: string | undefined;
|
|
438
462
|
items?: {
|
|
439
463
|
type: string;
|
|
440
464
|
} | undefined;
|
|
@@ -1053,6 +1077,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1053
1077
|
required: z.ZodOptional<z.ZodBoolean>;
|
|
1054
1078
|
required_for: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
1055
1079
|
enum: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
1080
|
+
minLength: z.ZodOptional<z.ZodNumber>;
|
|
1081
|
+
maxLength: z.ZodOptional<z.ZodNumber>;
|
|
1082
|
+
pattern: z.ZodOptional<z.ZodString>;
|
|
1056
1083
|
items: z.ZodOptional<z.ZodObject<{
|
|
1057
1084
|
type: z.ZodString;
|
|
1058
1085
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -1089,6 +1116,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1089
1116
|
required?: boolean | undefined;
|
|
1090
1117
|
required_for?: string[] | undefined;
|
|
1091
1118
|
enum?: string[] | undefined;
|
|
1119
|
+
minLength?: number | undefined;
|
|
1120
|
+
maxLength?: number | undefined;
|
|
1121
|
+
pattern?: string | undefined;
|
|
1092
1122
|
items?: {
|
|
1093
1123
|
type: string;
|
|
1094
1124
|
} | undefined;
|
|
@@ -1109,6 +1139,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1109
1139
|
required?: boolean | undefined;
|
|
1110
1140
|
required_for?: string[] | undefined;
|
|
1111
1141
|
enum?: string[] | undefined;
|
|
1142
|
+
minLength?: number | undefined;
|
|
1143
|
+
maxLength?: number | undefined;
|
|
1144
|
+
pattern?: string | undefined;
|
|
1112
1145
|
items?: {
|
|
1113
1146
|
type: string;
|
|
1114
1147
|
} | undefined;
|
|
@@ -1136,6 +1169,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1136
1169
|
required?: boolean | undefined;
|
|
1137
1170
|
required_for?: string[] | undefined;
|
|
1138
1171
|
enum?: string[] | undefined;
|
|
1172
|
+
minLength?: number | undefined;
|
|
1173
|
+
maxLength?: number | undefined;
|
|
1174
|
+
pattern?: string | undefined;
|
|
1139
1175
|
items?: {
|
|
1140
1176
|
type: string;
|
|
1141
1177
|
} | undefined;
|
|
@@ -1183,6 +1219,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1183
1219
|
required?: boolean | undefined;
|
|
1184
1220
|
required_for?: string[] | undefined;
|
|
1185
1221
|
enum?: string[] | undefined;
|
|
1222
|
+
minLength?: number | undefined;
|
|
1223
|
+
maxLength?: number | undefined;
|
|
1224
|
+
pattern?: string | undefined;
|
|
1186
1225
|
items?: {
|
|
1187
1226
|
type: string;
|
|
1188
1227
|
} | undefined;
|
|
@@ -1639,6 +1678,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1639
1678
|
required?: boolean | undefined;
|
|
1640
1679
|
required_for?: string[] | undefined;
|
|
1641
1680
|
enum?: string[] | undefined;
|
|
1681
|
+
minLength?: number | undefined;
|
|
1682
|
+
maxLength?: number | undefined;
|
|
1683
|
+
pattern?: string | undefined;
|
|
1642
1684
|
items?: {
|
|
1643
1685
|
type: string;
|
|
1644
1686
|
} | undefined;
|
|
@@ -1767,6 +1809,9 @@ export declare const profileSchema: z.ZodObject<{
|
|
|
1767
1809
|
required?: boolean | undefined;
|
|
1768
1810
|
required_for?: string[] | undefined;
|
|
1769
1811
|
enum?: string[] | undefined;
|
|
1812
|
+
minLength?: number | undefined;
|
|
1813
|
+
maxLength?: number | undefined;
|
|
1814
|
+
pattern?: string | undefined;
|
|
1770
1815
|
items?: {
|
|
1771
1816
|
type: string;
|
|
1772
1817
|
} | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-schemas.d.ts","sourceRoot":"","sources":["../../src/generated-schemas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAI9B,CAAC;AAEH,eAAO,MAAM,mBAAmB,+JAA2I,CAAC;AAE5K,eAAO,MAAM,yBAAyB
|
|
1
|
+
{"version":3,"file":"generated-schemas.d.ts","sourceRoot":"","sources":["../../src/generated-schemas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;EAI9B,CAAC;AAEH,eAAO,MAAM,mBAAmB,+JAA2I,CAAC;AAE5K,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBpC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYvC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAsD,CAAC;AAE7F,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAY5B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW/B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAchC,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMlC,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWxB,CAAC"}
|
|
@@ -12,6 +12,9 @@ export const parameterDefinitionSchema = z.object({
|
|
|
12
12
|
required: z.boolean().optional(),
|
|
13
13
|
required_for: z.array(z.string()).optional(),
|
|
14
14
|
enum: z.array(z.string()).optional(),
|
|
15
|
+
minLength: z.number().optional(),
|
|
16
|
+
maxLength: z.number().optional(),
|
|
17
|
+
pattern: z.string().optional(),
|
|
15
18
|
items: z.object({
|
|
16
19
|
type: z.string()
|
|
17
20
|
}).optional(),
|