@leanmcp/cli 0.5.8 → 0.5.10

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 (3) hide show
  1. package/README.md +23 -0
  2. package/dist/index.js +20 -30
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -127,6 +127,7 @@ leanmcp deploy <folder> # Deploy to LeanMCP Cloud
127
127
  leanmcp projects list # List your cloud projects
128
128
  leanmcp projects get <id> # Get project details
129
129
  leanmcp projects delete <id> # Delete a project
130
+ leanmcp send-feedback [msg] # Send feedback or bug reports
130
131
  ```
131
132
 
132
133
  ---
@@ -324,6 +325,27 @@ leanmcp projects delete <project-id>
324
325
  leanmcp projects delete <project-id> --force # Skip confirmation
325
326
  ```
326
327
 
328
+ ### send-feedback
329
+
330
+ Send feedback, bug reports, or feature requests to the LeanMCP team:
331
+
332
+ ```bash
333
+ leanmcp send-feedback "I love this tool!"
334
+ ```
335
+
336
+ **Options:**
337
+
338
+ - `--anon`: Send anonymously
339
+ - `--include-logs`: Attach local logs for debugging
340
+
341
+ ```bash
342
+ # Interactive mode (multiline)
343
+ leanmcp send-feedback
344
+
345
+ # With logs (great for bug reports)
346
+ leanmcp send-feedback "Deploy failed" --include-logs
347
+ ```
348
+
327
349
  ---
328
350
 
329
351
  ## API Reference
@@ -344,6 +366,7 @@ leanmcp projects delete <project-id> --force # Skip confirmation
344
366
  | `projects list` | List cloud projects | `leanmcp projects list` |
345
367
  | `projects get <id>` | Get project details | `leanmcp projects get <id>` |
346
368
  | `projects delete <id>` | Delete project | `leanmcp projects delete <id>` |
369
+ | `send-feedback [msg]` | Send feedback to the team | `leanmcp send-feedback` |
347
370
  | `env list [folder]` | List environment variables | `leanmcp env list` |
348
371
  | `env set <keyValue>` | Set environment variable | `leanmcp env set KEY=VALUE` |
349
372
  | `env get <key>` | Get environment variable value | `leanmcp env get KEY` |
package/dist/index.js CHANGED
@@ -2441,6 +2441,7 @@ ${error instanceof Error ? error.message : String(error)}`);
2441
2441
  __name(deployCommand, "deployCommand");
2442
2442
 
2443
2443
  // src/commands/feedback.ts
2444
+ import { editor } from "@inquirer/prompts";
2444
2445
  import ora6 from "ora";
2445
2446
  import fs11 from "fs-extra";
2446
2447
  import path11 from "path";
@@ -2629,16 +2630,25 @@ async function sendFeedbackCommand(message, options) {
2629
2630
  });
2630
2631
  }
2631
2632
  if (!feedbackMessage || feedbackMessage.trim().length === 0) {
2632
- logger.error("Feedback message cannot be empty.");
2633
- logger.info("Usage examples:");
2634
- logger.info(' leanmcp send-feedback "Your message"');
2635
- logger.gray(" leanmcp send-feedback << EOF");
2636
- logger.gray(" multi-line");
2637
- logger.gray(" message");
2638
- logger.gray(" EOF");
2639
- logger.info(' leanmcp send-feedback --anon "Anonymous feedback"');
2640
- logger.info(' leanmcp send-feedback "Issue with deploy" --include-logs');
2641
- process.exit(1);
2633
+ if (process.stdin.isTTY) {
2634
+ try {
2635
+ feedbackMessage = await editor({
2636
+ message: "Enter your feedback message (closes on save):"
2637
+ });
2638
+ } catch (error) {
2639
+ logger.warn("\nFeedback cancelled.");
2640
+ process.exit(0);
2641
+ }
2642
+ }
2643
+ if (!feedbackMessage || feedbackMessage.trim().length === 0) {
2644
+ logger.error("Feedback message cannot be empty.");
2645
+ logger.info("Usage examples:");
2646
+ logger.info(' leanmcp send-feedback "Your message"');
2647
+ logger.info(" leanmcp send-feedback (interactive editor mode)");
2648
+ logger.info(' leanmcp send-feedback --anon "Anonymous feedback"');
2649
+ logger.info(' leanmcp send-feedback "Issue with deploy" --include-logs');
2650
+ process.exit(1);
2651
+ }
2642
2652
  }
2643
2653
  if (feedbackMessage.length > 5e3) {
2644
2654
  logger.error("Feedback message is too long (max 5000 characters).");
@@ -3692,26 +3702,6 @@ await createHTTPServer({
3692
3702
  cors: true,
3693
3703
  logging: true${dashboardLine}
3694
3704
  });
3695
-
3696
- console.log("\\n${projectName} MCP Server is running!");
3697
- console.log("\\nTry these commands to test your server:");
3698
- console.log("");
3699
- console.log("# Test calculation tool (schema validation)");
3700
- console.log('curl -X POST http://localhost:3001/mcp \\\\');
3701
- console.log(' -H "Content-Type: application/json" \\\\');
3702
- console.log(' -d '{"method": "tools/call", "params": {"name": "calculate", "arguments": {"a": 10, "b": 5, "operation": "add"}}}'');
3703
- console.log("");
3704
- console.log("# Test echo tool");
3705
- console.log('curl -X POST http://localhost:3001/mcp \\\\');
3706
- console.log(' -H "Content-Type: application/json" \\\\');
3707
- console.log(' -d '{"method": "tools/call", "params": {"name": "echo", "arguments": {"message": "Hello LeanMCP!"}}}'');
3708
- console.log("");
3709
- console.log("# Get server information (resource)");
3710
- console.log('curl -X POST http://localhost:3001/mcp \\\\');
3711
- console.log(' -H "Content-Type: application/json" \\\\');
3712
- console.log(' -d '{"method": "resources/read", "params": {"uri": "server://info"}}'');
3713
- console.log("");
3714
- console.log("Ready to customize - add your own tools, resources, and prompts!");
3715
3705
  `, "getMainTsTemplate");
3716
3706
 
3717
3707
  // src/templates/service_index_v1.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leanmcp/cli",
3
- "version": "0.5.8",
3
+ "version": "0.5.10",
4
4
  "description": "Command-line interface for scaffolding LeanMCP projects",
5
5
  "bin": {
6
6
  "leanmcp": "bin/leanmcp.js"