@metrostar/comet-mcp 1.0.0 → 1.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.
package/README.md CHANGED
@@ -30,10 +30,62 @@ npm install -g @metrostar/comet-mcp
30
30
 
31
31
  ## Available Tools
32
32
 
33
- | Tool | Description | Parameters |
34
- | ------------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------- |
35
- | `get_comet_version` | Get the current version of Comet Packages and Versions | None |
36
- | `init_project` | Initialize a new Comet project (UI or API) | `type`: Project type ("ui" or "api")<br>`name`: Project name and directory name |
33
+ | Tool | Description | Parameters |
34
+ | ----------------------- | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
35
+ | `init_project` | Initialize a new Comet project (UI or API) | `type`: Project type ("ui" or "api")<br>`name`: Project name and directory name |
36
+ | `add_comet` | Add Comet packages and configurations to an existing app | None |
37
+ | `get_comet_version` | Get the current version of Comet Packages and Versions | None |
38
+ | `list_components` | Get a list of all available Comet components | `package`: Filter by package ("all", "comet-uswds", "comet-extras", "comet-data-viz") - optional, defaults to "all" |
39
+ | `get_component_details` | Get detailed information about a specific component | `componentName`: The name of the component to get details for (required) |
40
+ | `get_env_variables` | Get current Node.js environment variables | `filter`: Optional filter to search for specific variables (case-insensitive) |
41
+
42
+ ### Component Tools
43
+
44
+ The `list_components` tool provides a comprehensive list of all components available across the three main Comet packages:
45
+
46
+ - **@metrostar/comet-uswds**: Core USWDS-based components
47
+ - **@metrostar/comet-extras**: Additional utility components
48
+ - **@metrostar/comet-data-viz**: Data visualization components
49
+
50
+ The `get_component_details` tool provides detailed information about a specific component including:
51
+
52
+ - Package information
53
+ - Component description (from JSDoc comments)
54
+ - File path location
55
+ - Available props (extracted from TypeScript interfaces)
56
+ - Exported types and interfaces
57
+
58
+ ### Add Comet Tool
59
+
60
+ The `add_comet` tool helps integrate Comet packages into existing applications by:
61
+
62
+ 1. **Checking existing installation**: Detects if Comet packages are already installed and configured
63
+ 2. **Prerequisites verification**: Ensures required dependencies (Vite and SCSS) are present
64
+ 3. **Setup guidance**: Provides complete step-by-step installation instructions when prerequisites are met
65
+
66
+ **Key Features:**
67
+
68
+ - **Smart detection**: Automatically checks for existing Comet packages to avoid duplicate setup
69
+ - **Dependency validation**: Verifies that Vite and SCSS/Sass are properly configured
70
+ - **Complete installation guide**: Provides detailed instructions following the official Comet USWDS documentation
71
+ - **Ready-to-use configurations**: Includes all necessary Vite config updates, SCSS setup, and example component usage
72
+
73
+ **When to use:**
74
+
75
+ - Adding Comet to an existing React/TypeScript project
76
+ - Migrating from custom components to Comet USWDS components
77
+ - Setting up Comet in a project that already has Vite and SCSS configured
78
+
79
+ The tool follows the official "Getting Started with a Custom App (NOT pre-configured for USWDS)" documentation and ensures all USWDS-specific configurations are properly applied.
80
+
81
+ ### Environment Variables Tool
82
+
83
+ The `get_env_variables` tool helps inspect the current Node.js environment variables:
84
+
85
+ - **Filtering**: Use the `filter` parameter to search for specific variables by name (case-insensitive)
86
+ - **Truncation**: Long values are truncated to 100 characters for readability
87
+
88
+ This tool is useful for debugging environment configuration, checking if required variables are set, and understanding the runtime environment.
37
89
 
38
90
  ## Running the Project Locally
39
91
 
package/dist/index.js CHANGED
@@ -7,11 +7,11 @@ import path from 'path';
7
7
  import { exec } from 'child_process';
8
8
  import { promisify } from 'util';
9
9
  import { API_REPO_URL, PROJECT_TYPES, UI_REPO_URL } from './constants.js';
10
- import { log } from './utils.js';
10
+ import { log, getComponentsFromPackage, getComponentDetails } from './utils.js';
11
11
  const execAsync = promisify(exec);
12
12
  const server = new Server({
13
13
  name: 'comet-mcp',
14
- version: '1.0.0',
14
+ version: '1.1.0',
15
15
  }, {
16
16
  capabilities: {
17
17
  tools: {},
@@ -48,6 +48,55 @@ server.setRequestHandler(ListToolsRequestSchema, async () => {
48
48
  required: ['type', 'name'],
49
49
  },
50
50
  },
51
+ {
52
+ name: 'list_components',
53
+ description: 'Get a list of all available Comet components from comet-uswds, comet-extras, and comet-data-viz packages',
54
+ inputSchema: {
55
+ type: 'object',
56
+ properties: {
57
+ package: {
58
+ type: 'string',
59
+ enum: ['all', 'comet-uswds', 'comet-extras', 'comet-data-viz'],
60
+ description: 'Filter components by package (default: all)',
61
+ },
62
+ },
63
+ },
64
+ },
65
+ {
66
+ name: 'get_component_details',
67
+ description: 'Get detailed information about a specific Comet component',
68
+ inputSchema: {
69
+ type: 'object',
70
+ properties: {
71
+ componentName: {
72
+ type: 'string',
73
+ description: 'The name of the component to get details for',
74
+ },
75
+ },
76
+ required: ['componentName'],
77
+ },
78
+ },
79
+ {
80
+ name: 'get_env_variables',
81
+ description: 'Get current Node.js environment variables',
82
+ inputSchema: {
83
+ type: 'object',
84
+ properties: {
85
+ filter: {
86
+ type: 'string',
87
+ description: 'Optional filter to search for specific environment variables (case-insensitive)',
88
+ },
89
+ },
90
+ },
91
+ },
92
+ {
93
+ name: 'add_comet',
94
+ description: 'Add comet packages and configurations to an existing app',
95
+ inputSchema: {
96
+ type: 'object',
97
+ properties: {},
98
+ },
99
+ },
51
100
  ],
52
101
  };
53
102
  });
@@ -128,6 +177,270 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
128
177
  ],
129
178
  };
130
179
  }
180
+ case 'list_components': {
181
+ const { package: packageFilter = 'all' } = args;
182
+ const cometUswdsComponents = getComponentsFromPackage('@metrostar/comet-uswds');
183
+ const cometExtrasComponents = getComponentsFromPackage('@metrostar/comet-extras');
184
+ const cometDataVizComponents = getComponentsFromPackage('@metrostar/comet-data-viz');
185
+ let result = '';
186
+ if (packageFilter === 'all' || packageFilter === 'comet-uswds') {
187
+ result += `## @metrostar/comet-uswds (${cometUswdsComponents.length} components)\n`;
188
+ result += cometUswdsComponents.map((component) => `- ${component}`).join('\n');
189
+ result += '\n\n';
190
+ }
191
+ if (packageFilter === 'all' || packageFilter === 'comet-extras') {
192
+ result += `## @metrostar/comet-extras (${cometExtrasComponents.length} components)\n`;
193
+ result += cometExtrasComponents.map((component) => `- ${component}`).join('\n');
194
+ result += '\n\n';
195
+ }
196
+ if (packageFilter === 'all' || packageFilter === 'comet-data-viz') {
197
+ result += `## @metrostar/comet-data-viz (${cometDataVizComponents.length} components)\n`;
198
+ result += cometDataVizComponents.map((component) => `- ${component}`).join('\n');
199
+ result += '\n\n';
200
+ }
201
+ if (packageFilter === 'all') {
202
+ const totalComponents = cometUswdsComponents.length +
203
+ cometExtrasComponents.length +
204
+ cometDataVizComponents.length;
205
+ result = `# Comet Components (${totalComponents} total)\n\n${result}`;
206
+ }
207
+ return {
208
+ content: [
209
+ {
210
+ type: 'text',
211
+ text: result.trim(),
212
+ },
213
+ ],
214
+ };
215
+ }
216
+ case 'get_component_details': {
217
+ const { componentName } = args;
218
+ const details = getComponentDetails(componentName);
219
+ if (!details) {
220
+ return {
221
+ content: [
222
+ {
223
+ type: 'text',
224
+ text: `Component "${componentName}" not found in any Comet package.`,
225
+ },
226
+ ],
227
+ };
228
+ }
229
+ let result = `# ${details.name}\n\n`;
230
+ result += `**Package:** ${details.package}\n\n`;
231
+ if (details.description) {
232
+ result += `**Description:** ${details.description}\n\n`;
233
+ }
234
+ if (details.filePath) {
235
+ result += `**File Path:** ${details.filePath}\n\n`;
236
+ }
237
+ if (details.props && details.props.length > 0) {
238
+ result += `**Props:** (${details.props.length})\n`;
239
+ result += details.props.map((prop) => `- ${prop}`).join('\n');
240
+ result += '\n\n';
241
+ }
242
+ if (details.types && details.types.length > 0) {
243
+ result += `**Exported Types:** (${details.types.length})\n`;
244
+ result += details.types.map((type) => `- ${type}`).join('\n');
245
+ result += '\n\n';
246
+ }
247
+ return {
248
+ content: [
249
+ {
250
+ type: 'text',
251
+ text: result.trim(),
252
+ },
253
+ ],
254
+ };
255
+ }
256
+ case 'add_comet': {
257
+ const currentDir = process.env.PROJECT_ROOT || process.cwd();
258
+ const packageJsonPath = path.join(currentDir, 'package.json');
259
+ if (!fs.existsSync(packageJsonPath)) {
260
+ throw new Error(`No package.json found in current directory: ${currentDir}`);
261
+ }
262
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
263
+ const dependencies = { ...packageJson.dependencies, ...packageJson.devDependencies };
264
+ // Step 1: Check if comet packages are already added
265
+ const cometPackages = [
266
+ '@metrostar/comet-uswds',
267
+ '@metrostar/comet-extras',
268
+ '@metrostar/comet-data-viz',
269
+ ];
270
+ const installedCometPackages = cometPackages.filter((pkg) => dependencies[pkg]);
271
+ if (installedCometPackages.length > 0) {
272
+ return {
273
+ content: [
274
+ {
275
+ type: 'text',
276
+ text: `Comet packages are already configured in this project:\n${installedCometPackages
277
+ .map((pkg) => `- ${pkg}: ${dependencies[pkg]}`)
278
+ .join('\n')}\n\nNothing more to do.`,
279
+ },
280
+ ],
281
+ };
282
+ }
283
+ // Step 2: Check for Vite and SCSS
284
+ const hasVite = 'vite' in dependencies ||
285
+ '@vitejs/plugin-react' in dependencies ||
286
+ '@vitejs/plugin-react-swc' in dependencies;
287
+ const hasScss = 'sass' in dependencies || 'scss' in dependencies || 'node-sass' in dependencies;
288
+ let result = '# Comet Setup Analysis\n\n';
289
+ result += '## Status\n';
290
+ result += 'Comet packages are not yet configured in this project.\n\n';
291
+ result += '## Prerequisites Check\n';
292
+ result += `- **Vite**: ${hasVite ? '✅ Found' : '❌ Not found'}\n`;
293
+ result += `- **SCSS**: ${hasScss ? '✅ Found' : '❌ Not found'}\n\n`;
294
+ if (!hasVite || !hasScss) {
295
+ result += '## Required Dependencies\n';
296
+ if (!hasVite) {
297
+ result +=
298
+ '- Vite is required for Comet packages. Install with: `npm install --save-dev vite @vitejs/plugin-react`\n';
299
+ }
300
+ if (!hasScss) {
301
+ result +=
302
+ '- SCSS/Sass is required for Comet styling. Install with: `npm install --save-dev sass`\n';
303
+ }
304
+ result += '\nPlease install the required dependencies before adding Comet packages.\n';
305
+ }
306
+ else {
307
+ // All prerequisites are met, proceed with installation
308
+ result += '## Installation Steps\n';
309
+ result +=
310
+ 'All prerequisites are met! Follow these steps to add Comet to your project:\n\n';
311
+ result += '### 1. Add Comet to your project:\n';
312
+ result += '```sh\n';
313
+ result += '# npm\n';
314
+ result += 'npm i --save @uswds/uswds @metrostar/comet-uswds\n\n';
315
+ result += '# or yarn\n';
316
+ result += 'yarn add @uswds/uswds @metrostar/comet-uswds\n';
317
+ result += '```\n\n';
318
+ result += '### 2. Add uswds directory to your src folder\n\n';
319
+ result += '### 3. Add base USWDS file (uswds.scss) to the uswds directory:\n';
320
+ result += '```scss\n';
321
+ result += '// Include a USWDS settings file (required)\n';
322
+ result += "@forward './uswds-settings.scss';\n\n";
323
+ result += '// Point to the USWDS source code (required)\n';
324
+ result += "@forward '~uswds/packages/uswds';\n\n";
325
+ result += "// Include your project's custom Sass (optional)\n";
326
+ result += '// @forward "project-custom.scss";\n';
327
+ result += '```\n\n';
328
+ result +=
329
+ '### 4. Add base USWDS settings file (uswds-settings.scss) to the uswds directory:\n';
330
+ result += '```scss\n';
331
+ result += "@use 'uswds-core' with (\n";
332
+ result += ' // General settings\n';
333
+ result += ' $theme-show-notifications: false,\n';
334
+ result += " $theme-font-path: '~uswds/dist/fonts',\n";
335
+ result += " $theme-image-path: '~uswds/dist/img'\n";
336
+ result += ');\n';
337
+ result += '```\n\n';
338
+ result += '### 5. Add uswds to the top of your SASS entry point (styles.scss):\n';
339
+ result += '```scss\n';
340
+ result += "@forward 'uswds/uswds.scss';\n";
341
+ result += '```\n\n';
342
+ result +=
343
+ '### 6. Update your Vite config file (vite.config.ts) with USWDS configurations:\n';
344
+ result += '```ts\n';
345
+ result += "import react from '@vitejs/plugin-react';\n";
346
+ result += "import autoprefixer from 'autoprefixer';\n";
347
+ result += "import path from 'path';\n";
348
+ result += "import { fileURLToPath } from 'url';\n";
349
+ result += "import { defineConfig } from 'vite';\n";
350
+ result += "import EnvironmentPlugin from 'vite-plugin-environment';\n";
351
+ result += "import eslint from 'vite-plugin-eslint';\n";
352
+ result += "import tsconfigPaths from 'vite-tsconfig-paths';\n\n";
353
+ result += 'const __filename = fileURLToPath(import.meta.url);\n';
354
+ result += 'const __dirname = path.dirname(__filename);\n\n';
355
+ result += '// https://vitejs.dev/config/\n';
356
+ result += 'export default defineConfig({\n';
357
+ result += " plugins: [react(), tsconfigPaths(), eslint(), EnvironmentPlugin('all')],\n";
358
+ result += ' resolve: {\n';
359
+ result += ' alias: {\n';
360
+ result += " '~uswds': path.resolve(__dirname, 'node_modules/@uswds/uswds'),\n";
361
+ result += ' },\n';
362
+ result += ' },\n';
363
+ result += ' css: {\n';
364
+ result += ' preprocessorOptions: {\n';
365
+ result += ' scss: {\n';
366
+ result += " api: 'legacy',\n";
367
+ result += " includePaths: ['node_modules/@uswds/uswds/packages'],\n";
368
+ result += ' // Silence warnings coming from USWDS SCSS\n';
369
+ result += ' quietDeps: true,\n';
370
+ result += ' logger: {\n';
371
+ result += ' warn: (msg) => {\n';
372
+ result += " if (msg.includes('legacy-js-api')) {\n";
373
+ result += ' return;\n';
374
+ result += ' }\n';
375
+ result += ' console.warn(msg);\n';
376
+ result += ' },\n';
377
+ result += ' },\n';
378
+ result += ' },\n';
379
+ result += ' },\n';
380
+ result += ' postcss: {\n';
381
+ result += ' plugins: [autoprefixer],\n';
382
+ result += ' },\n';
383
+ result += ' },\n';
384
+ result += '});\n';
385
+ result += '```\n\n';
386
+ result +=
387
+ 'For additional troubleshooting, refer to the [Comet Starter](https://github.com/MetroStar/comet-starter) app.\n';
388
+ }
389
+ return {
390
+ content: [
391
+ {
392
+ type: 'text',
393
+ text: result,
394
+ },
395
+ ],
396
+ };
397
+ }
398
+ case 'get_env_variables': {
399
+ const { filter } = args;
400
+ const envVars = process.env;
401
+ const filteredVars = {};
402
+ Object.keys(envVars).forEach((key) => {
403
+ const value = envVars[key];
404
+ // Skip undefined values
405
+ if (value === undefined)
406
+ return;
407
+ // Filter by search term if provided
408
+ if (filter && !key.toLowerCase().includes(filter.toLowerCase())) {
409
+ return;
410
+ }
411
+ filteredVars[key] = value;
412
+ });
413
+ const sortedKeys = Object.keys(filteredVars).sort();
414
+ if (sortedKeys.length === 0) {
415
+ const filterText = filter ? ` matching "${filter}"` : '';
416
+ return {
417
+ content: [
418
+ {
419
+ type: 'text',
420
+ text: `No environment variables found${filterText}.`,
421
+ },
422
+ ],
423
+ };
424
+ }
425
+ let result = `# Environment Variables (${sortedKeys.length} found)\n\n`;
426
+ if (filter) {
427
+ result += `**Filter:** "${filter}"\n\n`;
428
+ }
429
+ sortedKeys.forEach((key) => {
430
+ const value = filteredVars[key];
431
+ // Truncate very long values for readability
432
+ const displayValue = value.length > 100 ? `${value.substring(0, 100)}...` : value;
433
+ result += `**${key}:** \`${displayValue}\`\n\n`;
434
+ });
435
+ return {
436
+ content: [
437
+ {
438
+ type: 'text',
439
+ text: result.trim(),
440
+ },
441
+ ],
442
+ };
443
+ }
131
444
  default:
132
445
  throw new Error(`Unknown tool: ${name}`);
133
446
  }
@@ -149,12 +462,10 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
149
462
  async function main() {
150
463
  const transport = new StdioServerTransport();
151
464
  await server.connect(transport);
152
- // eslint-disable-next-line no-console
153
- console.error('Comet MCP server running on stdio');
465
+ log('Comet MCP server running on stdio'); // Now uses stderr via updated log function
154
466
  }
155
467
  main().catch((error) => {
156
- // eslint-disable-next-line no-console
157
- console.error('Server failed to start:', error);
468
+ log('Server failed to start:', error);
158
469
  process.exit(1);
159
470
  });
160
471
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/utils.d.ts CHANGED
@@ -7,4 +7,47 @@ export declare const error: {
7
7
  (message?: any, ...optionalParams: any[]): void;
8
8
  };
9
9
  export declare const getFriendlyDirectoryName: (name: string) => string;
10
+ /**
11
+ * Gets components from a Comet package by reading its source files
12
+ * @param packageName - The package name (e.g., '@metrostar/comet-uswds')
13
+ * @returns Array of component names found in the package
14
+ */
15
+ export declare const getComponentsFromPackage: (packageName: string) => string[];
16
+ /**
17
+ * Component details interface
18
+ */
19
+ export interface ComponentDetails {
20
+ name: string;
21
+ package: string;
22
+ description?: string;
23
+ props?: string[];
24
+ types?: string[];
25
+ filePath?: string;
26
+ }
27
+ /**
28
+ * Gets detailed information about a specific Comet component
29
+ * @param componentName - The component name to search for
30
+ * @returns Component details or null if not found
31
+ */
32
+ export declare const getComponentDetails: (componentName: string) => ComponentDetails | null;
33
+ /**
34
+ * Finds the component directory based on the component name
35
+ */
36
+ export declare const findComponentDirectory: (packagePath: string, componentName: string, isLocalDev: boolean) => string | null;
37
+ /**
38
+ * Finds the main component file
39
+ */
40
+ export declare const findComponentFile: (componentDir: string, componentName: string, isLocalDev: boolean) => string | null;
41
+ /**
42
+ * Extracts JSDoc description from component file
43
+ */
44
+ export declare const extractJSDocDescription: (content: string) => string | undefined;
45
+ /**
46
+ * Extracts prop names from TypeScript interface definitions
47
+ */
48
+ export declare const extractProps: (content: string) => string[];
49
+ /**
50
+ * Extracts exported type names from the file
51
+ */
52
+ export declare const extractTypes: (content: string) => string[];
10
53
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,GAAG;;;CAAc,CAAC;AAC/B,eAAO,MAAM,KAAK;;;CAAgB,CAAC;AAEnC,eAAO,MAAM,wBAAwB,GAAI,MAAM,MAAM,WAEpD,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,GAAG;;;CAAgB,CAAC;AACjC,eAAO,MAAM,KAAK;;;CAAgB,CAAC;AAEnC,eAAO,MAAM,wBAAwB,GAAI,MAAM,MAAM,WAEpD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GAAI,aAAa,MAAM,KAAG,MAAM,EAqDpE,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,GAAI,eAAe,MAAM,KAAG,gBAAgB,GAAG,IA2D9E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GACjC,aAAa,MAAM,EACnB,eAAe,MAAM,EACrB,YAAY,OAAO,KAClB,MAAM,GAAG,IAsBX,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,cAAc,MAAM,EACpB,eAAe,MAAM,EACrB,YAAY,OAAO,KAClB,MAAM,GAAG,IAgBX,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS,MAAM,KAAG,MAAM,GAAG,SAOlE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,KAAG,MAAM,EAoBpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM,KAAG,MAAM,EAcpD,CAAC"}