@draftt-io/draftt-mcp 1.0.2 → 1.1.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.
Files changed (47) hide show
  1. package/LICENSE +21 -201
  2. package/README.md +88 -19
  3. package/dist/api/client.d.ts +16 -7
  4. package/dist/api/client.js +42 -12
  5. package/dist/api/client.js.map +1 -1
  6. package/dist/api/drafttClient.d.ts +14 -11
  7. package/dist/api/drafttClient.js +39 -16
  8. package/dist/api/drafttClient.js.map +1 -1
  9. package/dist/api/responseFormatter.d.ts +6 -6
  10. package/dist/api/responseFormatter.js +160 -7
  11. package/dist/api/responseFormatter.js.map +1 -1
  12. package/dist/handlers/componentHandler.d.ts +4 -2
  13. package/dist/handlers/componentHandler.js +16 -9
  14. package/dist/handlers/componentHandler.js.map +1 -1
  15. package/dist/handlers/drafttHandler.d.ts +10 -2
  16. package/dist/handlers/drafttHandler.js +29 -4
  17. package/dist/handlers/drafttHandler.js.map +1 -1
  18. package/dist/handlers/policyHandler.d.ts +10 -6
  19. package/dist/handlers/policyHandler.js +43 -23
  20. package/dist/handlers/policyHandler.js.map +1 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.js +120 -56
  23. package/dist/index.js.map +1 -1
  24. package/dist/mcp-server-sse.d.ts +2 -0
  25. package/dist/mcp-server-sse.js +151 -0
  26. package/dist/mcp-server-sse.js.map +1 -0
  27. package/dist/models/component.d.ts +46 -44
  28. package/dist/models/draftt.d.ts +5 -0
  29. package/dist/models/policy.d.ts +30 -1
  30. package/dist/schemas/componentSchema.d.ts +376 -203
  31. package/dist/schemas/componentSchema.js +155 -47
  32. package/dist/schemas/componentSchema.js.map +1 -1
  33. package/dist/schemas/drafttSchema.d.ts +18 -1
  34. package/dist/schemas/drafttSchema.js +16 -2
  35. package/dist/schemas/drafttSchema.js.map +1 -1
  36. package/dist/schemas/policySchema.d.ts +190 -5
  37. package/dist/schemas/policySchema.js +69 -10
  38. package/dist/schemas/policySchema.js.map +1 -1
  39. package/dist/utils/constants.d.ts +31 -3
  40. package/dist/utils/constants.js +103 -24
  41. package/dist/utils/constants.js.map +1 -1
  42. package/dist/utils/json.d.ts +37 -0
  43. package/dist/utils/json.js +102 -0
  44. package/dist/utils/json.js.map +1 -0
  45. package/dist/utils/logger.d.ts +1 -1
  46. package/dist/utils/logger.js +2 -2
  47. package/package.json +9 -4
@@ -1,11 +1,32 @@
1
- import { SortParams, DateRangeFilter, TagFilter, ComponentType, Technology, Region, SortDirection } from "../utils/constants";
1
+ import { SortParams, DateRangeFilter, TagFilter, ComponentType, Technology, Region } from "../utils/constants";
2
+ interface FilterOperator<T> {
3
+ $eq?: T;
4
+ $ne?: T;
5
+ $gt?: T;
6
+ $gte?: T;
7
+ $lt?: T;
8
+ $lte?: T;
9
+ $in?: T[];
10
+ $nin?: T[];
11
+ $exists?: boolean;
12
+ }
13
+ interface QueryFilter {
14
+ $and?: QueryFilter[];
15
+ $or?: QueryFilter[];
16
+ [key: string]: FilterOperator<unknown> | QueryFilter[] | undefined;
17
+ }
18
+ interface TagFilterQuery {
19
+ $and?: TagFilterQuery[];
20
+ $or?: TagFilterQuery[];
21
+ [key: string]: FilterOperator<string> | TagFilterQuery[] | undefined;
22
+ }
2
23
  export interface ComponentSearchArgs {
3
24
  filter?: {
4
25
  integrationId?: string;
5
26
  uniqueIdentifier?: string;
6
- region?: Region[];
27
+ region?: Region;
7
28
  technology?: Technology;
8
- type?: ComponentType[];
29
+ type?: ComponentType;
9
30
  version?: string;
10
31
  tags?: TagFilter[];
11
32
  createdAt?: DateRangeFilter;
@@ -16,49 +37,30 @@ export interface ComponentSearchArgs {
16
37
  pageSize?: number;
17
38
  }
18
39
  export interface ComponentGetArgs {
19
- componentId: string;
40
+ componentId: string | number;
20
41
  }
21
- export interface PolicyComponentSortParams {
22
- componentId?: SortDirection;
23
- integrationId?: SortDirection;
24
- name?: SortDirection;
25
- technology?: SortDirection;
26
- type?: SortDirection;
27
- urgency?: SortDirection;
28
- priority?: SortDirection;
29
- isCompliant?: SortDirection;
30
- requiredVersion?: SortDirection;
31
- desiredVersion?: SortDirection;
32
- recommendedVersion?: SortDirection;
33
- dueDate?: SortDirection;
34
- tags?: SortDirection;
35
- createdAt?: SortDirection;
36
- updatedAt?: SortDirection;
42
+ export interface PolicyComponentGetArgs {
43
+ policyId: string | number;
44
+ componentId: string | number;
37
45
  }
38
- export interface PolicyComponentSearchArgs {
39
- policyId: string;
40
- filter?: {
41
- componentId?: number;
42
- integrationId?: number;
43
- name?: string;
44
- technology?: Technology;
45
- type?: ComponentType[];
46
- urgency?: number;
47
- priority?: number;
48
- isCompliant?: boolean;
49
- requiredVersion?: string;
50
- desiredVersion?: string;
51
- recommendedVersion?: string;
52
- dueDate?: DateRangeFilter;
53
- tags?: TagFilter[];
54
- createdAt?: DateRangeFilter;
55
- updatedAt?: DateRangeFilter;
56
- };
57
- sort?: PolicyComponentSortParams;
58
- nextToken?: string;
46
+ export interface PolicyComponentQueryArgs {
47
+ policyId: string | number;
48
+ filter?: QueryFilter;
49
+ tagFilters?: TagFilterQuery;
50
+ selectTags?: boolean;
51
+ calculateDisplayNames?: boolean;
52
+ select?: string[];
53
+ sort?: Record<string, "asc" | "desc">;
54
+ pageToken?: string;
59
55
  pageSize?: number;
60
56
  }
61
- export interface PolicyComponentGetArgs {
62
- policyId: string;
63
- componentId: string;
57
+ export interface ComponentQueryArgs {
58
+ filter?: QueryFilter;
59
+ tagFilters?: TagFilterQuery;
60
+ selectTags?: boolean;
61
+ select?: string[];
62
+ sort?: Record<string, "asc" | "desc">;
63
+ pageToken?: string;
64
+ pageSize?: number;
64
65
  }
66
+ export {};
@@ -1,2 +1,7 @@
1
1
  export interface DrafttGetArgs {
2
+ random_string?: string;
3
+ }
4
+ export interface DrafttQueryArgs {
5
+ componentId: string | number;
6
+ sections?: ("eksAddOns" | "deployments" | "controlPlane" | "nodes" | "k8sApi")[];
2
7
  }
@@ -17,5 +17,34 @@ export interface PolicySearchArgs {
17
17
  pageSize?: number;
18
18
  }
19
19
  export interface PolicyGetArgs {
20
- policyId: string;
20
+ policyId: string | number;
21
21
  }
22
+ interface FilterOperator<T> {
23
+ $eq?: T;
24
+ $ne?: T;
25
+ $gt?: T;
26
+ $gte?: T;
27
+ $lt?: T;
28
+ $lte?: T;
29
+ $in?: T[];
30
+ $nin?: T[];
31
+ $exists?: boolean;
32
+ }
33
+ interface PolicyQueryFilter {
34
+ $and?: PolicyQueryFilter[];
35
+ $or?: PolicyQueryFilter[];
36
+ id?: FilterOperator<number>;
37
+ name?: FilterOperator<string>;
38
+ description?: FilterOperator<string>;
39
+ createdAt?: FilterOperator<string>;
40
+ updatedAt?: FilterOperator<string>;
41
+ deletedAt?: FilterOperator<string>;
42
+ }
43
+ export interface PolicyQueryArgs {
44
+ filter?: PolicyQueryFilter;
45
+ select?: string[];
46
+ sort?: Record<string, "asc" | "desc">;
47
+ pageToken?: string;
48
+ pageSize?: number;
49
+ }
50
+ export {};