bmall-mcp 1.1.3 → 1.1.4

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.
@@ -0,0 +1,4 @@
1
+ {
2
+ "mcpServers": {
3
+ }
4
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"AAAA;;GAEG;AA+EH;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAO9B"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsFH;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAO9B"}
@@ -20,14 +20,21 @@ function errorResponse(message) {
20
20
  const handlers = {
21
21
  pull_rules: async (args) => {
22
22
  const ide = args.ide;
23
+ if (!ide) {
24
+ return errorResponse("请指定当前使用的 IDE: kiro / cursor / windsurf / joycode");
25
+ }
23
26
  const rulesType = args.rulesType;
24
27
  const result = await pullRules(ide, rulesType);
25
28
  return textResponse(result);
26
29
  },
27
30
  push_rules: async (args) => {
31
+ const ide = args.ide;
32
+ if (!ide) {
33
+ return errorResponse("请指定当前使用的 IDE: kiro / cursor / windsurf / joycode");
34
+ }
28
35
  const message = args.message;
29
36
  const rulesType = args.rulesType;
30
- const result = await pushRules(message, rulesType);
37
+ const result = await pushRules(ide, message, rulesType);
31
38
  return textResponse(result);
32
39
  },
33
40
  standard_git_commit: async (args) => {
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/server/handlers.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ export declare const toolDefinitions: ({
25
25
  moduleName?: undefined;
26
26
  businessCodePath?: undefined;
27
27
  };
28
- required?: undefined;
28
+ required: string[];
29
29
  };
30
30
  } | {
31
31
  name: string;
@@ -33,6 +33,11 @@ export declare const toolDefinitions: ({
33
33
  inputSchema: {
34
34
  type: string;
35
35
  properties: {
36
+ ide: {
37
+ type: string;
38
+ enum: string[];
39
+ description: string;
40
+ };
36
41
  message: {
37
42
  type: string;
38
43
  description: string;
@@ -42,7 +47,6 @@ export declare const toolDefinitions: ({
42
47
  enum: string[];
43
48
  description: string;
44
49
  };
45
- ide?: undefined;
46
50
  scope?: undefined;
47
51
  requirementUrl?: undefined;
48
52
  platform?: undefined;
@@ -50,7 +54,7 @@ export declare const toolDefinitions: ({
50
54
  moduleName?: undefined;
51
55
  businessCodePath?: undefined;
52
56
  };
53
- required?: undefined;
57
+ required: string[];
54
58
  };
55
59
  } | {
56
60
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/server/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA2G3B,CAAC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/server/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkH3B,CAAC"}
@@ -11,7 +11,7 @@ export const toolDefinitions = [
11
11
  ide: {
12
12
  type: "string",
13
13
  enum: ["kiro", "cursor", "windsurf", "joycode"],
14
- description: "目标 IDE (可选,默认自动检测)",
14
+ description: "当前使用的 IDE",
15
15
  },
16
16
  rulesType: {
17
17
  type: "string",
@@ -19,6 +19,7 @@ export const toolDefinitions = [
19
19
  description: "Rules 类型 (可选,默认自动检测)",
20
20
  },
21
21
  },
22
+ required: ["ide"],
22
23
  },
23
24
  },
24
25
  {
@@ -27,6 +28,11 @@ export const toolDefinitions = [
27
28
  inputSchema: {
28
29
  type: "object",
29
30
  properties: {
31
+ ide: {
32
+ type: "string",
33
+ enum: ["kiro", "cursor", "windsurf", "joycode"],
34
+ description: "当前使用的 IDE",
35
+ },
30
36
  message: {
31
37
  type: "string",
32
38
  description: "提交信息 (可选)",
@@ -37,6 +43,7 @@ export const toolDefinitions = [
37
43
  description: "Rules 类型 (可选,默认自动检测)",
38
44
  },
39
45
  },
46
+ required: ["ide"],
40
47
  },
41
48
  },
42
49
  {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/server/tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,kCAAkC;QAC/C,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC;oBAC/C,WAAW,EAAE,oBAAoB;iBAClC;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC;oBAClC,WAAW,EAAE,sBAAsB;iBACpC;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,2BAA2B;QACxC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,WAAW;iBACzB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC;oBAClC,WAAW,EAAE,sBAAsB;iBACpC;aACF;SACF;KACF;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,qDAAqD;QAClE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yBAAyB;iBACvC;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,gCAAgC;QAC7C,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,cAAc,EAAE;oBACd,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4DAA4D;iBAC1E;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC;oBAC3C,WAAW,EAAE,uBAAuB;iBACrC;aACF;YACD,QAAQ,EAAE,CAAC,gBAAgB,CAAC;SAC7B;KACF;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,2CAA2C;QACxD,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gBAAgB;iBAC9B;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sBAAsB;iBACpC;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,CAAC;SAC5B;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,gBAAgB;iBAC9B;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oCAAoC;iBAClD;aACF;YACD,QAAQ,EAAE,CAAC,eAAe,CAAC;SAC5B;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/server/tools.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare function pushRules(message?: string, rulesType?: string): Promise<string>;
1
+ export declare function pushRules(ide: string, message?: string, rulesType?: string): Promise<string>;
2
2
  //# sourceMappingURL=push.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../src/tools/rules/push.ts"],"names":[],"mappings":"AAiBA,wBAAsB,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA4GrF"}
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../src/tools/rules/push.ts"],"names":[],"mappings":"AAiBA,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA2GlG"}
@@ -3,7 +3,7 @@ import * as path from "path";
3
3
  import { execSync } from "child_process";
4
4
  import { log } from "../utils.js";
5
5
  import { GIT_BRANCH, RULES_CACHE_DIR, IDE_PATHS, validateAndGetRulesType, detectProjectName, getGitRulesDir, copyMarkdownFiles, initializeGitCache, setupSparseCheckout, checkoutOrCreateBranch, } from "./utils.js";
6
- export async function pushRules(message, rulesType) {
6
+ export async function pushRules(ide, message, rulesType) {
7
7
  try {
8
8
  // 验证并获取 Rules 类型
9
9
  const typeResult = validateAndGetRulesType(rulesType);
@@ -11,11 +11,10 @@ export async function pushRules(message, rulesType) {
11
11
  return typeResult.error;
12
12
  }
13
13
  const projectType = typeResult.type;
14
- // 验证并获取 IDE(默认 kiro)
15
- const targetIDE = "kiro";
16
- const localRulesPath = IDE_PATHS[targetIDE];
14
+ // 验证并获取 IDE
15
+ const localRulesPath = IDE_PATHS[ide];
17
16
  if (!localRulesPath) {
18
- return `❌ 不支持的 IDE: ${targetIDE}`;
17
+ return `❌ 不支持的 IDE: ${ide}`;
19
18
  }
20
19
  // 检测项目名称,用于创建项目级分支
21
20
  const projectName = detectProjectName();
@@ -1 +1 @@
1
- {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/tools/rules/push.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/tools/rules/push.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bmall-mcp",
3
- "version": "1.1.3",
3
+ "version": "1.1.4",
4
4
  "description": "MCP Server for bmall development rules and tools",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -27,15 +27,22 @@ type ToolHandler = (args: Record<string, unknown>) => Promise<ReturnType<typeof
27
27
  const handlers: Record<string, ToolHandler> = {
28
28
  pull_rules: async (args) => {
29
29
  const ide = args.ide as string | undefined;
30
+ if (!ide) {
31
+ return errorResponse("请指定当前使用的 IDE: kiro / cursor / windsurf / joycode");
32
+ }
30
33
  const rulesType = args.rulesType as string | undefined;
31
34
  const result = await pullRules(ide, rulesType);
32
35
  return textResponse(result);
33
36
  },
34
37
 
35
38
  push_rules: async (args) => {
39
+ const ide = args.ide as string | undefined;
40
+ if (!ide) {
41
+ return errorResponse("请指定当前使用的 IDE: kiro / cursor / windsurf / joycode");
42
+ }
36
43
  const message = args.message as string | undefined;
37
44
  const rulesType = args.rulesType as string | undefined;
38
- const result = await pushRules(message, rulesType);
45
+ const result = await pushRules(ide, message, rulesType);
39
46
  return textResponse(result);
40
47
  },
41
48
 
@@ -12,7 +12,7 @@ export const toolDefinitions = [
12
12
  ide: {
13
13
  type: "string",
14
14
  enum: ["kiro", "cursor", "windsurf", "joycode"],
15
- description: "目标 IDE (可选,默认自动检测)",
15
+ description: "当前使用的 IDE",
16
16
  },
17
17
  rulesType: {
18
18
  type: "string",
@@ -20,6 +20,7 @@ export const toolDefinitions = [
20
20
  description: "Rules 类型 (可选,默认自动检测)",
21
21
  },
22
22
  },
23
+ required: ["ide"],
23
24
  },
24
25
  },
25
26
  {
@@ -28,6 +29,11 @@ export const toolDefinitions = [
28
29
  inputSchema: {
29
30
  type: "object",
30
31
  properties: {
32
+ ide: {
33
+ type: "string",
34
+ enum: ["kiro", "cursor", "windsurf", "joycode"],
35
+ description: "当前使用的 IDE",
36
+ },
31
37
  message: {
32
38
  type: "string",
33
39
  description: "提交信息 (可选)",
@@ -38,6 +44,7 @@ export const toolDefinitions = [
38
44
  description: "Rules 类型 (可选,默认自动检测)",
39
45
  },
40
46
  },
47
+ required: ["ide"],
41
48
  },
42
49
  },
43
50
  {
@@ -15,7 +15,7 @@ import {
15
15
  checkoutOrCreateBranch,
16
16
  } from "./utils.js";
17
17
 
18
- export async function pushRules(message?: string, rulesType?: string): Promise<string> {
18
+ export async function pushRules(ide: string, message?: string, rulesType?: string): Promise<string> {
19
19
  try {
20
20
  // 验证并获取 Rules 类型
21
21
  const typeResult = validateAndGetRulesType(rulesType);
@@ -24,11 +24,10 @@ export async function pushRules(message?: string, rulesType?: string): Promise<s
24
24
  }
25
25
  const projectType = typeResult.type;
26
26
 
27
- // 验证并获取 IDE(默认 kiro)
28
- const targetIDE = "kiro";
29
- const localRulesPath = IDE_PATHS[targetIDE];
27
+ // 验证并获取 IDE
28
+ const localRulesPath = IDE_PATHS[ide];
30
29
  if (!localRulesPath) {
31
- return `❌ 不支持的 IDE: ${targetIDE}`;
30
+ return `❌ 不支持的 IDE: ${ide}`;
32
31
  }
33
32
 
34
33
  // 检测项目名称,用于创建项目级分支