universal-db-mcp 2.9.0 → 2.10.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
@@ -58,6 +58,8 @@ AI: Let me query that for you...
58
58
  - **Security First** - Read-only mode by default prevents accidental data modifications
59
59
  - **Intelligent Caching** - Schema caching with configurable TTL for blazing-fast performance
60
60
  - **Batch Query Optimization** - Up to 100x faster schema retrieval for large databases
61
+ - **Schema Enhancement** - Table comments, implicit relationship inference for better Text2SQL accuracy
62
+ - **Data Masking** - Automatic sensitive data protection (phone, email, ID card, bank card, etc.)
61
63
 
62
64
  ### Performance Improvements
63
65
 
@@ -201,9 +203,11 @@ See [Dify Integration Guide](./docs/integrations/DIFY.md) for detailed setup ins
201
203
  │ │ • get_schema │ │ │ │ │ │
202
204
  │ │ • get_table_info │ │ │ Tools: (same as stdio) │ │ │
203
205
  │ │ • clear_cache │ │ │ • execute_query │ │ │
204
- │ │ │ │ │ • get_schema │ │ │
205
- │ │ For: Claude Desktop, │ │ │ • get_table_info │ │ │
206
- │ │ Cursor, etc. │ │ │ • clear_cache │ │ │
206
+ │ │ • get_enum_values │ │ │ • get_schema │ │ │
207
+ │ │ get_sample_data │ │ │ • get_table_info │ │ │
208
+ │ │ │ │ │ • clear_cache │ │ │
209
+ │ │ For: Claude Desktop, │ │ │ • get_enum_values │ │ │
210
+ │ │ Cursor, etc. │ │ │ • get_sample_data │ │ │
207
211
  │ └─────────────┬───────────┘ │ │ │ │ │
208
212
  │ │ │ │ For: Dify, Remote Access │ │ │
209
213
  │ │ │ └──────────────┬──────────────┘ │ │
@@ -241,12 +245,51 @@ See [Dify Integration Guide](./docs/integrations/DIFY.md) for detailed setup ins
241
245
 
242
246
  By default, Universal DB MCP runs in **read-only mode**, blocking all write operations (INSERT, UPDATE, DELETE, DROP, etc.).
243
247
 
244
- To enable write operations (use with caution!):
248
+ ### Permission Modes
249
+
250
+ Fine-grained permission control is supported for flexible configuration:
251
+
252
+ | Mode | Allowed Operations | Description |
253
+ |------|-------------------|-------------|
254
+ | `safe` (default) | SELECT | Read-only, safest |
255
+ | `readwrite` | SELECT, INSERT, UPDATE | Read/write but no delete |
256
+ | `full` | All operations | Full control (dangerous!) |
257
+ | `custom` | Custom combination | Specify via `--permissions` |
258
+
259
+ **Permission Types:**
260
+ - `read` - SELECT queries (always included)
261
+ - `insert` - INSERT, REPLACE
262
+ - `update` - UPDATE
263
+ - `delete` - DELETE, TRUNCATE
264
+ - `ddl` - CREATE, ALTER, DROP, RENAME
265
+
266
+ **Usage Examples:**
245
267
 
246
268
  ```bash
247
- --danger-allow-write
269
+ # Read-only mode (default)
270
+ npx universal-db-mcp --type mysql ...
271
+
272
+ # Read/write but no delete
273
+ npx universal-db-mcp --type mysql --permission-mode readwrite ...
274
+
275
+ # Custom: only read and insert
276
+ npx universal-db-mcp --type mysql --permissions read,insert ...
277
+
278
+ # Full control (equivalent to --danger-allow-write)
279
+ npx universal-db-mcp --type mysql --permission-mode full ...
248
280
  ```
249
281
 
282
+ **Permission Configuration by Transport:**
283
+
284
+ > ⚠️ Different transports use different parameter naming conventions!
285
+
286
+ | Transport | Parameter Location | Permission Mode | Custom Permissions |
287
+ |-----------|-------------------|-----------------|-------------------|
288
+ | STDIO (Claude Desktop) | CLI args | `--permission-mode` | `--permissions` |
289
+ | SSE (Dify, etc.) | URL Query | `permissionMode` | `permissions` |
290
+ | Streamable HTTP | HTTP Header | `X-DB-Permission-Mode` | `X-DB-Permissions` |
291
+ | REST API | JSON Body | `permissionMode` | `permissions` |
292
+
250
293
  **Best Practices:**
251
294
  - Never enable write mode in production
252
295
  - Use dedicated read-only database accounts
package/README.zh-CN.md CHANGED
@@ -3,7 +3,6 @@
3
3
  </p>
4
4
 
5
5
  <h1 align="center">Universal DB MCP</h1>
6
-
7
6
  <p align="center">
8
7
  <strong>用自然语言连接 AI 与你的数据库</strong>
9
8
  </p>
@@ -58,6 +57,8 @@ AI: 让我帮你查询一下...
58
57
  - **安全第一** - 默认只读模式,防止意外的数据修改
59
58
  - **智能缓存** - Schema 缓存支持可配置的 TTL,性能极速
60
59
  - **批量查询优化** - 大型数据库的 Schema 获取速度提升高达 100 倍
60
+ - **Schema 增强** - 表注释、隐式关系推断,提升 Text2SQL 准确性
61
+ - **数据脱敏** - 自动保护敏感数据(手机号、邮箱、身份证、银行卡等)
61
62
 
62
63
  ### 性能提升
63
64
 
@@ -201,9 +202,11 @@ POST http://localhost:3000/mcp
201
202
  │ │ • get_schema │ │ │ │ │ │
202
203
  │ │ • get_table_info │ │ │ 工具:(与 stdio 相同) │ │ │
203
204
  │ │ • clear_cache │ │ │ • execute_query │ │ │
204
- │ │ │ │ │ • get_schema │ │ │
205
- │ │ 适用:Claude Desktop, │ │ │ • get_table_info │ │ │
206
- │ │ Cursor 等 │ │ │ • clear_cache │ │ │
205
+ │ │ • get_enum_values │ │ │ • get_schema │ │ │
206
+ │ │ get_sample_data │ │ │ • get_table_info │ │ │
207
+ │ │ │ │ │ • clear_cache │ │ │
208
+ │ │ 适用:Claude Desktop, │ │ │ • get_enum_values │ │ │
209
+ │ │ Cursor 等 │ │ │ • get_sample_data │ │ │
207
210
  │ └─────────────┬───────────┘ │ │ │ │ │
208
211
  │ │ │ │ 适用:Dify、远程访问 │ │ │
209
212
  │ │ │ └──────────────┬──────────────┘ │ │
@@ -241,12 +244,51 @@ POST http://localhost:3000/mcp
241
244
 
242
245
  默认情况下,Universal DB MCP 运行在**只读模式**,会阻止所有写操作(INSERT、UPDATE、DELETE、DROP 等)。
243
246
 
244
- 如需启用写操作(请谨慎使用!):
247
+ ### 权限模式
248
+
249
+ 支持细粒度权限控制,可根据需求灵活配置:
250
+
251
+ | 模式 | 允许的操作 | 说明 |
252
+ |------|-----------|------|
253
+ | `safe`(默认) | SELECT | 只读,最安全 |
254
+ | `readwrite` | SELECT, INSERT, UPDATE | 读写但不能删除 |
255
+ | `full` | 所有操作 | 完全控制(危险!) |
256
+ | `custom` | 自定义组合 | 通过 `--permissions` 指定 |
257
+
258
+ **权限类型:**
259
+ - `read` - SELECT 查询(始终包含)
260
+ - `insert` - INSERT, REPLACE
261
+ - `update` - UPDATE
262
+ - `delete` - DELETE, TRUNCATE
263
+ - `ddl` - CREATE, ALTER, DROP, RENAME
264
+
265
+ **使用示例:**
245
266
 
246
267
  ```bash
247
- --danger-allow-write
268
+ # 只读模式(默认)
269
+ npx universal-db-mcp --type mysql ...
270
+
271
+ # 读写但不能删除
272
+ npx universal-db-mcp --type mysql --permission-mode readwrite ...
273
+
274
+ # 自定义:只允许读和插入
275
+ npx universal-db-mcp --type mysql --permissions read,insert ...
276
+
277
+ # 完全控制(等价于原来的 --danger-allow-write)
278
+ npx universal-db-mcp --type mysql --permission-mode full ...
248
279
  ```
249
280
 
281
+ **不同传输方式的权限配置:**
282
+
283
+ > ⚠️ 不同传输方式的参数命名风格不同,请注意区分!
284
+
285
+ | 传输方式 | 参数位置 | 权限模式参数 | 自定义权限参数 |
286
+ |---------|---------|-------------|---------------|
287
+ | STDIO (Claude Desktop) | 命令行 | `--permission-mode` | `--permissions` |
288
+ | SSE (Dify 等) | URL Query | `permissionMode` | `permissions` |
289
+ | Streamable HTTP | HTTP Header | `X-DB-Permission-Mode` | `X-DB-Permissions` |
290
+ | REST API | JSON Body | `permissionMode` | `permissions` |
291
+
250
292
  **最佳实践:**
251
293
  - 生产环境永远不要启用写入模式
252
294
  - 使用专用的只读数据库账号
@@ -194,7 +194,7 @@ export class DatabaseService {
194
194
  * Validate query against write permissions
195
195
  */
196
196
  validateQuery(query) {
197
- validateQuery(query, this.config.allowWrite ?? false);
197
+ validateQuery(query, this.config);
198
198
  }
199
199
  /**
200
200
  * Get the underlying adapter
@@ -1 +1 @@
1
- {"version":3,"file":"database-service.js","sourceRoot":"","sources":["../../src/core/database-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database-service.js","sourceRoot":"","sources":["../../src/core/database-service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/http/routes/connection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAQ/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,EACxB,iBAAiB,EAAE,iBAAiB,GACnC,OAAO,CAAC,IAAI,CAAC,CA+Gf"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/http/routes/connection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAQ/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAErE,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,EACxB,iBAAiB,EAAE,iBAAiB,GACnC,OAAO,CAAC,IAAI,CAAC,CAiHf"}
@@ -22,6 +22,8 @@ export async function setupConnectionRoutes(fastify, connectionManager) {
22
22
  filePath: { type: 'string' },
23
23
  authSource: { type: 'string' },
24
24
  allowWrite: { type: 'boolean', default: false },
25
+ permissionMode: { type: 'string', enum: ['safe', 'readwrite', 'full', 'custom'] },
26
+ permissions: { type: 'array', items: { type: 'string', enum: ['read', 'insert', 'update', 'delete', 'ddl'] } },
25
27
  oracleClientPath: { type: 'string' },
26
28
  },
27
29
  },
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/http/routes/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/http/routes/connection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-sse.d.ts","sourceRoot":"","sources":["../../../src/http/routes/mcp-sse.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AA4E7E;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAiQ/E"}
1
+ {"version":3,"file":"mcp-sse.d.ts","sourceRoot":"","sources":["../../../src/http/routes/mcp-sse.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAoF7E;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAoQ/E"}
@@ -32,6 +32,11 @@ function parseDbConfigFromQuery(query) {
32
32
  const type = query.type;
33
33
  if (!type || !isValidDbType(type))
34
34
  return null;
35
+ // 解析 permissions 数组
36
+ const permissionsStr = query.permissions;
37
+ const permissions = permissionsStr
38
+ ? permissionsStr.split(',').map(p => p.trim())
39
+ : undefined;
35
40
  return {
36
41
  type,
37
42
  host: query.host,
@@ -41,6 +46,8 @@ function parseDbConfigFromQuery(query) {
41
46
  database: query.database,
42
47
  filePath: query.filePath,
43
48
  allowWrite: query.allowWrite === 'true',
49
+ permissionMode: query.permissionMode,
50
+ permissions,
44
51
  oracleClientPath: query.oracleClientPath,
45
52
  };
46
53
  }
@@ -200,6 +207,7 @@ export async function setupMcpSseRoutes(fastify) {
200
207
  });
201
208
  }
202
209
  // 构建数据库配置
210
+ const permissionsHeader = headers['x-db-permissions'];
203
211
  const config = {
204
212
  type: dbType,
205
213
  host: headers['x-db-host'],
@@ -209,6 +217,8 @@ export async function setupMcpSseRoutes(fastify) {
209
217
  database: headers['x-db-database'],
210
218
  filePath: headers['x-db-filepath'],
211
219
  allowWrite: headers['x-db-allow-write'] === 'true',
220
+ permissionMode: headers['x-db-permission-mode'],
221
+ permissions: permissionsHeader ? permissionsHeader.split(',').map(p => p.trim()) : undefined,
212
222
  oracleClientPath: headers['x-db-oracle-client-path'],
213
223
  };
214
224
  // 创建 MCP 服务器
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-sse.js","sourceRoot":"","sources":["../../../src/http/routes/mcp-sse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-sse.js","sourceRoot":"","sources":["../../../src/http/routes/mcp-sse.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-index.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-index.ts"],"names":[],"mappings":";AAEA;;GAEG;AAOH;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAqFpD"}
1
+ {"version":3,"file":"mcp-index.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-index.ts"],"names":[],"mappings":";AAEA;;GAEG;AAQH;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAkGpD"}
@@ -5,6 +5,7 @@
5
5
  import { Command } from 'commander';
6
6
  import { DatabaseMCPServer } from './mcp-server.js';
7
7
  import { createAdapter, normalizeDbType } from '../utils/adapter-factory.js';
8
+ import { resolvePermissions, formatPermissions } from '../utils/safety.js';
8
9
  /**
9
10
  * Start MCP server
10
11
  */
@@ -23,11 +24,17 @@ export async function startMcpServer() {
23
24
  .option('--file <file>', 'SQLite 数据库文件路径')
24
25
  .option('--auth-source <authSource>', 'MongoDB 认证数据库(默认为 admin)')
25
26
  .option('--oracle-client-path <path>', 'Oracle Instant Client 路径(启用 Thick 模式以支持 11g)')
26
- .option('--danger-allow-write', '启用写入模式(危险!默认为只读模式)', false)
27
+ .option('--danger-allow-write', '启用完全写入模式(危险!等价于 --permission-mode=full)', false)
28
+ .option('--permission-mode <mode>', '权限模式: safe(只读) | readwrite(读写不删) | full(完全控制)', 'safe')
29
+ .option('--permissions <list>', '自定义权限列表,逗号分隔: read,insert,update,delete,ddl')
27
30
  .action(async (options) => {
28
31
  try {
29
32
  // Normalize database type
30
33
  const dbType = normalizeDbType(options.type);
34
+ // Parse permissions from command line
35
+ const parsedPermissions = options.permissions
36
+ ? options.permissions.split(',').map((p) => p.trim())
37
+ : undefined;
31
38
  // Build configuration
32
39
  const config = {
33
40
  type: dbType,
@@ -38,6 +45,8 @@ export async function startMcpServer() {
38
45
  database: options.database,
39
46
  filePath: options.file,
40
47
  allowWrite: options.dangerAllowWrite,
48
+ permissionMode: options.dangerAllowWrite ? 'full' : options.permissionMode,
49
+ permissions: parsedPermissions,
41
50
  };
42
51
  // Add MongoDB-specific config
43
52
  if (dbType === 'mongodb' && options.authSource) {
@@ -47,6 +56,9 @@ export async function startMcpServer() {
47
56
  if (dbType === 'oracle' && options.oracleClientPath) {
48
57
  config.oracleClientPath = options.oracleClientPath;
49
58
  }
59
+ // Resolve and display permissions
60
+ const permissions = resolvePermissions(config);
61
+ const isSafeMode = permissions.length === 1 && permissions[0] === 'read';
50
62
  console.error('🔧 配置信息:');
51
63
  console.error(` 数据库类型: ${config.type}`);
52
64
  if (config.type === 'sqlite') {
@@ -56,7 +68,7 @@ export async function startMcpServer() {
56
68
  console.error(` 主机地址: ${config.host}:${config.port}`);
57
69
  console.error(` 数据库名: ${config.database || '(默认)'}`);
58
70
  }
59
- console.error(` 安全模式: ${config.allowWrite ? ' 写入已启用' : ' 只读模式'}`);
71
+ console.error(` 权限模式: ${isSafeMode ? ' 只读模式' : '⚠️ ' + formatPermissions(permissions)}`);
60
72
  console.error('');
61
73
  // Create server
62
74
  const server = new DatabaseMCPServer(config);
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-index.js","sourceRoot":"","sources":["../../src/mcp/mcp-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-index.js","sourceRoot":"","sources":["../../src/mcp/mcp-index.ts"],"names":[],"mappings":"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"}
@@ -142,6 +142,14 @@ export interface RelationshipInfo {
142
142
  /** 推断置信度 (0-1),仅当 source='inferred' 时有效 */
143
143
  confidence?: number;
144
144
  }
145
+ /**
146
+ * 权限类型
147
+ */
148
+ export type PermissionType = 'read' | 'insert' | 'update' | 'delete' | 'ddl';
149
+ /**
150
+ * 权限模式
151
+ */
152
+ export type PermissionMode = 'safe' | 'readwrite' | 'full' | 'custom';
145
153
  /**
146
154
  * 数据库连接配置
147
155
  */
@@ -154,8 +162,12 @@ export interface DbConfig {
154
162
  database?: string;
155
163
  /** SQLite 数据库文件路径 */
156
164
  filePath?: string;
157
- /** 是否允许写操作(默认 false,只读模式) */
165
+ /** 是否允许写操作(默认 false,只读模式)- 向后兼容,推荐使用 permissionMode */
158
166
  allowWrite?: boolean;
167
+ /** 权限模式:safe=只读, readwrite=读写不删, full=完全控制, custom=自定义 */
168
+ permissionMode?: PermissionMode;
169
+ /** 自定义权限列表,当 permissionMode='custom' 或直接指定时生效 */
170
+ permissions?: PermissionType[];
159
171
  /** Oracle Instant Client 路径(启用 Thick 模式以支持 11g) */
160
172
  oracleClientPath?: string;
161
173
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/types/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/types/adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5B;;;;;OAKG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEtE;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAEjC;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,eAAe;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,sCAAsC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,YAAY;IACZ,YAAY,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IACpN,YAAY;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY;IACZ,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS;IACT,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU;IACV,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,WAAW;IACX,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW;IACX,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,WAAW;IACX,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,WAAW;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS;IACT,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU;IACV,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,UAAU;IACV,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa;IACb,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,YAAY;IACZ,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY;IACZ,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW;IACX,IAAI,EAAE,YAAY,GAAG,aAAa,GAAG,aAAa,CAAC;IACnD,aAAa;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iDAAiD;IACjD,MAAM,CAAC,EAAE,aAAa,GAAG,UAAU,CAAC;IACpC,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;AAE7E;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,IAAI,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC5M,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,0DAA0D;IAC1D,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,iDAAiD;IACjD,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS;IACT,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY;IACZ,MAAM,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACnC,YAAY;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,aAAa;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,iBAAiB;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,WAAW;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,uBAAuB;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B"}
@@ -2,6 +2,11 @@
2
2
  * 安全检查工具
3
3
  * 用于防止误操作删库等危险行为
4
4
  */
5
+ import type { DbConfig, PermissionType } from '../types/adapter.js';
6
+ /**
7
+ * 解析配置得到最终权限列表
8
+ */
9
+ export declare function resolvePermissions(config: DbConfig): PermissionType[];
5
10
  /**
6
11
  * 检查 SQL 语句是否包含写操作
7
12
  * @param query - 待检查的 SQL 语句
@@ -11,14 +16,18 @@ export declare function isWriteOperation(query: string): boolean;
11
16
  /**
12
17
  * 验证查询是否允许执行
13
18
  * @param query - 待执行的查询
14
- * @param allowWrite - 是否允许写操作
19
+ * @param configOrAllowWrite - DbConfig 对象或 allowWrite 布尔值(向后兼容)
15
20
  * @throws 如果查询被拒绝,抛出带有中文提示的错误
16
21
  */
17
- export declare function validateQuery(query: string, allowWrite: boolean): void;
22
+ export declare function validateQuery(query: string, configOrAllowWrite: DbConfig | boolean): void;
18
23
  /**
19
24
  * 获取查询中的危险关键字(用于日志记录)
20
25
  * @param query - SQL 查询语句
21
26
  * @returns 找到的危险关键字数组
22
27
  */
23
28
  export declare function getDangerousKeywords(query: string): string[];
29
+ /**
30
+ * 格式化权限列表用于显示
31
+ */
32
+ export declare function formatPermissions(permissions: PermissionType[]): string;
24
33
  //# sourceMappingURL=safety.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/utils/safety.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAQvD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAStE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAK5D"}
1
+ {"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/utils/safety.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAqBpE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,EAAE,CAmBrE;AAUD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAUvD;AAiBD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,GAAG,OAAO,GAAG,IAAI,CAwBzF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAI5D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,MAAM,CASvE"}
@@ -3,20 +3,49 @@
3
3
  * 用于防止误操作删库等危险行为
4
4
  */
5
5
  /**
6
- * 危险的 SQL 关键字列表
7
- * 这些操作会修改或删除数据
8
- */
9
- const DANGEROUS_KEYWORDS = [
10
- 'DELETE',
11
- 'DROP',
12
- 'TRUNCATE',
13
- 'UPDATE',
14
- 'INSERT',
15
- 'ALTER',
16
- 'CREATE',
17
- 'RENAME',
18
- 'REPLACE',
19
- ];
6
+ * 操作类型到 SQL 关键字的映射
7
+ */
8
+ const OPERATION_KEYWORDS = {
9
+ insert: ['INSERT', 'REPLACE'],
10
+ update: ['UPDATE'],
11
+ delete: ['DELETE', 'TRUNCATE'],
12
+ ddl: ['CREATE', 'ALTER', 'DROP', 'RENAME'],
13
+ };
14
+ /**
15
+ * 预设权限模式
16
+ */
17
+ const PERMISSION_PRESETS = {
18
+ safe: ['read'],
19
+ readwrite: ['read', 'insert', 'update'],
20
+ full: ['read', 'insert', 'update', 'delete', 'ddl'],
21
+ };
22
+ /**
23
+ * 解析配置得到最终权限列表
24
+ */
25
+ export function resolvePermissions(config) {
26
+ // 向后兼容:allowWrite=true 且未设置新参数时,等价于 full
27
+ if (config.allowWrite === true && !config.permissionMode && !config.permissions) {
28
+ return [...PERMISSION_PRESETS.full];
29
+ }
30
+ // 直接指定 permissions 数组(优先级最高)
31
+ if (config.permissions?.length) {
32
+ const perms = new Set(['read', ...config.permissions]);
33
+ return Array.from(perms);
34
+ }
35
+ // 使用预设模式
36
+ if (config.permissionMode && config.permissionMode !== 'custom') {
37
+ return [...PERMISSION_PRESETS[config.permissionMode]];
38
+ }
39
+ // 默认安全模式
40
+ return [...PERMISSION_PRESETS.safe];
41
+ }
42
+ /**
43
+ * 检查 SQL 语句是否以指定关键字开头
44
+ */
45
+ function startsWithKeyword(query, keyword) {
46
+ const pattern = new RegExp(`^(\\s|--.*|/\\*.*?\\*/)*${keyword}\\b`, 'i');
47
+ return pattern.test(query);
48
+ }
20
49
  /**
21
50
  * 检查 SQL 语句是否包含写操作
22
51
  * @param query - 待检查的 SQL 语句
@@ -24,24 +53,56 @@ const DANGEROUS_KEYWORDS = [
24
53
  */
25
54
  export function isWriteOperation(query) {
26
55
  const upperQuery = query.trim().toUpperCase();
27
- return DANGEROUS_KEYWORDS.some(keyword => {
28
- // 检查是否以该关键字开头(忽略前导空格和注释)
29
- const pattern = new RegExp(`^(\\s|--.*|/\\*.*?\\*/)*${keyword}\\b`, 'i');
30
- return pattern.test(upperQuery);
31
- });
56
+ for (const keywords of Object.values(OPERATION_KEYWORDS)) {
57
+ for (const keyword of keywords) {
58
+ if (startsWithKeyword(upperQuery, keyword)) {
59
+ return true;
60
+ }
61
+ }
62
+ }
63
+ return false;
64
+ }
65
+ /**
66
+ * 检测查询的操作类型
67
+ */
68
+ function detectOperationType(query) {
69
+ const upperQuery = query.trim().toUpperCase();
70
+ for (const [opType, keywords] of Object.entries(OPERATION_KEYWORDS)) {
71
+ for (const keyword of keywords) {
72
+ if (startsWithKeyword(upperQuery, keyword)) {
73
+ return { type: opType, keyword };
74
+ }
75
+ }
76
+ }
77
+ return null;
32
78
  }
33
79
  /**
34
80
  * 验证查询是否允许执行
35
81
  * @param query - 待执行的查询
36
- * @param allowWrite - 是否允许写操作
82
+ * @param configOrAllowWrite - DbConfig 对象或 allowWrite 布尔值(向后兼容)
37
83
  * @throws 如果查询被拒绝,抛出带有中文提示的错误
38
84
  */
39
- export function validateQuery(query, allowWrite) {
40
- if (!allowWrite && isWriteOperation(query)) {
41
- throw new Error('❌ 操作被拒绝:当前处于只读安全模式。\n' +
42
- '检测到危险操作(DELETE/UPDATE/DROP/TRUNCATE 等)。\n' +
43
- '如需执行写入操作,请在启动时添加 --danger-allow-write 参数。\n' +
44
- '⚠️ 警告:启用写入模式后,AI 可以修改你的数据库,请谨慎使用!');
85
+ export function validateQuery(query, configOrAllowWrite) {
86
+ // 向后兼容:支持旧的 boolean 参数
87
+ let permissions;
88
+ if (typeof configOrAllowWrite === 'boolean') {
89
+ permissions = configOrAllowWrite ? [...PERMISSION_PRESETS.full] : [...PERMISSION_PRESETS.safe];
90
+ }
91
+ else {
92
+ permissions = resolvePermissions(configOrAllowWrite);
93
+ }
94
+ const detected = detectOperationType(query);
95
+ if (detected && !permissions.includes(detected.type)) {
96
+ const permissionLabels = {
97
+ insert: '插入(insert)',
98
+ update: '更新(update)',
99
+ delete: '删除(delete)',
100
+ ddl: 'DDL(ddl)',
101
+ };
102
+ throw new Error(`❌ 操作被拒绝:当前权限不允许 ${detected.keyword} 操作。\n` +
103
+ `需要的权限:${permissionLabels[detected.type]}\n` +
104
+ `当前权限:${permissions.join(', ')}\n` +
105
+ `如需更多权限,请使用 --permission-mode 或 --permissions 参数。`);
45
106
  }
46
107
  }
47
108
  /**
@@ -51,6 +112,20 @@ export function validateQuery(query, allowWrite) {
51
112
  */
52
113
  export function getDangerousKeywords(query) {
53
114
  const upperQuery = query.trim().toUpperCase();
54
- return DANGEROUS_KEYWORDS.filter(keyword => upperQuery.includes(keyword));
115
+ const allKeywords = Object.values(OPERATION_KEYWORDS).flat();
116
+ return allKeywords.filter(keyword => upperQuery.includes(keyword));
117
+ }
118
+ /**
119
+ * 格式化权限列表用于显示
120
+ */
121
+ export function formatPermissions(permissions) {
122
+ const labels = {
123
+ read: '读取',
124
+ insert: '插入',
125
+ update: '更新',
126
+ delete: '删除',
127
+ ddl: 'DDL',
128
+ };
129
+ return permissions.map(p => `${labels[p]}(${p})`).join(', ');
55
130
  }
56
131
  //# sourceMappingURL=safety.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"safety.js","sourceRoot":"","sources":["../../src/utils/safety.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,kBAAkB,GAAG;IACzB,QAAQ;IACR,MAAM;IACN,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;CACD,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE9C,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QACvC,yBAAyB;QACzB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,2BAA2B,OAAO,KAAK,EAAE,GAAG,CAAC,CAAC;QACzE,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,UAAmB;IAC9D,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACb,uBAAuB;YACvB,2CAA2C;YAC3C,6CAA6C;YAC7C,oCAAoC,CACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAa;IAChD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,OAAO,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CACzC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC7B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"safety.js","sourceRoot":"","sources":["../../src/utils/safety.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "universal-db-mcp",
3
- "version": "2.9.0",
3
+ "version": "2.10.0",
4
4
  "description": "MCP 数据库万能连接器 - 让 Claude Desktop 直接连接你的数据库",
5
5
  "main": "dist/index.js",
6
6
  "bin": {