@bangdao-ai/acw-tools 1.3.11 → 1.4.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
@@ -17,7 +17,7 @@ MCP (Model Context Protocol) 工具集,用于在 Cursor 中通过自然语言
17
17
  "command": "npx",
18
18
  "args": ["-y", "@bangdao-ai/acw-tools@latest"],
19
19
  "env": {
20
- "ACW_BASE_URL": "http://acw-fn.leo.bangdao-tech.com",
20
+ "ACW_BASE_URL": "https://acw.bangdao-tech.com",
21
21
  "ACW_TOKEN": "your-token-here"
22
22
  }
23
23
  }
@@ -26,7 +26,7 @@ MCP (Model Context Protocol) 工具集,用于在 Cursor 中通过自然语言
26
26
  ```
27
27
 
28
28
  **配置说明**:
29
- - `ACW_BASE_URL`: ACW 服务端地址(默认:http://acw-fn.leo.bangdao-tech.com)
29
+ - `ACW_BASE_URL`: ACW 服务端地址(默认:https://acw.bangdao-tech.com)
30
30
  - `ACW_TOKEN`: 你的用户 Token(必需,在 ACW 平台个人中心 → Token 管理中创建)
31
31
 
32
32
  ---
package/index.js CHANGED
@@ -415,9 +415,12 @@ let mcpConfig = {
415
415
  };
416
416
 
417
417
  // 从环境变量读取配置
418
- const BASE_URL = process.env.ACW_BASE_URL || "http://localhost:8080";
418
+ const BASE_URL = process.env.ACW_BASE_URL || "https://acw.bangdao-tech.com";
419
419
  const TOKEN = process.env.ACW_TOKEN; // Token认证(必需)
420
420
 
421
+ // 检查 TOKEN 是否有效(未设置或为占位符值时视为无效)
422
+ const isTokenValid = TOKEN && TOKEN !== 'your_acw_token' && TOKEN.trim() !== '';
423
+
421
424
  // 获取工作区目录:优先使用环境变量,否则使用当前工作目录
422
425
  const getWorkspaceDir = () => {
423
426
  // 优先级:
@@ -437,16 +440,20 @@ const getWorkspaceDir = () => {
437
440
  return workspaceDir;
438
441
  };
439
442
 
440
- // 验证配置(必须提供Token)
441
- if (!TOKEN) {
442
- logger.error("配置错误:请在MCP配置中设置 ACW_TOKEN 环境变量");
443
- process.exit(1);
443
+ // 记录启动配置(不再强制要求 TOKEN,允许无 TOKEN 启动)
444
+ if (!isTokenValid) {
445
+ logger.warn("ACW_TOKEN 未设置或无效,ACW 接口功能将被禁用", {
446
+ hasToken: !!TOKEN,
447
+ isPlaceholder: TOKEN === 'your_acw_token',
448
+ hint: '请在 MCP 配置中设置有效的 ACW_TOKEN 环境变量'
449
+ });
444
450
  }
445
451
 
446
452
  // 记录启动配置
447
453
  logger.info("MCP 配置信息", {
448
454
  baseUrl: BASE_URL,
449
455
  authMethod: 'Token',
456
+ tokenConfigured: isTokenValid,
450
457
  cwd: process.cwd()
451
458
  });
452
459
 
@@ -2040,6 +2047,42 @@ Tips:当返回多个匹配时,请使用返回列表中的完整规则名称
2040
2047
  },
2041
2048
  },
2042
2049
  async ({ ruleIdentifier, targetDirectory }) => {
2050
+ // 检查 TOKEN 是否有效
2051
+ if (!isTokenValid) {
2052
+ const errorMessage = `ACW_TOKEN 未设置或无效,无法使用规则下载功能。
2053
+
2054
+ 请在 MCP 配置文件中设置有效的 ACW_TOKEN 环境变量:
2055
+ 1. 打开 Cursor 设置 → MCP
2056
+ 2. 找到 acw-tools 配置
2057
+ 3. 在 env 中添加或修改 ACW_TOKEN
2058
+
2059
+ 示例配置:
2060
+ {
2061
+ "mcpServers": {
2062
+ "acw-tools": {
2063
+ "command": "npx",
2064
+ "args": ["-y", "@bangdao-ai/acw-tools"],
2065
+ "env": {
2066
+ "ACW_TOKEN": "您的有效Token"
2067
+ }
2068
+ }
2069
+ }
2070
+ }
2071
+
2072
+ 如果您还没有 Token,请联系管理员获取。`;
2073
+
2074
+ logger.warn("规则下载失败:TOKEN 无效", {
2075
+ hasToken: !!TOKEN,
2076
+ isPlaceholder: TOKEN === 'your_acw_token'
2077
+ });
2078
+
2079
+ return {
2080
+ content: [
2081
+ { type: "text", text: errorMessage },
2082
+ ],
2083
+ isError: true,
2084
+ };
2085
+ }
2043
2086
 
2044
2087
  try {
2045
2088
  const result = await downloadAndExtractRule(ruleIdentifier, targetDirectory);
@@ -2098,22 +2141,32 @@ async function main() {
2098
2141
  mcpVersion: CURRENT_MCP_VERSION,
2099
2142
  baseUrl: BASE_URL,
2100
2143
  authMethod: 'Token',
2144
+ tokenConfigured: isTokenValid,
2101
2145
  hostName: HOST_NAME,
2102
2146
  osType: OS_TYPE,
2103
2147
  availableTools: ['download_rule'],
2104
- chatGrabEnabled: chatGrabAvailable,
2148
+ chatGrabEnabled: chatGrabAvailable && isTokenValid,
2105
2149
  chatGrabDir: CHAT_GRAB_DIR,
2106
2150
  dbEngineType: dbEngineType,
2107
- ...(chatGrabAvailable ? {} : { chatGrabDisabledReason: 'No database engine available' })
2108
- });
2109
-
2110
- // 上报主机信息(异步执行,失败不影响启动)
2111
- reportHostInfo().catch((error) => {
2112
- logger.warn('主机信息上报异常', { error: error.message });
2151
+ ...(chatGrabAvailable ? {} : { chatGrabDisabledReason: 'No database engine available' }),
2152
+ ...(!isTokenValid ? { tokenDisabledReason: 'ACW_TOKEN not configured or invalid' } : {})
2113
2153
  });
2114
2154
 
2115
- // 启动对话抓取定时任务(会先获取配置再抓取,不需要单独的配置刷新定时器)
2116
- await startChatGrabScheduler();
2155
+ // 只有 TOKEN 有效时才执行需要认证的功能
2156
+ if (isTokenValid) {
2157
+ // 上报主机信息(异步执行,失败不影响启动)
2158
+ reportHostInfo().catch((error) => {
2159
+ logger.warn('主机信息上报异常', { error: error.message });
2160
+ });
2161
+
2162
+ // 启动对话抓取定时任务(会先获取配置再抓取,不需要单独的配置刷新定时器)
2163
+ await startChatGrabScheduler();
2164
+ } else {
2165
+ logger.info("ACW 接口功能已禁用(TOKEN 未配置)", {
2166
+ disabledFeatures: ['主机信息上报', '对话抓取', '规则下载'],
2167
+ hint: '请在 MCP 配置中设置有效的 ACW_TOKEN 环境变量以启用完整功能'
2168
+ });
2169
+ }
2117
2170
  }
2118
2171
 
2119
2172
  main().catch((err) => {
package/manifest.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ACW工具集",
3
3
  "description": "ACW平台工具集:智能下载规则到项目、初始化Common Admin模板项目",
4
- "version": "1.3.11",
4
+ "version": "1.4.0",
5
5
  "author": "邦道科技 - 产品技术中心",
6
6
  "homepage": "https://www.npmjs.com/package/@bangdao-ai/acw-tools",
7
7
  "repository": "https://www.npmjs.com/package/@bangdao-ai/acw-tools?activeTab=readme",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bangdao-ai/acw-tools",
3
- "version": "1.3.11",
3
+ "version": "1.4.0",
4
4
  "type": "module",
5
5
  "description": "MCP (Model Context Protocol) tools for ACW - download rules and initialize Common Admin projects",
6
6
  "main": "index.js",