@decaf-ts/mcp-server 0.0.3 → 0.2.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.
Files changed (214) hide show
  1. package/README.md +18 -2
  2. package/dist/mcp-server.cjs +1989 -341
  3. package/dist/mcp-server.esm.cjs +1963 -338
  4. package/lib/McpWrapper.cjs +12 -10
  5. package/lib/McpWrapper.d.ts +1 -1
  6. package/lib/bin/validate-modules.cjs +24 -0
  7. package/lib/bin/validate-modules.d.ts +2 -0
  8. package/lib/constants.cjs +22 -2
  9. package/lib/constants.d.ts +16 -0
  10. package/lib/esm/McpWrapper.d.ts +1 -1
  11. package/lib/esm/McpWrapper.js +12 -10
  12. package/lib/esm/bin/validate-modules.d.ts +2 -0
  13. package/lib/esm/bin/validate-modules.js +22 -0
  14. package/lib/esm/constants.d.ts +16 -0
  15. package/lib/esm/constants.js +21 -1
  16. package/lib/esm/mcp/aggregateModules.d.ts +26 -0
  17. package/lib/esm/mcp/aggregateModules.js +185 -0
  18. package/lib/esm/mcp/code.d.ts +23 -0
  19. package/lib/esm/mcp/code.js +70 -0
  20. package/lib/esm/mcp/decorator-tools.js +237 -0
  21. package/lib/esm/mcp/fastmcp-wiring.d.ts +14 -0
  22. package/lib/esm/mcp/fastmcp-wiring.js +56 -0
  23. package/lib/esm/mcp/index.d.ts +7 -1
  24. package/lib/esm/mcp/index.js +26 -2
  25. package/lib/esm/mcp/mcp-module.d.ts +11 -0
  26. package/lib/esm/mcp/mcp-module.js +31 -0
  27. package/lib/esm/mcp/moduleRegistry.d.ts +12 -0
  28. package/lib/esm/mcp/moduleRegistry.js +46 -0
  29. package/lib/esm/mcp/prompts/index.d.ts +4 -0
  30. package/lib/esm/mcp/prompts/index.js +7 -0
  31. package/lib/esm/mcp/prompts/prompts.d.ts +22 -0
  32. package/lib/esm/mcp/prompts/prompts.js +197 -0
  33. package/lib/esm/mcp/resources/index.d.ts +1 -0
  34. package/lib/esm/mcp/resources/index.js +2 -0
  35. package/lib/esm/mcp/resources/resources.d.ts +2 -0
  36. package/lib/esm/mcp/resources/resources.js +69 -0
  37. package/lib/esm/mcp/schemas.d.ts +53 -0
  38. package/lib/esm/mcp/schemas.js +97 -0
  39. package/lib/esm/mcp/templates/codex-templates.d.ts +3 -0
  40. package/lib/esm/mcp/templates/codex-templates.js +33 -0
  41. package/lib/esm/mcp/templates/index.d.ts +71 -0
  42. package/lib/esm/mcp/templates/index.js +66 -0
  43. package/lib/esm/mcp/templates/resource-templates.d.ts +3 -0
  44. package/lib/esm/mcp/templates/resource-templates.js +60 -0
  45. package/lib/esm/mcp/templates/workspace-templates.d.ts +3 -0
  46. package/lib/esm/mcp/templates/workspace-templates.js +66 -0
  47. package/lib/esm/mcp/tools/codex-tools.d.ts +5 -0
  48. package/lib/esm/mcp/tools/codex-tools.js +244 -0
  49. package/lib/esm/mcp/tools/generateMcpModule.d.ts +9 -0
  50. package/lib/esm/mcp/tools/generateMcpModule.js +133 -0
  51. package/lib/esm/mcp/tools/index.d.ts +321 -0
  52. package/lib/esm/mcp/tools/index.js +29 -0
  53. package/lib/esm/mcp/tools/tools.d.ts +10 -0
  54. package/lib/esm/mcp/tools/tools.js +273 -0
  55. package/lib/esm/mcp/types.d.ts +66 -0
  56. package/lib/esm/mcp/types.js +2 -0
  57. package/lib/esm/mcp/utils.d.ts +4 -0
  58. package/lib/esm/mcp/utils.js +46 -0
  59. package/lib/esm/mcp/validation/index.d.ts +13 -0
  60. package/lib/esm/mcp/validation/index.js +116 -0
  61. package/lib/esm/mcp/validation/scaffoldModule.d.ts +9 -0
  62. package/lib/esm/mcp/validation/scaffoldModule.js +88 -0
  63. package/lib/esm/mcp/workspace.d.ts +9 -0
  64. package/lib/esm/mcp/workspace.js +73 -0
  65. package/lib/esm/metadata.d.ts +1 -1
  66. package/lib/esm/metadata.js +1 -1
  67. package/lib/esm/modules/_template/index.d.ts +32 -0
  68. package/lib/esm/modules/_template/index.js +16 -0
  69. package/lib/esm/modules/_template/prompts/index.d.ts +6 -0
  70. package/lib/esm/modules/_template/prompts/index.js +9 -0
  71. package/lib/esm/modules/_template/resources/index.d.ts +6 -0
  72. package/lib/esm/modules/_template/resources/index.js +9 -0
  73. package/lib/esm/modules/_template/templates/index.d.ts +7 -0
  74. package/lib/esm/modules/_template/templates/index.js +10 -0
  75. package/lib/esm/modules/_template/tools/index.d.ts +6 -0
  76. package/lib/esm/modules/_template/tools/index.js +15 -0
  77. package/lib/esm/modules/decoration/index.d.ts +46 -0
  78. package/lib/esm/modules/decoration/index.js +10 -2
  79. package/lib/esm/modules/decoration/prompts/index.d.ts +1 -0
  80. package/lib/esm/modules/decoration/prompts/index.js +2 -0
  81. package/lib/esm/modules/decoration/resources/index.d.ts +7 -0
  82. package/lib/esm/modules/decoration/resources/index.js +10 -0
  83. package/lib/esm/modules/decoration/templates/index.d.ts +6 -0
  84. package/lib/esm/modules/decoration/templates/index.js +9 -0
  85. package/lib/esm/modules/decoration/tools/index.d.ts +26 -0
  86. package/lib/esm/modules/decoration/tools/index.js +7 -0
  87. package/lib/esm/modules/index.d.ts +2 -0
  88. package/lib/esm/modules/index.js +10 -0
  89. package/lib/esm/modules/mcp/decoration-assist.d.ts +4 -0
  90. package/lib/esm/modules/mcp/decoration-assist.js +6 -0
  91. package/lib/esm/modules/mcp/index.d.ts +6 -2
  92. package/lib/esm/modules/mcp/index.js +16 -3
  93. package/lib/esm/modules/mcp/prompts/index.d.ts +2 -0
  94. package/lib/esm/modules/mcp/prompts/index.js +9 -0
  95. package/lib/esm/modules/mcp/resources/index.d.ts +2 -0
  96. package/lib/esm/modules/mcp/resources/index.js +24 -0
  97. package/lib/esm/modules/mcp/templates/index.d.ts +2 -0
  98. package/lib/esm/modules/mcp/templates/index.js +28 -0
  99. package/lib/esm/modules/mcp/tools/index.d.ts +6 -0
  100. package/lib/esm/modules/mcp/tools/index.js +15 -0
  101. package/lib/esm/types.d.ts +41 -1
  102. package/lib/esm/types.js +1 -1
  103. package/lib/esm/utils/modulePaths.d.ts +6 -0
  104. package/lib/esm/utils/modulePaths.js +33 -0
  105. package/lib/esm/utils/moduleValidator.d.ts +14 -0
  106. package/lib/esm/utils/moduleValidator.js +176 -0
  107. package/lib/esm/utils.d.ts +1 -0
  108. package/lib/esm/utils.js +2 -1
  109. package/lib/mcp/aggregateModules.cjs +225 -0
  110. package/lib/mcp/aggregateModules.d.ts +26 -0
  111. package/lib/mcp/code.cjs +81 -0
  112. package/lib/mcp/code.d.ts +23 -0
  113. package/lib/mcp/decorator-tools.cjs +243 -0
  114. package/lib/mcp/fastmcp-wiring.cjs +59 -0
  115. package/lib/mcp/fastmcp-wiring.d.ts +14 -0
  116. package/lib/mcp/index.cjs +47 -12
  117. package/lib/mcp/index.d.ts +7 -1
  118. package/lib/mcp/mcp-module.cjs +53 -0
  119. package/lib/mcp/mcp-module.d.ts +11 -0
  120. package/lib/mcp/moduleRegistry.cjs +50 -0
  121. package/lib/mcp/moduleRegistry.d.ts +12 -0
  122. package/lib/mcp/prompts/index.cjs +25 -0
  123. package/lib/mcp/prompts/index.d.ts +4 -0
  124. package/lib/mcp/prompts/prompts.cjs +211 -0
  125. package/lib/mcp/prompts/prompts.d.ts +22 -0
  126. package/lib/mcp/resources/index.cjs +18 -0
  127. package/lib/mcp/resources/index.d.ts +1 -0
  128. package/lib/mcp/resources/resources.cjs +72 -0
  129. package/lib/mcp/resources/resources.d.ts +2 -0
  130. package/lib/mcp/schemas.cjs +100 -0
  131. package/lib/mcp/schemas.d.ts +53 -0
  132. package/lib/mcp/templates/codex-templates.cjs +40 -0
  133. package/lib/mcp/templates/codex-templates.d.ts +3 -0
  134. package/lib/mcp/templates/index.cjs +76 -0
  135. package/lib/mcp/templates/index.d.ts +71 -0
  136. package/lib/mcp/templates/resource-templates.cjs +67 -0
  137. package/lib/mcp/templates/resource-templates.d.ts +3 -0
  138. package/lib/mcp/templates/workspace-templates.cjs +70 -0
  139. package/lib/mcp/templates/workspace-templates.d.ts +3 -0
  140. package/lib/mcp/tools/codex-tools.cjs +250 -0
  141. package/lib/mcp/tools/codex-tools.d.ts +5 -0
  142. package/lib/mcp/tools/generateMcpModule.cjs +139 -0
  143. package/lib/mcp/tools/generateMcpModule.d.ts +9 -0
  144. package/lib/mcp/tools/index.cjs +46 -0
  145. package/lib/mcp/tools/index.d.ts +321 -0
  146. package/lib/mcp/tools/tools.cjs +282 -0
  147. package/lib/mcp/tools/tools.d.ts +10 -0
  148. package/lib/mcp/types.cjs +3 -0
  149. package/lib/mcp/types.d.ts +66 -0
  150. package/lib/mcp/utils.cjs +54 -0
  151. package/lib/mcp/utils.d.ts +4 -0
  152. package/lib/mcp/validation/index.cjs +123 -0
  153. package/lib/mcp/validation/index.d.ts +13 -0
  154. package/lib/mcp/validation/scaffoldModule.cjs +94 -0
  155. package/lib/mcp/validation/scaffoldModule.d.ts +9 -0
  156. package/lib/mcp/workspace.cjs +119 -0
  157. package/lib/mcp/workspace.d.ts +9 -0
  158. package/lib/metadata.cjs +1 -1
  159. package/lib/metadata.d.ts +1 -1
  160. package/lib/modules/_template/index.cjs +23 -0
  161. package/lib/modules/_template/index.d.ts +32 -0
  162. package/lib/modules/_template/prompts/index.cjs +12 -0
  163. package/lib/modules/_template/prompts/index.d.ts +6 -0
  164. package/lib/modules/_template/resources/index.cjs +12 -0
  165. package/lib/modules/_template/resources/index.d.ts +6 -0
  166. package/lib/modules/_template/templates/index.cjs +13 -0
  167. package/lib/modules/_template/templates/index.d.ts +7 -0
  168. package/lib/modules/_template/tools/index.cjs +18 -0
  169. package/lib/modules/_template/tools/index.d.ts +6 -0
  170. package/lib/modules/decoration/index.cjs +16 -1
  171. package/lib/modules/decoration/index.d.ts +46 -0
  172. package/lib/modules/decoration/prompts/index.cjs +5 -0
  173. package/lib/modules/decoration/prompts/index.d.ts +1 -0
  174. package/lib/modules/decoration/resources/index.cjs +13 -0
  175. package/lib/modules/decoration/resources/index.d.ts +7 -0
  176. package/lib/modules/decoration/templates/index.cjs +12 -0
  177. package/lib/modules/decoration/templates/index.d.ts +6 -0
  178. package/lib/modules/decoration/tools/index.cjs +10 -0
  179. package/lib/modules/decoration/tools/index.d.ts +26 -0
  180. package/lib/modules/index.cjs +13 -0
  181. package/lib/modules/index.d.ts +2 -0
  182. package/lib/modules/mcp/decoration-assist.cjs +13 -0
  183. package/lib/modules/mcp/decoration-assist.d.ts +4 -0
  184. package/lib/modules/mcp/index.cjs +21 -22
  185. package/lib/modules/mcp/index.d.ts +6 -2
  186. package/lib/modules/mcp/prompts/index.cjs +12 -0
  187. package/lib/modules/mcp/prompts/index.d.ts +2 -0
  188. package/lib/modules/mcp/resources/index.cjs +27 -0
  189. package/lib/modules/mcp/resources/index.d.ts +2 -0
  190. package/lib/modules/mcp/templates/index.cjs +31 -0
  191. package/lib/modules/mcp/templates/index.d.ts +2 -0
  192. package/lib/modules/mcp/tools/index.cjs +18 -0
  193. package/lib/modules/mcp/tools/index.d.ts +6 -0
  194. package/lib/types.cjs +1 -1
  195. package/lib/types.d.ts +41 -1
  196. package/lib/utils/modulePaths.cjs +43 -0
  197. package/lib/utils/modulePaths.d.ts +6 -0
  198. package/lib/utils/moduleValidator.cjs +184 -0
  199. package/lib/utils/moduleValidator.d.ts +14 -0
  200. package/lib/utils.cjs +5 -1
  201. package/lib/utils.d.ts +1 -0
  202. package/package.json +18 -12
  203. package/lib/esm/modules/decoration-assist/index.d.ts +0 -39
  204. package/lib/esm/modules/decoration-assist/index.js +0 -353
  205. package/lib/esm/modules/mcp/decorator-tools.js +0 -237
  206. package/lib/esm/modules/mcp/mcp-module.d.ts +0 -230
  207. package/lib/esm/modules/mcp/mcp-module.js +0 -406
  208. package/lib/modules/decoration-assist/index.cjs +0 -360
  209. package/lib/modules/decoration-assist/index.d.ts +0 -39
  210. package/lib/modules/mcp/decorator-tools.cjs +0 -243
  211. package/lib/modules/mcp/mcp-module.cjs +0 -452
  212. package/lib/modules/mcp/mcp-module.d.ts +0 -230
  213. /package/lib/esm/{modules/mcp → mcp}/decorator-tools.d.ts +0 -0
  214. /package/lib/{modules/mcp → mcp}/decorator-tools.d.ts +0 -0
@@ -0,0 +1,321 @@
1
+ import { decoratorTools } from "../decorator-tools";
2
+ export * from "./tools";
3
+ export * from "./codex-tools";
4
+ export * from "./generateMcpModule";
5
+ export declare const toolList: any[];
6
+ export declare const decoratorToolList: ({
7
+ readonly name: "create-or-update-model";
8
+ readonly description: "Create or update a validation-ready model class";
9
+ readonly execute: (args: {
10
+ filePath: string;
11
+ className: string;
12
+ classDecorators?: import("../decorator-tools").DecoratorSpec[];
13
+ properties: import("../decorator-tools").AttributeSpec[];
14
+ importsFrom: string;
15
+ overwrite?: boolean;
16
+ }) => Promise<{
17
+ filePath: string;
18
+ }>;
19
+ } | {
20
+ readonly name: "add-attribute";
21
+ readonly description: "Add a decorated attribute to an existing model";
22
+ readonly execute: (args: {
23
+ filePath: string;
24
+ className: string;
25
+ attribute: import("../decorator-tools").AttributeSpec;
26
+ importsFrom: string;
27
+ }) => Promise<{
28
+ filePath: string;
29
+ }>;
30
+ } | {
31
+ readonly name: "remove-attribute";
32
+ readonly description: "Remove an attribute from a model class";
33
+ readonly execute: (args: {
34
+ filePath: string;
35
+ className: string;
36
+ attributeName: string;
37
+ }) => Promise<{
38
+ filePath: string;
39
+ }>;
40
+ } | {
41
+ readonly name: "apply-decorator";
42
+ readonly description: "Apply a decorator to a class or property";
43
+ readonly execute: (args: {
44
+ filePath: string;
45
+ className: string;
46
+ target: {
47
+ kind: "class" | "property";
48
+ name?: string;
49
+ };
50
+ decorator: import("../decorator-tools").DecoratorSpec;
51
+ importsFrom: string;
52
+ }) => Promise<{
53
+ filePath: string;
54
+ }>;
55
+ } | {
56
+ readonly name: "remove-decorator";
57
+ readonly description: "Remove a decorator from a class or property";
58
+ readonly execute: (args: {
59
+ filePath: string;
60
+ className: string;
61
+ target: {
62
+ kind: "class" | "property";
63
+ name?: string;
64
+ };
65
+ decoratorName: string;
66
+ }) => Promise<{
67
+ filePath: string;
68
+ }>;
69
+ } | {
70
+ readonly name: "scaffold-validator";
71
+ readonly description: "Scaffold a validator class and optional decorator";
72
+ readonly execute: (args: {
73
+ validatorsDir: string;
74
+ decoratorDir?: string;
75
+ name: string;
76
+ }) => Promise<{
77
+ classFile: string;
78
+ decoratorFile: string | undefined;
79
+ }>;
80
+ } | {
81
+ readonly name: "scaffold-serializer";
82
+ readonly description: "Scaffold a serializer class and optional registry";
83
+ readonly execute: (args: {
84
+ dir: string;
85
+ name: string;
86
+ registerDir?: string;
87
+ setDefault?: boolean;
88
+ }) => Promise<{
89
+ classFile: string;
90
+ registerFile: string | undefined;
91
+ }>;
92
+ } | {
93
+ readonly name: "scaffold-hashing";
94
+ readonly description: "Scaffold a hashing function and optional registry";
95
+ readonly execute: (args: {
96
+ dir: string;
97
+ name: string;
98
+ registerDir?: string;
99
+ setDefault?: boolean;
100
+ }) => Promise<{
101
+ functionFile: string;
102
+ registerFile: string | undefined;
103
+ }>;
104
+ })[];
105
+ export declare const tools: {
106
+ createOrUpdateModelTool: {
107
+ readonly name: "create-or-update-model";
108
+ readonly description: "Create or update a validation-ready model class";
109
+ readonly execute: (args: {
110
+ filePath: string;
111
+ className: string;
112
+ classDecorators?: import("../decorator-tools").DecoratorSpec[];
113
+ properties: import("../decorator-tools").AttributeSpec[];
114
+ importsFrom: string;
115
+ overwrite?: boolean;
116
+ }) => Promise<{
117
+ filePath: string;
118
+ }>;
119
+ };
120
+ addAttributeTool: {
121
+ readonly name: "add-attribute";
122
+ readonly description: "Add a decorated attribute to an existing model";
123
+ readonly execute: (args: {
124
+ filePath: string;
125
+ className: string;
126
+ attribute: import("../decorator-tools").AttributeSpec;
127
+ importsFrom: string;
128
+ }) => Promise<{
129
+ filePath: string;
130
+ }>;
131
+ };
132
+ removeAttributeTool: {
133
+ readonly name: "remove-attribute";
134
+ readonly description: "Remove an attribute from a model class";
135
+ readonly execute: (args: {
136
+ filePath: string;
137
+ className: string;
138
+ attributeName: string;
139
+ }) => Promise<{
140
+ filePath: string;
141
+ }>;
142
+ };
143
+ applyDecoratorTool: {
144
+ readonly name: "apply-decorator";
145
+ readonly description: "Apply a decorator to a class or property";
146
+ readonly execute: (args: {
147
+ filePath: string;
148
+ className: string;
149
+ target: {
150
+ kind: "class" | "property";
151
+ name?: string;
152
+ };
153
+ decorator: import("../decorator-tools").DecoratorSpec;
154
+ importsFrom: string;
155
+ }) => Promise<{
156
+ filePath: string;
157
+ }>;
158
+ };
159
+ removeDecoratorTool: {
160
+ readonly name: "remove-decorator";
161
+ readonly description: "Remove a decorator from a class or property";
162
+ readonly execute: (args: {
163
+ filePath: string;
164
+ className: string;
165
+ target: {
166
+ kind: "class" | "property";
167
+ name?: string;
168
+ };
169
+ decoratorName: string;
170
+ }) => Promise<{
171
+ filePath: string;
172
+ }>;
173
+ };
174
+ scaffoldValidatorTool: {
175
+ readonly name: "scaffold-validator";
176
+ readonly description: "Scaffold a validator class and optional decorator";
177
+ readonly execute: (args: {
178
+ validatorsDir: string;
179
+ decoratorDir?: string;
180
+ name: string;
181
+ }) => Promise<{
182
+ classFile: string;
183
+ decoratorFile: string | undefined;
184
+ }>;
185
+ };
186
+ scaffoldSerializerTool: {
187
+ readonly name: "scaffold-serializer";
188
+ readonly description: "Scaffold a serializer class and optional registry";
189
+ readonly execute: (args: {
190
+ dir: string;
191
+ name: string;
192
+ registerDir?: string;
193
+ setDefault?: boolean;
194
+ }) => Promise<{
195
+ classFile: string;
196
+ registerFile: string | undefined;
197
+ }>;
198
+ };
199
+ scaffoldHashingTool: {
200
+ readonly name: "scaffold-hashing";
201
+ readonly description: "Scaffold a hashing function and optional registry";
202
+ readonly execute: (args: {
203
+ dir: string;
204
+ name: string;
205
+ registerDir?: string;
206
+ setDefault?: boolean;
207
+ }) => Promise<{
208
+ functionFile: string;
209
+ registerFile: string | undefined;
210
+ }>;
211
+ };
212
+ analyzeRepositoryTool: {
213
+ annotations?: {
214
+ streamingHint?: boolean;
215
+ } & {
216
+ destructiveHint?: boolean;
217
+ idempotentHint?: boolean;
218
+ openWorldHint?: boolean;
219
+ readOnlyHint?: boolean;
220
+ title?: string;
221
+ };
222
+ canAccess?: ((auth: undefined) => boolean) | undefined;
223
+ description?: string;
224
+ execute: (args: any, context: import("fastmcp").Context<undefined>) => Promise<import("fastmcp").AudioContent | import("fastmcp").ContentResult | import("fastmcp").ImageContent | import("fastmcp").ResourceContent | import("fastmcp").ResourceLink | string | import("fastmcp").TextContent | void>;
225
+ name: string;
226
+ parameters?: any;
227
+ timeoutMs?: number;
228
+ };
229
+ enumerateCapabilitiesTool: {
230
+ annotations?: {
231
+ streamingHint?: boolean;
232
+ } & {
233
+ destructiveHint?: boolean;
234
+ idempotentHint?: boolean;
235
+ openWorldHint?: boolean;
236
+ readOnlyHint?: boolean;
237
+ title?: string;
238
+ };
239
+ canAccess?: ((auth: undefined) => boolean) | undefined;
240
+ description?: string;
241
+ execute: (args: any, context: import("fastmcp").Context<undefined>) => Promise<import("fastmcp").AudioContent | import("fastmcp").ContentResult | import("fastmcp").ImageContent | import("fastmcp").ResourceContent | import("fastmcp").ResourceLink | string | import("fastmcp").TextContent | void>;
242
+ name: string;
243
+ parameters?: any;
244
+ timeoutMs?: number;
245
+ };
246
+ planFeatureTool: {
247
+ annotations?: {
248
+ streamingHint?: boolean;
249
+ } & {
250
+ destructiveHint?: boolean;
251
+ idempotentHint?: boolean;
252
+ openWorldHint?: boolean;
253
+ readOnlyHint?: boolean;
254
+ title?: string;
255
+ };
256
+ canAccess?: ((auth: undefined) => boolean) | undefined;
257
+ description?: string;
258
+ execute: (args: any, context: import("fastmcp").Context<undefined>) => Promise<import("fastmcp").AudioContent | import("fastmcp").ContentResult | import("fastmcp").ImageContent | import("fastmcp").ResourceContent | import("fastmcp").ResourceLink | string | import("fastmcp").TextContent | void>;
259
+ name: string;
260
+ parameters?: any;
261
+ timeoutMs?: number;
262
+ };
263
+ documentCodeTool: {
264
+ annotations?: {
265
+ streamingHint?: boolean;
266
+ } & {
267
+ destructiveHint?: boolean;
268
+ idempotentHint?: boolean;
269
+ openWorldHint?: boolean;
270
+ readOnlyHint?: boolean;
271
+ title?: string;
272
+ };
273
+ canAccess?: ((auth: undefined) => boolean) | undefined;
274
+ description?: string;
275
+ execute: (args: any, context: import("fastmcp").Context<undefined>) => Promise<import("fastmcp").AudioContent | import("fastmcp").ContentResult | import("fastmcp").ImageContent | import("fastmcp").ResourceContent | import("fastmcp").ResourceLink | string | import("fastmcp").TextContent | void>;
276
+ name: string;
277
+ parameters?: any;
278
+ timeoutMs?: number;
279
+ };
280
+ applyCodeChangeTool: {
281
+ annotations?: {
282
+ streamingHint?: boolean;
283
+ } & {
284
+ destructiveHint?: boolean;
285
+ idempotentHint?: boolean;
286
+ openWorldHint?: boolean;
287
+ readOnlyHint?: boolean;
288
+ title?: string;
289
+ };
290
+ canAccess?: ((auth: undefined) => boolean) | undefined;
291
+ description?: string;
292
+ execute: (args: any, context: import("fastmcp").Context<undefined>) => Promise<import("fastmcp").AudioContent | import("fastmcp").ContentResult | import("fastmcp").ImageContent | import("fastmcp").ResourceContent | import("fastmcp").ResourceLink | string | import("fastmcp").TextContent | void>;
293
+ name: string;
294
+ parameters?: any;
295
+ timeoutMs?: number;
296
+ };
297
+ documentObjectTool: import("fastmcp").Tool<undefined, import("zod").ZodObject<{
298
+ basePath: import("zod").ZodString;
299
+ objectType: import("zod").ZodEnum<{
300
+ function: "function";
301
+ module: "module";
302
+ file: "file";
303
+ class: "class";
304
+ interface: "interface";
305
+ decorator: "decorator";
306
+ constant: "constant";
307
+ }>;
308
+ targetFile: import("zod").ZodOptional<import("zod").ZodString>;
309
+ includeContent: import("zod").ZodDefault<import("zod").ZodBoolean>;
310
+ }, import("zod/v4/core").$strict>>;
311
+ coverageEnforcerTool: import("fastmcp").Tool<undefined, import("zod").ZodObject<{
312
+ basePath: import("zod").ZodString;
313
+ coverage: import("zod").ZodDefault<import("zod").ZodNumber>;
314
+ dryRun: import("zod").ZodDefault<import("zod").ZodBoolean>;
315
+ }, import("zod/v4/core").$strict>>;
316
+ readmeImprovementTool: import("fastmcp").Tool<undefined, import("zod").ZodObject<{
317
+ basePath: import("zod").ZodString;
318
+ includeExamples: import("zod").ZodDefault<import("zod").ZodBoolean>;
319
+ }, import("zod/v4/core").$strict>>;
320
+ };
321
+ export { decoratorTools };
@@ -0,0 +1,29 @@
1
+ import { decoratorTools } from "../decorator-tools";
2
+ import { moduleRegistry } from "../moduleRegistry";
3
+ import { toolList as coreToolList, } from "./tools";
4
+ import { coverageEnforcerTool, documentObjectTool, readmeImprovementTool, } from "./codex-tools";
5
+ export * from "./tools";
6
+ export * from "./codex-tools";
7
+ export * from "./generateMcpModule";
8
+ const codexToolList = [
9
+ documentObjectTool,
10
+ coverageEnforcerTool,
11
+ readmeImprovementTool,
12
+ ];
13
+ const moduleToolList = moduleRegistry.listTools().map((asset) => asset.tool);
14
+ export const toolList = [...coreToolList, ...codexToolList, ...moduleToolList];
15
+ export const decoratorToolList = Object.values(decoratorTools);
16
+ const [analyzeRepositoryTool, enumerateCapabilitiesTool, planFeatureTool, documentCodeToolRef, applyCodeChangeToolRef,] = coreToolList;
17
+ export const tools = {
18
+ analyzeRepositoryTool,
19
+ enumerateCapabilitiesTool,
20
+ planFeatureTool,
21
+ documentCodeTool: documentCodeToolRef,
22
+ applyCodeChangeTool: applyCodeChangeToolRef,
23
+ documentObjectTool,
24
+ coverageEnforcerTool,
25
+ readmeImprovementTool,
26
+ ...decoratorTools,
27
+ };
28
+ export { decoratorTools };
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbWNwL3Rvb2xzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUdMLFFBQVEsSUFBSSxZQUFZLEdBQ3pCLE1BQU0sU0FBUyxDQUFDO0FBQ2pCLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixHQUN0QixNQUFNLGVBQWUsQ0FBQztBQUV2QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHFCQUFxQixDQUFDO0FBRXBDLE1BQU0sYUFBYSxHQUFHO0lBQ3BCLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIscUJBQXFCO0NBQ3RCLENBQUM7QUFFRixNQUFNLGNBQWMsR0FBRyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBVyxDQUFDLENBQUM7QUFFcEYsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBRyxZQUFZLEVBQUUsR0FBRyxhQUFhLEVBQUUsR0FBRyxjQUFjLENBQUMsQ0FBQztBQUMvRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQy9ELE1BQU0sQ0FDSixxQkFBcUIsRUFDckIseUJBQXlCLEVBQ3pCLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3ZCLEdBQUcsWUFBWSxDQUFDO0FBRWpCLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRztJQUNuQixxQkFBcUI7SUFDckIseUJBQXlCO0lBQ3pCLGVBQWU7SUFDZixnQkFBZ0IsRUFBRSxtQkFBbUI7SUFDckMsbUJBQW1CLEVBQUUsc0JBQXNCO0lBQzNDLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIscUJBQXFCO0lBQ3JCLEdBQUcsY0FBYztDQUNsQixDQUFDO0FBRUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZGVjb3JhdG9yVG9vbHMgfSBmcm9tIFwiLi4vZGVjb3JhdG9yLXRvb2xzXCI7XG5pbXBvcnQgeyBtb2R1bGVSZWdpc3RyeSB9IGZyb20gXCIuLi9tb2R1bGVSZWdpc3RyeVwiO1xuaW1wb3J0IHtcbiAgYXBwbHlDb2RlQ2hhbmdlVG9vbCxcbiAgZG9jdW1lbnRDb2RlVG9vbCxcbiAgdG9vbExpc3QgYXMgY29yZVRvb2xMaXN0LFxufSBmcm9tIFwiLi90b29sc1wiO1xuaW1wb3J0IHtcbiAgY292ZXJhZ2VFbmZvcmNlclRvb2wsXG4gIGRvY3VtZW50T2JqZWN0VG9vbCxcbiAgcmVhZG1lSW1wcm92ZW1lbnRUb29sLFxufSBmcm9tIFwiLi9jb2RleC10b29sc1wiO1xuXG5leHBvcnQgKiBmcm9tIFwiLi90b29sc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vY29kZXgtdG9vbHNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2dlbmVyYXRlTWNwTW9kdWxlXCI7XG5cbmNvbnN0IGNvZGV4VG9vbExpc3QgPSBbXG4gIGRvY3VtZW50T2JqZWN0VG9vbCxcbiAgY292ZXJhZ2VFbmZvcmNlclRvb2wsXG4gIHJlYWRtZUltcHJvdmVtZW50VG9vbCxcbl07XG5cbmNvbnN0IG1vZHVsZVRvb2xMaXN0ID0gbW9kdWxlUmVnaXN0cnkubGlzdFRvb2xzKCkubWFwKChhc3NldCkgPT4gYXNzZXQudG9vbCBhcyBhbnkpO1xuXG5leHBvcnQgY29uc3QgdG9vbExpc3QgPSBbLi4uY29yZVRvb2xMaXN0LCAuLi5jb2RleFRvb2xMaXN0LCAuLi5tb2R1bGVUb29sTGlzdF07XG5leHBvcnQgY29uc3QgZGVjb3JhdG9yVG9vbExpc3QgPSBPYmplY3QudmFsdWVzKGRlY29yYXRvclRvb2xzKTtcbmNvbnN0IFtcbiAgYW5hbHl6ZVJlcG9zaXRvcnlUb29sLFxuICBlbnVtZXJhdGVDYXBhYmlsaXRpZXNUb29sLFxuICBwbGFuRmVhdHVyZVRvb2wsXG4gIGRvY3VtZW50Q29kZVRvb2xSZWYsXG4gIGFwcGx5Q29kZUNoYW5nZVRvb2xSZWYsXG5dID0gY29yZVRvb2xMaXN0O1xuXG5leHBvcnQgY29uc3QgdG9vbHMgPSB7XG4gIGFuYWx5emVSZXBvc2l0b3J5VG9vbCxcbiAgZW51bWVyYXRlQ2FwYWJpbGl0aWVzVG9vbCxcbiAgcGxhbkZlYXR1cmVUb29sLFxuICBkb2N1bWVudENvZGVUb29sOiBkb2N1bWVudENvZGVUb29sUmVmLFxuICBhcHBseUNvZGVDaGFuZ2VUb29sOiBhcHBseUNvZGVDaGFuZ2VUb29sUmVmLFxuICBkb2N1bWVudE9iamVjdFRvb2wsXG4gIGNvdmVyYWdlRW5mb3JjZXJUb29sLFxuICByZWFkbWVJbXByb3ZlbWVudFRvb2wsXG4gIC4uLmRlY29yYXRvclRvb2xzLFxufTtcblxuZXhwb3J0IHsgZGVjb3JhdG9yVG9vbHMgfTsiXX0=
@@ -0,0 +1,10 @@
1
+ import { Tool } from "fastmcp";
2
+ import { analyzeRepoSchema, codeChangeSchema, documentCodeSchema, enumerateCapabilitiesSchema, planFeatureSchema } from "../schemas";
3
+ export declare function buildAnalyzeRepositoryTool(): Tool<undefined, typeof analyzeRepoSchema>;
4
+ export declare function buildEnumerateCapabilitiesTool(): Tool<undefined, typeof enumerateCapabilitiesSchema>;
5
+ export declare function buildPlanFeatureTool(): Tool<undefined, typeof planFeatureSchema>;
6
+ export declare const documentCodeTool: Tool<undefined, typeof documentCodeSchema>;
7
+ export declare const applyCodeChangeTool: Tool<undefined, typeof codeChangeSchema>;
8
+ type AnyTool = Tool<undefined, any>;
9
+ export declare const toolList: AnyTool[];
10
+ export {};