@schemyx/mcp 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -2
- package/dist/backend-client.d.ts +1 -17
- package/dist/backend-client.js +15 -91
- package/dist/backend-client.js.map +1 -1
- package/dist/client/backend-client.d.ts +17 -0
- package/dist/client/backend-client.js +97 -0
- package/dist/client/backend-client.js.map +1 -0
- package/dist/client/local-theme-source.d.ts +19 -0
- package/dist/client/local-theme-source.js +737 -0
- package/dist/client/local-theme-source.js.map +1 -0
- package/dist/client/mcp-client.d.ts +15 -0
- package/dist/client/mcp-client.js +46 -0
- package/dist/client/mcp-client.js.map +1 -0
- package/dist/codebase-scanner/backend.d.ts +12 -0
- package/dist/codebase-scanner/backend.js +814 -0
- package/dist/codebase-scanner/backend.js.map +1 -0
- package/dist/codebase-scanner/bundle.d.ts +315 -0
- package/dist/codebase-scanner/bundle.js +5195 -0
- package/dist/codebase-scanner/bundle.js.map +1 -0
- package/dist/codebase-scanner/constants.d.ts +26 -0
- package/dist/codebase-scanner/constants.js +231 -0
- package/dist/codebase-scanner/constants.js.map +1 -0
- package/dist/codebase-scanner/database.d.ts +8 -0
- package/dist/codebase-scanner/database.js +1252 -0
- package/dist/codebase-scanner/database.js.map +1 -0
- package/dist/codebase-scanner/extractors.d.ts +241 -0
- package/dist/codebase-scanner/extractors.js +3513 -0
- package/dist/codebase-scanner/extractors.js.map +1 -0
- package/dist/codebase-scanner/files.d.ts +16 -0
- package/dist/codebase-scanner/files.js +250 -0
- package/dist/codebase-scanner/files.js.map +1 -0
- package/dist/codebase-scanner/index.d.ts +217 -0
- package/dist/codebase-scanner/index.js +387 -0
- package/dist/codebase-scanner/index.js.map +1 -0
- package/dist/codebase-scanner/recipes.d.ts +74 -0
- package/dist/codebase-scanner/recipes.js +743 -0
- package/dist/codebase-scanner/recipes.js.map +1 -0
- package/dist/codebase-scanner/storage.d.ts +19 -0
- package/dist/codebase-scanner/storage.js +103 -0
- package/dist/codebase-scanner/storage.js.map +1 -0
- package/dist/codebase-scanner/types.d.ts +743 -0
- package/dist/codebase-scanner/types.js +3 -0
- package/dist/codebase-scanner/types.js.map +1 -0
- package/dist/codebase-scanner/utils.d.ts +37 -0
- package/dist/codebase-scanner/utils.js +259 -0
- package/dist/codebase-scanner/utils.js.map +1 -0
- package/dist/codebase-scanner.d.ts +1 -0
- package/dist/codebase-scanner.js +18 -0
- package/dist/codebase-scanner.js.map +1 -0
- package/dist/config.d.ts +1 -2
- package/dist/config.js +15 -37
- package/dist/config.js.map +1 -1
- package/dist/local-theme-source.d.ts +1 -0
- package/dist/local-theme-source.js +18 -0
- package/dist/local-theme-source.js.map +1 -0
- package/dist/main.js +3 -3
- package/dist/main.js.map +1 -1
- package/dist/mcp-client.d.ts +1 -0
- package/dist/mcp-client.js +18 -0
- package/dist/mcp-client.js.map +1 -0
- package/dist/prompts.d.ts +1 -7
- package/dist/prompts.js +15 -52
- package/dist/prompts.js.map +1 -1
- package/dist/server/index.d.ts +4 -0
- package/dist/server/index.js +163 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/prompts.d.ts +7 -0
- package/dist/server/prompts.js +55 -0
- package/dist/server/prompts.js.map +1 -0
- package/dist/server/tool-definitions.d.ts +22 -0
- package/dist/server/tool-definitions.js +531 -0
- package/dist/server/tool-definitions.js.map +1 -0
- package/dist/server.d.ts +3 -3
- package/dist/server.js +33 -0
- package/dist/server.js.map +1 -1
- package/dist/shared/config.d.ts +2 -0
- package/dist/shared/config.js +54 -0
- package/dist/shared/config.js.map +1 -0
- package/dist/shared/text.d.ts +14 -0
- package/dist/shared/text.js +33 -0
- package/dist/shared/text.js.map +1 -0
- package/dist/shared/types.d.ts +118 -0
- package/dist/shared/types.js +3 -0
- package/dist/shared/types.js.map +1 -0
- package/dist/shared/uri.d.ts +6 -0
- package/dist/shared/uri.js +24 -0
- package/dist/shared/uri.js.map +1 -0
- package/dist/style-recipes.d.ts +1 -0
- package/dist/style-recipes.js +18 -0
- package/dist/style-recipes.js.map +1 -0
- package/dist/text.d.ts +1 -14
- package/dist/text.js +15 -30
- package/dist/text.js.map +1 -1
- package/dist/theme/style-recipes.d.ts +26 -0
- package/dist/theme/style-recipes.js +129 -0
- package/dist/theme/style-recipes.js.map +1 -0
- package/dist/tool-definitions.d.ts +1 -11
- package/dist/tool-definitions.js +15 -127
- package/dist/tool-definitions.js.map +1 -1
- package/dist/types.d.ts +1 -106
- package/dist/types.js +15 -0
- package/dist/types.js.map +1 -1
- package/dist/uri.d.ts +1 -6
- package/dist/uri.js +15 -21
- package/dist/uri.js.map +1 -1
- package/package.json +5 -2
|
@@ -0,0 +1,531 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.localTools = exports.localToolNames = void 0;
|
|
4
|
+
exports.localToolNames = {
|
|
5
|
+
listConfigs: 'schemyx_list_configs',
|
|
6
|
+
getLatestConfig: 'schemyx_get_latest_config',
|
|
7
|
+
getManifest: 'schemyx_get_manifest',
|
|
8
|
+
readResource: 'schemyx_read_resource',
|
|
9
|
+
callBackendTool: 'schemyx_call_backend_tool',
|
|
10
|
+
getThemeFile: 'schemyx_get_theme_file',
|
|
11
|
+
listStyleRecipes: 'schemyx_list_style_recipes',
|
|
12
|
+
getStyleRecipe: 'schemyx_get_style_recipe',
|
|
13
|
+
getImplementationGuide: 'schemyx_get_implementation_guide',
|
|
14
|
+
scanCodebase: 'schemyx_scan_codebase',
|
|
15
|
+
searchCodebase: 'schemyx_search_codebase',
|
|
16
|
+
listCodebaseRecipes: 'schemyx_list_codebase_recipes',
|
|
17
|
+
getCodebaseRecipe: 'schemyx_get_codebase_recipe',
|
|
18
|
+
getContextPack: 'schemyx_get_context_pack',
|
|
19
|
+
getCodebaseGraph: 'schemyx_get_codebase_graph',
|
|
20
|
+
listReviewItems: 'schemyx_list_review_items',
|
|
21
|
+
checkContextFreshness: 'schemyx_check_context_freshness',
|
|
22
|
+
readCodebaseFile: 'schemyx_read_codebase_file',
|
|
23
|
+
};
|
|
24
|
+
exports.localTools = [
|
|
25
|
+
{
|
|
26
|
+
name: exports.localToolNames.listConfigs,
|
|
27
|
+
title: 'List Schemyx Configs',
|
|
28
|
+
description: 'List configs available to this Schemyx API key.',
|
|
29
|
+
inputSchema: objectSchema(),
|
|
30
|
+
annotations: readOnlyAnnotations(),
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: exports.localToolNames.getLatestConfig,
|
|
34
|
+
title: 'Get Latest Schemyx Config',
|
|
35
|
+
description: 'Read the latest stored config version and metadata.',
|
|
36
|
+
inputSchema: objectSchema({
|
|
37
|
+
configId: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
description: 'Schemyx config id. Optional when only one config is available.',
|
|
40
|
+
},
|
|
41
|
+
}),
|
|
42
|
+
annotations: readOnlyAnnotations(),
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: exports.localToolNames.getManifest,
|
|
46
|
+
title: 'Get Schemyx Config Manifest',
|
|
47
|
+
description: 'List providers, resources, tools, and prompts for a config.',
|
|
48
|
+
inputSchema: objectSchema({
|
|
49
|
+
configId: {
|
|
50
|
+
type: 'string',
|
|
51
|
+
description: 'Schemyx config id. Optional when only one config is available.',
|
|
52
|
+
},
|
|
53
|
+
}),
|
|
54
|
+
annotations: readOnlyAnnotations(),
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: exports.localToolNames.readResource,
|
|
58
|
+
title: 'Read Schemyx Resource',
|
|
59
|
+
description: 'Read a backend MCP resource by config id and resource id.',
|
|
60
|
+
inputSchema: objectSchema({
|
|
61
|
+
configId: {
|
|
62
|
+
type: 'string',
|
|
63
|
+
description: 'Schemyx config id.',
|
|
64
|
+
},
|
|
65
|
+
resourceId: {
|
|
66
|
+
type: 'string',
|
|
67
|
+
description: 'Resource id from the config manifest, such as theme-forge.file.theme-css.',
|
|
68
|
+
},
|
|
69
|
+
}, ['configId', 'resourceId']),
|
|
70
|
+
annotations: readOnlyAnnotations(),
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: exports.localToolNames.callBackendTool,
|
|
74
|
+
title: 'Call Schemyx Backend Tool',
|
|
75
|
+
description: 'Call a read-only tool exposed by the Schemyx backend config manifest.',
|
|
76
|
+
inputSchema: objectSchema({
|
|
77
|
+
configId: {
|
|
78
|
+
type: 'string',
|
|
79
|
+
description: 'Schemyx config id.',
|
|
80
|
+
},
|
|
81
|
+
toolName: {
|
|
82
|
+
type: 'string',
|
|
83
|
+
description: 'Backend tool name from the config manifest.',
|
|
84
|
+
},
|
|
85
|
+
arguments: {
|
|
86
|
+
type: 'object',
|
|
87
|
+
description: 'Arguments to send to the backend tool.',
|
|
88
|
+
additionalProperties: true,
|
|
89
|
+
},
|
|
90
|
+
}, ['configId', 'toolName']),
|
|
91
|
+
annotations: readOnlyAnnotations(),
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
name: exports.localToolNames.getThemeFile,
|
|
95
|
+
title: 'Get Theme Forge File',
|
|
96
|
+
description: 'Read a generated Theme Forge artifact by file name or artifact id.',
|
|
97
|
+
inputSchema: objectSchema({
|
|
98
|
+
configId: {
|
|
99
|
+
type: 'string',
|
|
100
|
+
description: 'Schemyx config id. Optional when only one config is available.',
|
|
101
|
+
},
|
|
102
|
+
fileName: {
|
|
103
|
+
type: 'string',
|
|
104
|
+
description: 'Generated file name, such as agent-style-contract.json, themeforge.json, theme.css, or shadcn-globals.css.',
|
|
105
|
+
},
|
|
106
|
+
fileId: {
|
|
107
|
+
type: 'string',
|
|
108
|
+
description: 'Generated file id from the manifest.',
|
|
109
|
+
},
|
|
110
|
+
}),
|
|
111
|
+
annotations: readOnlyAnnotations(),
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: exports.localToolNames.listStyleRecipes,
|
|
115
|
+
title: 'List Schemyx Style Recipes',
|
|
116
|
+
description: 'List compact style recipe keys for targeted lookup before generating UI.',
|
|
117
|
+
inputSchema: objectSchema({
|
|
118
|
+
configId: {
|
|
119
|
+
type: 'string',
|
|
120
|
+
description: 'Schemyx config id. Optional when only one config is available.',
|
|
121
|
+
},
|
|
122
|
+
query: {
|
|
123
|
+
type: 'string',
|
|
124
|
+
description: 'Optional search across recipe key, group, summary, and tags.',
|
|
125
|
+
},
|
|
126
|
+
group: {
|
|
127
|
+
type: 'string',
|
|
128
|
+
description: 'Optional exact group filter, such as ui, nav, studio, or tokens.',
|
|
129
|
+
},
|
|
130
|
+
}),
|
|
131
|
+
annotations: readOnlyAnnotations(),
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
name: exports.localToolNames.getStyleRecipe,
|
|
135
|
+
title: 'Get Schemyx Style Recipe',
|
|
136
|
+
description: 'Read one compact style recipe by key, optionally with direct dependencies.',
|
|
137
|
+
inputSchema: objectSchema({
|
|
138
|
+
configId: {
|
|
139
|
+
type: 'string',
|
|
140
|
+
description: 'Schemyx config id. Optional when only one config is available.',
|
|
141
|
+
},
|
|
142
|
+
key: {
|
|
143
|
+
type: 'string',
|
|
144
|
+
description: 'Style recipe key, such as ui.input, nav.productHome, or studio.dialog.',
|
|
145
|
+
},
|
|
146
|
+
includeDeps: {
|
|
147
|
+
type: 'boolean',
|
|
148
|
+
description: 'Include direct token/component dependencies. Defaults to true.',
|
|
149
|
+
},
|
|
150
|
+
}, ['key']),
|
|
151
|
+
annotations: readOnlyAnnotations(),
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
name: exports.localToolNames.getImplementationGuide,
|
|
155
|
+
title: 'Get Theme Implementation Guide',
|
|
156
|
+
description: 'Read AI-facing instructions for applying a saved Theme Forge theme.',
|
|
157
|
+
inputSchema: objectSchema({
|
|
158
|
+
configId: {
|
|
159
|
+
type: 'string',
|
|
160
|
+
description: 'Schemyx config id. Optional when only one config is available.',
|
|
161
|
+
},
|
|
162
|
+
}),
|
|
163
|
+
annotations: readOnlyAnnotations(),
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
name: exports.localToolNames.scanCodebase,
|
|
167
|
+
title: 'Scan Local Codebase',
|
|
168
|
+
description: 'Local-only scanner that builds .schemyx/codebase agent config JSON files. Before calling, ask the user whether to scan frontend, backend, full, or specific files, and tell them source stays on their computer.',
|
|
169
|
+
inputSchema: objectSchema({
|
|
170
|
+
projectType: {
|
|
171
|
+
type: 'string',
|
|
172
|
+
enum: ['frontend', 'backend', 'full', 'custom'],
|
|
173
|
+
description: 'Required scan scope. Use custom only when includePaths lists the exact files or folders the user chose.',
|
|
174
|
+
},
|
|
175
|
+
rootPath: {
|
|
176
|
+
type: 'string',
|
|
177
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or the MCP process cwd.',
|
|
178
|
+
},
|
|
179
|
+
includePaths: {
|
|
180
|
+
type: 'array',
|
|
181
|
+
items: { type: 'string' },
|
|
182
|
+
description: 'Optional relative files or folders to scan. Required when projectType is custom.',
|
|
183
|
+
},
|
|
184
|
+
excludePaths: {
|
|
185
|
+
type: 'array',
|
|
186
|
+
items: { type: 'string' },
|
|
187
|
+
description: 'Optional relative files or folders to skip.',
|
|
188
|
+
},
|
|
189
|
+
outputDir: {
|
|
190
|
+
type: 'string',
|
|
191
|
+
description: 'Optional output directory inside the project root. Defaults to .schemyx/codebase.',
|
|
192
|
+
},
|
|
193
|
+
maxFiles: {
|
|
194
|
+
type: 'number',
|
|
195
|
+
description: 'Optional scan cap. Defaults to 250 and is capped at 750.',
|
|
196
|
+
},
|
|
197
|
+
dryRun: {
|
|
198
|
+
type: 'boolean',
|
|
199
|
+
description: 'When true, reports the scan plan without writing config files.',
|
|
200
|
+
},
|
|
201
|
+
}, ['projectType']),
|
|
202
|
+
annotations: localWriteAnnotations(),
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
name: exports.localToolNames.listCodebaseRecipes,
|
|
206
|
+
title: 'List Local Codebase Keys',
|
|
207
|
+
description: 'Compatibility alias for schemyx_search_codebase. Returns bounded local codebase candidates.',
|
|
208
|
+
inputSchema: objectSchema({
|
|
209
|
+
rootPath: {
|
|
210
|
+
type: 'string',
|
|
211
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
212
|
+
},
|
|
213
|
+
outputDir: {
|
|
214
|
+
type: 'string',
|
|
215
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
216
|
+
},
|
|
217
|
+
query: {
|
|
218
|
+
type: 'string',
|
|
219
|
+
description: 'Optional search across key, group, summary, and tags.',
|
|
220
|
+
},
|
|
221
|
+
group: {
|
|
222
|
+
type: 'string',
|
|
223
|
+
description: 'Optional exact group filter, such as component, route, api, or service.',
|
|
224
|
+
},
|
|
225
|
+
limit: {
|
|
226
|
+
type: 'number',
|
|
227
|
+
description: 'Maximum candidates returned. Defaults to 10 and is capped at 50.',
|
|
228
|
+
},
|
|
229
|
+
cursor: {
|
|
230
|
+
type: 'string',
|
|
231
|
+
description: 'Optional pagination cursor returned by a previous search.',
|
|
232
|
+
},
|
|
233
|
+
}),
|
|
234
|
+
annotations: readOnlyAnnotations(),
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
name: exports.localToolNames.searchCodebase,
|
|
238
|
+
title: 'Search Local Codebase Context',
|
|
239
|
+
description: 'Resolve a natural query or exact key into bounded local codebase candidates with confidence, status, and next-step hints.',
|
|
240
|
+
inputSchema: objectSchema({
|
|
241
|
+
rootPath: {
|
|
242
|
+
type: 'string',
|
|
243
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
244
|
+
},
|
|
245
|
+
outputDir: {
|
|
246
|
+
type: 'string',
|
|
247
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
248
|
+
},
|
|
249
|
+
query: {
|
|
250
|
+
type: 'string',
|
|
251
|
+
description: 'Natural query such as "button styles" or "user API".',
|
|
252
|
+
},
|
|
253
|
+
key: {
|
|
254
|
+
type: 'string',
|
|
255
|
+
description: 'Exact codebase key, such as component.PrimaryButton.',
|
|
256
|
+
},
|
|
257
|
+
group: {
|
|
258
|
+
type: 'string',
|
|
259
|
+
description: 'Optional group filter, such as component, route, api, service, model, or cluster.',
|
|
260
|
+
},
|
|
261
|
+
kind: {
|
|
262
|
+
type: 'string',
|
|
263
|
+
description: 'Optional node or recipe kind filter.',
|
|
264
|
+
},
|
|
265
|
+
status: {
|
|
266
|
+
type: 'string',
|
|
267
|
+
description: 'Optional status filter: approved, inferred, needs_review, or stale.',
|
|
268
|
+
},
|
|
269
|
+
confidence: {
|
|
270
|
+
type: 'string',
|
|
271
|
+
description: 'Optional confidence filter: high, medium, low, or inferred.',
|
|
272
|
+
},
|
|
273
|
+
limit: {
|
|
274
|
+
type: 'number',
|
|
275
|
+
description: 'Maximum candidates returned. Defaults to 10 and is capped at 50.',
|
|
276
|
+
},
|
|
277
|
+
cursor: {
|
|
278
|
+
type: 'string',
|
|
279
|
+
description: 'Optional pagination cursor returned by a previous search.',
|
|
280
|
+
},
|
|
281
|
+
depth: {
|
|
282
|
+
type: 'string',
|
|
283
|
+
description: 'Response depth: brief, standard, or deep. Defaults to brief.',
|
|
284
|
+
},
|
|
285
|
+
}),
|
|
286
|
+
annotations: readOnlyAnnotations(),
|
|
287
|
+
},
|
|
288
|
+
{
|
|
289
|
+
name: exports.localToolNames.getCodebaseRecipe,
|
|
290
|
+
title: 'Get Local Codebase Recipe',
|
|
291
|
+
description: 'Read one generated local codebase recipe by key, optionally with bounded dependencies and used-by context.',
|
|
292
|
+
inputSchema: objectSchema({
|
|
293
|
+
rootPath: {
|
|
294
|
+
type: 'string',
|
|
295
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
296
|
+
},
|
|
297
|
+
outputDir: {
|
|
298
|
+
type: 'string',
|
|
299
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
300
|
+
},
|
|
301
|
+
key: {
|
|
302
|
+
type: 'string',
|
|
303
|
+
description: 'Codebase recipe key, such as component.PrimaryButton, route.dashboard, or api.GET.api.themes.',
|
|
304
|
+
},
|
|
305
|
+
depth: {
|
|
306
|
+
type: 'string',
|
|
307
|
+
description: 'Response depth: brief, standard, or deep. Defaults to brief.',
|
|
308
|
+
},
|
|
309
|
+
includeDeps: {
|
|
310
|
+
type: 'boolean',
|
|
311
|
+
description: 'Include direct dependencies from the keyed registry. Defaults to true.',
|
|
312
|
+
},
|
|
313
|
+
includeUsedBy: {
|
|
314
|
+
type: 'boolean',
|
|
315
|
+
description: 'Include direct dependents/used-by entries. Defaults to false.',
|
|
316
|
+
},
|
|
317
|
+
maxRelated: {
|
|
318
|
+
type: 'number',
|
|
319
|
+
description: 'Maximum related recipes returned. Defaults to 10 and is capped at 50.',
|
|
320
|
+
},
|
|
321
|
+
}, ['key']),
|
|
322
|
+
annotations: readOnlyAnnotations(),
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
name: exports.localToolNames.getContextPack,
|
|
326
|
+
title: 'Get Local Codebase Context Pack',
|
|
327
|
+
description: 'Build a bounded task or concept context pack with selected recipes and reasons for each item.',
|
|
328
|
+
inputSchema: objectSchema({
|
|
329
|
+
rootPath: {
|
|
330
|
+
type: 'string',
|
|
331
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
332
|
+
},
|
|
333
|
+
outputDir: {
|
|
334
|
+
type: 'string',
|
|
335
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
336
|
+
},
|
|
337
|
+
key: {
|
|
338
|
+
type: 'string',
|
|
339
|
+
description: 'Optional resolved key such as cluster.ui.button or route.dashboard.',
|
|
340
|
+
},
|
|
341
|
+
task: {
|
|
342
|
+
type: 'string',
|
|
343
|
+
description: 'Optional natural task. Used to resolve a key when key is absent.',
|
|
344
|
+
},
|
|
345
|
+
depth: {
|
|
346
|
+
type: 'string',
|
|
347
|
+
description: 'Response depth: brief, standard, or deep. Defaults to brief.',
|
|
348
|
+
},
|
|
349
|
+
maxItems: {
|
|
350
|
+
type: 'number',
|
|
351
|
+
description: 'Maximum recipes in the pack. Defaults to 12 and is capped at 50.',
|
|
352
|
+
},
|
|
353
|
+
tokenBudget: {
|
|
354
|
+
type: 'number',
|
|
355
|
+
description: 'Target context budget used for reporting and future trimming.',
|
|
356
|
+
},
|
|
357
|
+
includeSource: {
|
|
358
|
+
type: 'boolean',
|
|
359
|
+
description: 'Whether source files may be included. Defaults to false.',
|
|
360
|
+
},
|
|
361
|
+
}),
|
|
362
|
+
annotations: readOnlyAnnotations(),
|
|
363
|
+
},
|
|
364
|
+
{
|
|
365
|
+
name: exports.localToolNames.getCodebaseGraph,
|
|
366
|
+
title: 'Get Local Codebase Graph Slice',
|
|
367
|
+
description: 'Return a bounded universal graph slice for a key, kinds, edge types, and radius.',
|
|
368
|
+
inputSchema: objectSchema({
|
|
369
|
+
rootPath: {
|
|
370
|
+
type: 'string',
|
|
371
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
372
|
+
},
|
|
373
|
+
outputDir: {
|
|
374
|
+
type: 'string',
|
|
375
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
376
|
+
},
|
|
377
|
+
key: {
|
|
378
|
+
type: 'string',
|
|
379
|
+
description: 'Optional starting graph key.',
|
|
380
|
+
},
|
|
381
|
+
kinds: {
|
|
382
|
+
type: 'array',
|
|
383
|
+
items: { type: 'string' },
|
|
384
|
+
description: 'Optional node kind filters.',
|
|
385
|
+
},
|
|
386
|
+
edgeTypes: {
|
|
387
|
+
type: 'array',
|
|
388
|
+
items: { type: 'string' },
|
|
389
|
+
description: 'Optional edge type filters.',
|
|
390
|
+
},
|
|
391
|
+
direction: {
|
|
392
|
+
type: 'string',
|
|
393
|
+
description: 'Graph direction: in, out, or both. Defaults to both.',
|
|
394
|
+
},
|
|
395
|
+
radius: {
|
|
396
|
+
type: 'number',
|
|
397
|
+
description: 'Neighborhood radius. Defaults to 1 and is capped at 3.',
|
|
398
|
+
},
|
|
399
|
+
limitNodes: {
|
|
400
|
+
type: 'number',
|
|
401
|
+
description: 'Maximum graph nodes returned. Defaults to 100 and is capped at 500.',
|
|
402
|
+
},
|
|
403
|
+
limitEdges: {
|
|
404
|
+
type: 'number',
|
|
405
|
+
description: 'Maximum graph edges returned. Defaults to 200 and is capped at 1000.',
|
|
406
|
+
},
|
|
407
|
+
cursor: {
|
|
408
|
+
type: 'string',
|
|
409
|
+
description: 'Optional pagination cursor.',
|
|
410
|
+
},
|
|
411
|
+
}),
|
|
412
|
+
annotations: readOnlyAnnotations(),
|
|
413
|
+
},
|
|
414
|
+
{
|
|
415
|
+
name: exports.localToolNames.listReviewItems,
|
|
416
|
+
title: 'List Local Codebase Review Items',
|
|
417
|
+
description: 'List unresolved concept collisions, duplicate keys, stale approvals, and low-confidence facts.',
|
|
418
|
+
inputSchema: objectSchema({
|
|
419
|
+
rootPath: {
|
|
420
|
+
type: 'string',
|
|
421
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
422
|
+
},
|
|
423
|
+
outputDir: {
|
|
424
|
+
type: 'string',
|
|
425
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
426
|
+
},
|
|
427
|
+
status: {
|
|
428
|
+
type: 'string',
|
|
429
|
+
description: 'Optional review status filter, such as open or resolved.',
|
|
430
|
+
},
|
|
431
|
+
type: {
|
|
432
|
+
type: 'string',
|
|
433
|
+
description: 'Optional review type filter.',
|
|
434
|
+
},
|
|
435
|
+
group: {
|
|
436
|
+
type: 'string',
|
|
437
|
+
description: 'Optional group filter.',
|
|
438
|
+
},
|
|
439
|
+
limit: {
|
|
440
|
+
type: 'number',
|
|
441
|
+
description: 'Maximum review items returned. Defaults to 20 and is capped at 50.',
|
|
442
|
+
},
|
|
443
|
+
cursor: {
|
|
444
|
+
type: 'string',
|
|
445
|
+
description: 'Optional pagination cursor.',
|
|
446
|
+
},
|
|
447
|
+
}),
|
|
448
|
+
annotations: readOnlyAnnotations(),
|
|
449
|
+
},
|
|
450
|
+
{
|
|
451
|
+
name: exports.localToolNames.checkContextFreshness,
|
|
452
|
+
title: 'Check Local Codebase Context Freshness',
|
|
453
|
+
description: 'Report stale recipes, missing files, changed source hashes, and rescan recommendations.',
|
|
454
|
+
inputSchema: objectSchema({
|
|
455
|
+
rootPath: {
|
|
456
|
+
type: 'string',
|
|
457
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
458
|
+
},
|
|
459
|
+
outputDir: {
|
|
460
|
+
type: 'string',
|
|
461
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
462
|
+
},
|
|
463
|
+
keys: {
|
|
464
|
+
type: 'array',
|
|
465
|
+
items: { type: 'string' },
|
|
466
|
+
description: 'Optional keys to check. Defaults to generated path-backed recipes.',
|
|
467
|
+
},
|
|
468
|
+
includeChangedFiles: {
|
|
469
|
+
type: 'boolean',
|
|
470
|
+
description: 'Include changed file details. Defaults to false.',
|
|
471
|
+
},
|
|
472
|
+
limit: {
|
|
473
|
+
type: 'number',
|
|
474
|
+
description: 'Maximum path-backed recipes checked. Defaults to 50 and is capped at 50.',
|
|
475
|
+
},
|
|
476
|
+
}),
|
|
477
|
+
annotations: readOnlyAnnotations(),
|
|
478
|
+
},
|
|
479
|
+
{
|
|
480
|
+
name: exports.localToolNames.readCodebaseFile,
|
|
481
|
+
title: 'Read Local Codebase File',
|
|
482
|
+
description: 'Read a local file from the scanned project by generated key or relative path. This is local-only and does not upload source to Schemyx.',
|
|
483
|
+
inputSchema: objectSchema({
|
|
484
|
+
rootPath: {
|
|
485
|
+
type: 'string',
|
|
486
|
+
description: 'Optional project root. Defaults to SCHEMYX_MCP_CWD or process cwd.',
|
|
487
|
+
},
|
|
488
|
+
outputDir: {
|
|
489
|
+
type: 'string',
|
|
490
|
+
description: 'Optional codebase config directory. Defaults to .schemyx/codebase.',
|
|
491
|
+
},
|
|
492
|
+
key: {
|
|
493
|
+
type: 'string',
|
|
494
|
+
description: 'Generated recipe key pointing at a local file.',
|
|
495
|
+
},
|
|
496
|
+
path: {
|
|
497
|
+
type: 'string',
|
|
498
|
+
description: 'Relative path inside the project root. Used instead of key when provided.',
|
|
499
|
+
},
|
|
500
|
+
maxBytes: {
|
|
501
|
+
type: 'number',
|
|
502
|
+
description: 'Maximum characters returned. Defaults to 40000 and is capped at 200000.',
|
|
503
|
+
},
|
|
504
|
+
}),
|
|
505
|
+
annotations: readOnlyAnnotations(),
|
|
506
|
+
},
|
|
507
|
+
];
|
|
508
|
+
function objectSchema(properties = {}, required) {
|
|
509
|
+
return {
|
|
510
|
+
type: 'object',
|
|
511
|
+
properties,
|
|
512
|
+
...(required ? { required } : {}),
|
|
513
|
+
};
|
|
514
|
+
}
|
|
515
|
+
function readOnlyAnnotations() {
|
|
516
|
+
return {
|
|
517
|
+
readOnlyHint: true,
|
|
518
|
+
destructiveHint: false,
|
|
519
|
+
idempotentHint: true,
|
|
520
|
+
openWorldHint: true,
|
|
521
|
+
};
|
|
522
|
+
}
|
|
523
|
+
function localWriteAnnotations() {
|
|
524
|
+
return {
|
|
525
|
+
readOnlyHint: false,
|
|
526
|
+
destructiveHint: false,
|
|
527
|
+
idempotentHint: true,
|
|
528
|
+
openWorldHint: false,
|
|
529
|
+
};
|
|
530
|
+
}
|
|
531
|
+
//# sourceMappingURL=tool-definitions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-definitions.js","sourceRoot":"","sources":["../../src/server/tool-definitions.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
2
|
-
import {
|
|
3
|
-
export declare function createLocalMcpServer(client:
|
|
4
|
-
export declare function runLocalMcpServer(client:
|
|
2
|
+
import { SchemyxMcpSource } from './types';
|
|
3
|
+
export declare function createLocalMcpServer(client: SchemyxMcpSource): Server;
|
|
4
|
+
export declare function runLocalMcpServer(client: SchemyxMcpSource): Promise<void>;
|
package/dist/server.js
CHANGED
|
@@ -9,6 +9,7 @@ const prompts_1 = require("./prompts");
|
|
|
9
9
|
const text_1 = require("./text");
|
|
10
10
|
const uri_1 = require("./uri");
|
|
11
11
|
const tool_definitions_1 = require("./tool-definitions");
|
|
12
|
+
const codebase_scanner_1 = require("./codebase-scanner");
|
|
12
13
|
function createLocalMcpServer(client) {
|
|
13
14
|
const server = new index_js_1.Server({
|
|
14
15
|
name: 'schemyx-mcp',
|
|
@@ -100,8 +101,36 @@ async function callLocalTool(client, name, args) {
|
|
|
100
101
|
fileName: stringArg(args, 'fileName'),
|
|
101
102
|
fileId: stringArg(args, 'fileId'),
|
|
102
103
|
})).content);
|
|
104
|
+
case tool_definitions_1.localToolNames.listStyleRecipes:
|
|
105
|
+
return (0, text_1.textToolResult)((await client.executeTool(await client.resolveConfigId(stringArg(args, 'configId')), 'theme-forge.list-style-recipes', {
|
|
106
|
+
query: stringArg(args, 'query'),
|
|
107
|
+
group: stringArg(args, 'group'),
|
|
108
|
+
})).content);
|
|
109
|
+
case tool_definitions_1.localToolNames.getStyleRecipe:
|
|
110
|
+
return (0, text_1.textToolResult)((await client.executeTool(await client.resolveConfigId(stringArg(args, 'configId')), 'theme-forge.get-style-recipe', {
|
|
111
|
+
key: requiredStringArg(args, 'key'),
|
|
112
|
+
includeDeps: booleanArg(args, 'includeDeps'),
|
|
113
|
+
})).content);
|
|
103
114
|
case tool_definitions_1.localToolNames.getImplementationGuide:
|
|
104
115
|
return (0, text_1.textToolResult)((await client.executeTool(await client.resolveConfigId(stringArg(args, 'configId')), 'theme-forge.get-implementation-guide', {})).content);
|
|
116
|
+
case tool_definitions_1.localToolNames.scanCodebase:
|
|
117
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.scanLocalCodebase)(args));
|
|
118
|
+
case tool_definitions_1.localToolNames.searchCodebase:
|
|
119
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.searchCodebase)(args));
|
|
120
|
+
case tool_definitions_1.localToolNames.listCodebaseRecipes:
|
|
121
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.listCodebaseRecipes)(args));
|
|
122
|
+
case tool_definitions_1.localToolNames.getCodebaseRecipe:
|
|
123
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.getCodebaseRecipe)(args));
|
|
124
|
+
case tool_definitions_1.localToolNames.getContextPack:
|
|
125
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.getContextPack)(args));
|
|
126
|
+
case tool_definitions_1.localToolNames.getCodebaseGraph:
|
|
127
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.getCodebaseGraph)(args));
|
|
128
|
+
case tool_definitions_1.localToolNames.listReviewItems:
|
|
129
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.listReviewItems)(args));
|
|
130
|
+
case tool_definitions_1.localToolNames.checkContextFreshness:
|
|
131
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.checkContextFreshness)(args));
|
|
132
|
+
case tool_definitions_1.localToolNames.readCodebaseFile:
|
|
133
|
+
return (0, text_1.textToolResult)(await (0, codebase_scanner_1.readCodebaseFile)(args));
|
|
105
134
|
default:
|
|
106
135
|
throw new Error(`Unknown Schemyx local MCP tool: ${name}`);
|
|
107
136
|
}
|
|
@@ -117,6 +146,10 @@ function requiredStringArg(args, key) {
|
|
|
117
146
|
}
|
|
118
147
|
return value;
|
|
119
148
|
}
|
|
149
|
+
function booleanArg(args, key) {
|
|
150
|
+
const value = args[key];
|
|
151
|
+
return typeof value === 'boolean' ? value : undefined;
|
|
152
|
+
}
|
|
120
153
|
function recordArg(args, key) {
|
|
121
154
|
const value = args[key];
|
|
122
155
|
if (!value) {
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|