universal-db-mcp 0.13.0 → 0.14.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/CONTRIBUTING.md +1 -0
- package/EXAMPLES.md +210 -0
- package/README.md +33 -4
- package/dist/adapters/highgo.d.ts +42 -0
- package/dist/adapters/highgo.d.ts.map +1 -0
- package/dist/adapters/highgo.js +207 -0
- package/dist/adapters/highgo.js.map +1 -0
- package/dist/index.js +13 -3
- package/dist/index.js.map +1 -1
- package/dist/types/adapter.d.ts +2 -2
- package/dist/types/adapter.d.ts.map +1 -1
- package/package.json +3 -1
package/CONTRIBUTING.md
CHANGED
|
@@ -57,6 +57,7 @@
|
|
|
57
57
|
- **ClickHouse** (`src/adapters/clickhouse.ts`) - 列式 OLAP 数据库,使用 HTTP 协议
|
|
58
58
|
- **PolarDB** (`src/adapters/polardb.ts`) - 云原生数据库,兼容 MySQL
|
|
59
59
|
- **Vastbase** (`src/adapters/vastbase.ts`) - 国产数据库,兼容 PostgreSQL
|
|
60
|
+
- **HighGo** (`src/adapters/highgo.ts`) - 国产数据库,兼容 PostgreSQL
|
|
60
61
|
|
|
61
62
|
### 示例结构
|
|
62
63
|
|
package/EXAMPLES.md
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
- [ClickHouse 使用示例](#clickhouse-使用示例)
|
|
20
20
|
- [PolarDB 使用示例](#polardb-使用示例)
|
|
21
21
|
- [Vastbase 使用示例](#vastbase-使用示例)
|
|
22
|
+
- [HighGo 使用示例](#highgo-使用示例)
|
|
22
23
|
- [Claude Desktop 配置示例](#claude-desktop-配置示例)
|
|
23
24
|
- [常见使用场景](#常见使用场景)
|
|
24
25
|
|
|
@@ -2127,6 +2128,215 @@ Vastbase 作为国产数据库,有一些特色功能:
|
|
|
2127
2128
|
|
|
2128
2129
|
---
|
|
2129
2130
|
|
|
2131
|
+
## HighGo 使用示例
|
|
2132
|
+
|
|
2133
|
+
### 基础配置(只读模式)
|
|
2134
|
+
|
|
2135
|
+
```json
|
|
2136
|
+
{
|
|
2137
|
+
"mcpServers": {
|
|
2138
|
+
"highgo-db": {
|
|
2139
|
+
"command": "npx",
|
|
2140
|
+
"args": [
|
|
2141
|
+
"universal-db-mcp",
|
|
2142
|
+
"--type", "highgo",
|
|
2143
|
+
"--host", "localhost",
|
|
2144
|
+
"--port", "5866",
|
|
2145
|
+
"--user", "highgo",
|
|
2146
|
+
"--password", "your_password",
|
|
2147
|
+
"--database", "highgo"
|
|
2148
|
+
]
|
|
2149
|
+
}
|
|
2150
|
+
}
|
|
2151
|
+
}
|
|
2152
|
+
```
|
|
2153
|
+
|
|
2154
|
+
### 启用写入模式
|
|
2155
|
+
|
|
2156
|
+
```json
|
|
2157
|
+
{
|
|
2158
|
+
"mcpServers": {
|
|
2159
|
+
"highgo-write": {
|
|
2160
|
+
"command": "npx",
|
|
2161
|
+
"args": [
|
|
2162
|
+
"universal-db-mcp",
|
|
2163
|
+
"--type", "highgo",
|
|
2164
|
+
"--host", "localhost",
|
|
2165
|
+
"--port", "5866",
|
|
2166
|
+
"--user", "highgo",
|
|
2167
|
+
"--password", "your_password",
|
|
2168
|
+
"--database", "mydb",
|
|
2169
|
+
"--danger-allow-write"
|
|
2170
|
+
]
|
|
2171
|
+
}
|
|
2172
|
+
}
|
|
2173
|
+
}
|
|
2174
|
+
```
|
|
2175
|
+
|
|
2176
|
+
### 连接 HighGo 集群
|
|
2177
|
+
|
|
2178
|
+
```json
|
|
2179
|
+
{
|
|
2180
|
+
"mcpServers": {
|
|
2181
|
+
"highgo-cluster": {
|
|
2182
|
+
"command": "npx",
|
|
2183
|
+
"args": [
|
|
2184
|
+
"universal-db-mcp",
|
|
2185
|
+
"--type", "highgo",
|
|
2186
|
+
"--host", "highgo-cluster.example.com",
|
|
2187
|
+
"--port", "5866",
|
|
2188
|
+
"--user", "your_username",
|
|
2189
|
+
"--password", "your_password",
|
|
2190
|
+
"--database", "production"
|
|
2191
|
+
]
|
|
2192
|
+
}
|
|
2193
|
+
}
|
|
2194
|
+
}
|
|
2195
|
+
```
|
|
2196
|
+
|
|
2197
|
+
### 与 Claude 对话示例
|
|
2198
|
+
|
|
2199
|
+
**用户**: 查看数据库中有哪些表?
|
|
2200
|
+
|
|
2201
|
+
**Claude 会自动**:
|
|
2202
|
+
1. 调用 `get_schema` 工具
|
|
2203
|
+
2. 查询 `information_schema.tables`
|
|
2204
|
+
3. 返回表列表
|
|
2205
|
+
|
|
2206
|
+
**用户**: 查看 products 表的结构
|
|
2207
|
+
|
|
2208
|
+
**Claude 会自动**:
|
|
2209
|
+
1. 调用 `get_table_info` 工具
|
|
2210
|
+
2. 查询 `information_schema.columns`
|
|
2211
|
+
3. 返回列信息、主键、索引等详细信息
|
|
2212
|
+
|
|
2213
|
+
**用户**: 统计每个类别的商品数量
|
|
2214
|
+
|
|
2215
|
+
**Claude 会自动**:
|
|
2216
|
+
1. 理解需求
|
|
2217
|
+
2. 生成 SQL: `SELECT category, COUNT(*) as product_count FROM products GROUP BY category ORDER BY product_count DESC`
|
|
2218
|
+
3. 执行并返回结果
|
|
2219
|
+
|
|
2220
|
+
**用户**: 查找价格超过 1000 元的商品
|
|
2221
|
+
|
|
2222
|
+
**Claude 会自动**:
|
|
2223
|
+
1. 生成 SQL: `SELECT * FROM products WHERE price > 1000 ORDER BY price DESC`
|
|
2224
|
+
2. 执行并返回结果
|
|
2225
|
+
|
|
2226
|
+
### 注意事项
|
|
2227
|
+
|
|
2228
|
+
1. **默认端口**: 5866(HighGo 默认端口)
|
|
2229
|
+
2. **兼容性**: 兼容 PostgreSQL 协议和大部分 SQL 语法
|
|
2230
|
+
3. **驱动**: 使用 PostgreSQL 的 `pg` 驱动
|
|
2231
|
+
4. **国产数据库**: 瀚高公司开发,支持国产化替代
|
|
2232
|
+
5. **企业级特性**:
|
|
2233
|
+
- 支持高可用集群
|
|
2234
|
+
- 支持数据加密
|
|
2235
|
+
- 支持审计日志
|
|
2236
|
+
- 支持备份恢复
|
|
2237
|
+
|
|
2238
|
+
### 支持的版本
|
|
2239
|
+
|
|
2240
|
+
- ✅ HighGo DB 4.x
|
|
2241
|
+
- ✅ HighGo DB 5.x
|
|
2242
|
+
- ✅ HighGo DB 6.x
|
|
2243
|
+
- ✅ 其他兼容 PostgreSQL 的版本
|
|
2244
|
+
|
|
2245
|
+
### 常见使用场景
|
|
2246
|
+
|
|
2247
|
+
#### 1. 国产化替代
|
|
2248
|
+
|
|
2249
|
+
使用 HighGo 替代 PostgreSQL 或 Oracle:
|
|
2250
|
+
|
|
2251
|
+
```
|
|
2252
|
+
用户: 查询订单表中的所有数据
|
|
2253
|
+
|
|
2254
|
+
Claude 会:
|
|
2255
|
+
1. 查询订单表
|
|
2256
|
+
2. 返回结果
|
|
2257
|
+
3. 完全兼容 PostgreSQL 语法
|
|
2258
|
+
```
|
|
2259
|
+
|
|
2260
|
+
#### 2. 企业级应用
|
|
2261
|
+
|
|
2262
|
+
```
|
|
2263
|
+
用户: 查询销售数据,需要关联多个表
|
|
2264
|
+
|
|
2265
|
+
Claude 会:
|
|
2266
|
+
1. 生成复杂的 JOIN 查询
|
|
2267
|
+
2. 利用 HighGo 的查询优化
|
|
2268
|
+
3. 返回结果
|
|
2269
|
+
```
|
|
2270
|
+
|
|
2271
|
+
#### 3. 数据分析
|
|
2272
|
+
|
|
2273
|
+
```
|
|
2274
|
+
用户: 分析最近一季度的销售趋势
|
|
2275
|
+
|
|
2276
|
+
Claude 会:
|
|
2277
|
+
1. 生成聚合查询
|
|
2278
|
+
2. 按时间分组统计
|
|
2279
|
+
3. 生成趋势分析报告
|
|
2280
|
+
```
|
|
2281
|
+
|
|
2282
|
+
#### 4. 高可用场景
|
|
2283
|
+
|
|
2284
|
+
```
|
|
2285
|
+
用户: 连接 HighGo 集群进行查询
|
|
2286
|
+
|
|
2287
|
+
Claude 会:
|
|
2288
|
+
1. 连接到集群地址
|
|
2289
|
+
2. 自动负载均衡
|
|
2290
|
+
3. 保证高可用性
|
|
2291
|
+
```
|
|
2292
|
+
|
|
2293
|
+
### HighGo 特色功能
|
|
2294
|
+
|
|
2295
|
+
HighGo 作为国产数据库,有一些特色功能:
|
|
2296
|
+
|
|
2297
|
+
- **PostgreSQL 兼容**: 兼容 PostgreSQL 9.x/10.x/11.x 协议和语法
|
|
2298
|
+
- **高可用**: 支持主备切换和故障转移
|
|
2299
|
+
- **数据加密**: 支持透明数据加密(TDE)
|
|
2300
|
+
- **审计日志**: 完善的审计日志功能
|
|
2301
|
+
- **国产化**: 支持国产操作系统和芯片
|
|
2302
|
+
- **Oracle 兼容**: 部分版本支持 Oracle 兼容模式
|
|
2303
|
+
|
|
2304
|
+
**注意**: 这些特色功能可能需要特定的配置或 SQL 语法,Claude 会根据标准 PostgreSQL 语法生成查询。
|
|
2305
|
+
|
|
2306
|
+
### HighGo 最佳实践
|
|
2307
|
+
|
|
2308
|
+
1. **表设计**:
|
|
2309
|
+
- 使用合适的数据类型
|
|
2310
|
+
- 合理设计主键和索引
|
|
2311
|
+
- 使用分区表提升性能
|
|
2312
|
+
- 避免过度规范化
|
|
2313
|
+
|
|
2314
|
+
2. **查询优化**:
|
|
2315
|
+
- 使用 EXPLAIN 分析查询计划
|
|
2316
|
+
- 创建合适的索引
|
|
2317
|
+
- 避免 SELECT *
|
|
2318
|
+
- 使用 LIMIT 限制返回结果
|
|
2319
|
+
|
|
2320
|
+
3. **连接管理**:
|
|
2321
|
+
- 使用连接池
|
|
2322
|
+
- 合理设置连接数
|
|
2323
|
+
- 定期检查连接健康状态
|
|
2324
|
+
- 避免长时间持有连接
|
|
2325
|
+
|
|
2326
|
+
4. **监控维护**:
|
|
2327
|
+
- 监控数据库性能指标
|
|
2328
|
+
- 定期执行 VACUUM
|
|
2329
|
+
- 更新统计信息
|
|
2330
|
+
- 定期备份数据
|
|
2331
|
+
|
|
2332
|
+
5. **安全建议**:
|
|
2333
|
+
- 使用强密码
|
|
2334
|
+
- 限制网络访问
|
|
2335
|
+
- 启用 SSL 连接
|
|
2336
|
+
- 定期审计日志
|
|
2337
|
+
|
|
2338
|
+
---
|
|
2339
|
+
|
|
2130
2340
|
## Claude Desktop 配置示例
|
|
2131
2341
|
|
|
2132
2342
|
### 同时连接多个数据库
|
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
✅ **智能表结构理解** - 自动获取数据库 Schema,提供精准建议
|
|
21
21
|
|
|
22
|
-
✅ **多数据库支持** - MySQL、PostgreSQL、Redis、Oracle、达梦、SQL Server、MongoDB、SQLite、KingbaseES、GaussDB/OpenGauss、OceanBase、TiDB、ClickHouse、PolarDB、Vastbase 一键切换
|
|
22
|
+
✅ **多数据库支持** - MySQL、PostgreSQL、Redis、Oracle、达梦、SQL Server、MongoDB、SQLite、KingbaseES、GaussDB/OpenGauss、OceanBase、TiDB、ClickHouse、PolarDB、Vastbase、HighGo 一键切换
|
|
23
23
|
|
|
24
24
|
✅ **安全第一** - 默认只读模式,防止误操作删库
|
|
25
25
|
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
|
|
34
34
|
- Node.js >= 20
|
|
35
35
|
- Claude Desktop 应用
|
|
36
|
-
- 至少一个数据库实例(MySQL/PostgreSQL/Redis/Oracle/达梦/SQL Server/MongoDB/SQLite/KingbaseES/GaussDB/OceanBase/TiDB/ClickHouse/PolarDB/Vastbase)
|
|
36
|
+
- 至少一个数据库实例(MySQL/PostgreSQL/Redis/Oracle/达梦/SQL Server/MongoDB/SQLite/KingbaseES/GaussDB/OceanBase/TiDB/ClickHouse/PolarDB/Vastbase/HighGo)
|
|
37
37
|
|
|
38
38
|
### 安装
|
|
39
39
|
|
|
@@ -288,6 +288,33 @@ npx universal-db-mcp
|
|
|
288
288
|
- 默认端口为 5432
|
|
289
289
|
- 使用与 PostgreSQL 相同的驱动(pg)
|
|
290
290
|
|
|
291
|
+
#### HighGo 示例
|
|
292
|
+
|
|
293
|
+
```json
|
|
294
|
+
{
|
|
295
|
+
"mcpServers": {
|
|
296
|
+
"highgo-db": {
|
|
297
|
+
"command": "npx",
|
|
298
|
+
"args": [
|
|
299
|
+
"universal-db-mcp",
|
|
300
|
+
"--type", "highgo",
|
|
301
|
+
"--host", "localhost",
|
|
302
|
+
"--port", "5866",
|
|
303
|
+
"--user", "highgo",
|
|
304
|
+
"--password", "your_password",
|
|
305
|
+
"--database", "highgo"
|
|
306
|
+
]
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
**说明**:
|
|
313
|
+
- HighGo 是瀚高公司的国产数据库
|
|
314
|
+
- 基于 PostgreSQL 开发,兼容 PostgreSQL 协议
|
|
315
|
+
- 默认端口为 5866
|
|
316
|
+
- 使用与 PostgreSQL 相同的驱动(pg)
|
|
317
|
+
|
|
291
318
|
### 启动使用
|
|
292
319
|
|
|
293
320
|
1. 重启 Claude Desktop
|
|
@@ -336,6 +363,7 @@ Claude 会自动调用数据库工具完成查询!
|
|
|
336
363
|
| ClickHouse | `--type clickhouse` | 8123 | ✅ 已支持 | 高性能列式 OLAP 数据库 |
|
|
337
364
|
| PolarDB | `--type polardb` | 3306 | ✅ 已支持 | 阿里云云原生数据库,兼容 MySQL |
|
|
338
365
|
| Vastbase | `--type vastbase` | 5432 | ✅ 已支持 | 海量数据国产数据库,兼容 PostgreSQL |
|
|
366
|
+
| HighGo | `--type highgo` | 5866 | ✅ 已支持 | 瀚高国产数据库,兼容 PostgreSQL |
|
|
339
367
|
|
|
340
368
|
**注意**:
|
|
341
369
|
- 达梦数据库驱动 `dmdb` 会作为可选依赖自动安装。如果安装失败,请手动运行 `npm install -g dmdb`。
|
|
@@ -347,7 +375,7 @@ Claude 会自动调用数据库工具完成查询!
|
|
|
347
375
|
universal-db-mcp [选项]
|
|
348
376
|
|
|
349
377
|
选项:
|
|
350
|
-
--type <db> 数据库类型 (mysql|postgres|redis|oracle|dm|sqlserver|mssql|mongodb|sqlite|kingbase|gaussdb|opengauss|oceanbase|tidb|clickhouse|polardb|vastbase)
|
|
378
|
+
--type <db> 数据库类型 (mysql|postgres|redis|oracle|dm|sqlserver|mssql|mongodb|sqlite|kingbase|gaussdb|opengauss|oceanbase|tidb|clickhouse|polardb|vastbase|highgo)
|
|
351
379
|
--host <host> 数据库主机地址 (默认: localhost)
|
|
352
380
|
--port <port> 数据库端口
|
|
353
381
|
--user <user> 用户名
|
|
@@ -379,7 +407,8 @@ src/
|
|
|
379
407
|
│ ├── tidb.ts
|
|
380
408
|
│ ├── clickhouse.ts
|
|
381
409
|
│ ├── polardb.ts
|
|
382
|
-
│
|
|
410
|
+
│ ├── vastbase.ts
|
|
411
|
+
│ └── highgo.ts
|
|
383
412
|
├── types/ # TypeScript 类型定义
|
|
384
413
|
│ └── adapter.ts
|
|
385
414
|
├── utils/ # 工具函数
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HighGo 数据库适配器
|
|
3
|
+
* 使用 pg 驱动实现 DbAdapter 接口
|
|
4
|
+
* HighGo(瀚高)基于 PostgreSQL 开发,兼容 PostgreSQL 协议
|
|
5
|
+
*/
|
|
6
|
+
import type { DbAdapter, QueryResult, SchemaInfo } from '../types/adapter.js';
|
|
7
|
+
export declare class HighGoAdapter implements DbAdapter {
|
|
8
|
+
private client;
|
|
9
|
+
private config;
|
|
10
|
+
constructor(config: {
|
|
11
|
+
host: string;
|
|
12
|
+
port: number;
|
|
13
|
+
user?: string;
|
|
14
|
+
password?: string;
|
|
15
|
+
database?: string;
|
|
16
|
+
});
|
|
17
|
+
/**
|
|
18
|
+
* 连接到 HighGo 数据库
|
|
19
|
+
*/
|
|
20
|
+
connect(): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* 断开数据库连接
|
|
23
|
+
*/
|
|
24
|
+
disconnect(): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* 执行 SQL 查询
|
|
27
|
+
*/
|
|
28
|
+
executeQuery(query: string, params?: unknown[]): Promise<QueryResult>;
|
|
29
|
+
/**
|
|
30
|
+
* 获取数据库结构信息
|
|
31
|
+
*/
|
|
32
|
+
getSchema(): Promise<SchemaInfo>;
|
|
33
|
+
/**
|
|
34
|
+
* 获取单个表的详细信息
|
|
35
|
+
*/
|
|
36
|
+
private getTableInfo;
|
|
37
|
+
/**
|
|
38
|
+
* 检查是否为写操作
|
|
39
|
+
*/
|
|
40
|
+
isWriteOperation(query: string): boolean;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=highgo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"highgo.d.ts","sourceRoot":"","sources":["../../src/adapters/highgo.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EACV,SAAS,EACT,WAAW,EACX,UAAU,EAIX,MAAM,qBAAqB,CAAC;AAK7B,qBAAa,aAAc,YAAW,SAAS;IAC7C,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,MAAM,CAMZ;gBAEU,MAAM,EAAE;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAID;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOjC;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;IA8B3E;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC;IA0CtC;;OAEG;YACW,YAAY;IAsG1B;;OAEG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAGzC"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* HighGo 数据库适配器
|
|
3
|
+
* 使用 pg 驱动实现 DbAdapter 接口
|
|
4
|
+
* HighGo(瀚高)基于 PostgreSQL 开发,兼容 PostgreSQL 协议
|
|
5
|
+
*/
|
|
6
|
+
import pg from 'pg';
|
|
7
|
+
import { isWriteOperation as checkWriteOperation } from '../utils/safety.js';
|
|
8
|
+
const { Client } = pg;
|
|
9
|
+
export class HighGoAdapter {
|
|
10
|
+
client = null;
|
|
11
|
+
config;
|
|
12
|
+
constructor(config) {
|
|
13
|
+
this.config = config;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* 连接到 HighGo 数据库
|
|
17
|
+
*/
|
|
18
|
+
async connect() {
|
|
19
|
+
try {
|
|
20
|
+
this.client = new Client({
|
|
21
|
+
host: this.config.host,
|
|
22
|
+
port: this.config.port,
|
|
23
|
+
user: this.config.user,
|
|
24
|
+
password: this.config.password,
|
|
25
|
+
database: this.config.database,
|
|
26
|
+
});
|
|
27
|
+
await this.client.connect();
|
|
28
|
+
// 测试连接
|
|
29
|
+
await this.client.query('SELECT 1');
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
throw new Error(`HighGo 连接失败: ${error instanceof Error ? error.message : String(error)}`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* 断开数据库连接
|
|
37
|
+
*/
|
|
38
|
+
async disconnect() {
|
|
39
|
+
if (this.client) {
|
|
40
|
+
await this.client.end();
|
|
41
|
+
this.client = null;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* 执行 SQL 查询
|
|
46
|
+
*/
|
|
47
|
+
async executeQuery(query, params) {
|
|
48
|
+
if (!this.client) {
|
|
49
|
+
throw new Error('数据库未连接');
|
|
50
|
+
}
|
|
51
|
+
const startTime = Date.now();
|
|
52
|
+
try {
|
|
53
|
+
const result = await this.client.query(query, params);
|
|
54
|
+
const executionTime = Date.now() - startTime;
|
|
55
|
+
return {
|
|
56
|
+
rows: result.rows,
|
|
57
|
+
affectedRows: result.rowCount || 0,
|
|
58
|
+
executionTime,
|
|
59
|
+
metadata: {
|
|
60
|
+
command: result.command,
|
|
61
|
+
fields: result.fields?.map(f => ({
|
|
62
|
+
name: f.name,
|
|
63
|
+
dataTypeID: f.dataTypeID,
|
|
64
|
+
})),
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
throw new Error(`查询执行失败: ${error instanceof Error ? error.message : String(error)}`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* 获取数据库结构信息
|
|
74
|
+
*/
|
|
75
|
+
async getSchema() {
|
|
76
|
+
if (!this.client) {
|
|
77
|
+
throw new Error('数据库未连接');
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
// 获取数据库版本
|
|
81
|
+
const versionResult = await this.client.query('SELECT version() as version');
|
|
82
|
+
const version = versionResult.rows[0]?.version || 'unknown';
|
|
83
|
+
// 获取当前数据库名
|
|
84
|
+
const databaseName = this.config.database || 'highgo';
|
|
85
|
+
// 获取所有表(从 public schema)
|
|
86
|
+
const tablesResult = await this.client.query(`
|
|
87
|
+
SELECT table_name
|
|
88
|
+
FROM information_schema.tables
|
|
89
|
+
WHERE table_schema = 'public'
|
|
90
|
+
AND table_type = 'BASE TABLE'
|
|
91
|
+
ORDER BY table_name
|
|
92
|
+
`);
|
|
93
|
+
const tableInfos = [];
|
|
94
|
+
for (const row of tablesResult.rows) {
|
|
95
|
+
const tableInfo = await this.getTableInfo(row.table_name);
|
|
96
|
+
tableInfos.push(tableInfo);
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
databaseType: 'highgo',
|
|
100
|
+
databaseName,
|
|
101
|
+
tables: tableInfos,
|
|
102
|
+
version,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
throw new Error(`获取数据库结构失败: ${error instanceof Error ? error.message : String(error)}`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* 获取单个表的详细信息
|
|
111
|
+
*/
|
|
112
|
+
async getTableInfo(tableName) {
|
|
113
|
+
if (!this.client) {
|
|
114
|
+
throw new Error('数据库未连接');
|
|
115
|
+
}
|
|
116
|
+
// 获取列信息
|
|
117
|
+
const columnsResult = await this.client.query(`
|
|
118
|
+
SELECT
|
|
119
|
+
column_name,
|
|
120
|
+
data_type,
|
|
121
|
+
is_nullable,
|
|
122
|
+
column_default,
|
|
123
|
+
character_maximum_length,
|
|
124
|
+
numeric_precision,
|
|
125
|
+
numeric_scale
|
|
126
|
+
FROM information_schema.columns
|
|
127
|
+
WHERE table_schema = 'public'
|
|
128
|
+
AND table_name = $1
|
|
129
|
+
ORDER BY ordinal_position
|
|
130
|
+
`, [tableName]);
|
|
131
|
+
const columnInfos = columnsResult.rows.map((col) => {
|
|
132
|
+
let dataType = col.data_type;
|
|
133
|
+
if (col.character_maximum_length) {
|
|
134
|
+
dataType += `(${col.character_maximum_length})`;
|
|
135
|
+
}
|
|
136
|
+
else if (col.numeric_precision) {
|
|
137
|
+
dataType += `(${col.numeric_precision}${col.numeric_scale ? `,${col.numeric_scale}` : ''})`;
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
name: col.column_name,
|
|
141
|
+
type: dataType,
|
|
142
|
+
nullable: col.is_nullable === 'YES',
|
|
143
|
+
defaultValue: col.column_default || undefined,
|
|
144
|
+
};
|
|
145
|
+
});
|
|
146
|
+
// 获取主键信息
|
|
147
|
+
const primaryKeyResult = await this.client.query(`
|
|
148
|
+
SELECT a.attname
|
|
149
|
+
FROM pg_index i
|
|
150
|
+
JOIN pg_attribute a ON a.attrelid = i.indrelid AND a.attnum = ANY(i.indkey)
|
|
151
|
+
WHERE i.indrelid = $1::regclass
|
|
152
|
+
AND i.indisprimary
|
|
153
|
+
`, [tableName]);
|
|
154
|
+
const primaryKeys = primaryKeyResult.rows.map(row => row.attname);
|
|
155
|
+
// 获取索引信息
|
|
156
|
+
const indexesResult = await this.client.query(`
|
|
157
|
+
SELECT
|
|
158
|
+
i.relname as index_name,
|
|
159
|
+
a.attname as column_name,
|
|
160
|
+
ix.indisunique as is_unique
|
|
161
|
+
FROM pg_class t
|
|
162
|
+
JOIN pg_index ix ON t.oid = ix.indrelid
|
|
163
|
+
JOIN pg_class i ON i.oid = ix.indexrelid
|
|
164
|
+
JOIN pg_attribute a ON a.attrelid = t.oid AND a.attnum = ANY(ix.indkey)
|
|
165
|
+
WHERE t.relname = $1
|
|
166
|
+
AND t.relkind = 'r'
|
|
167
|
+
AND NOT ix.indisprimary
|
|
168
|
+
ORDER BY i.relname, a.attnum
|
|
169
|
+
`, [tableName]);
|
|
170
|
+
const indexMap = new Map();
|
|
171
|
+
for (const row of indexesResult.rows) {
|
|
172
|
+
if (!indexMap.has(row.index_name)) {
|
|
173
|
+
indexMap.set(row.index_name, {
|
|
174
|
+
columns: [],
|
|
175
|
+
unique: row.is_unique,
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
indexMap.get(row.index_name).columns.push(row.column_name);
|
|
179
|
+
}
|
|
180
|
+
const indexInfos = Array.from(indexMap.entries()).map(([name, info]) => ({
|
|
181
|
+
name,
|
|
182
|
+
columns: info.columns,
|
|
183
|
+
unique: info.unique,
|
|
184
|
+
}));
|
|
185
|
+
// 获取表行数估算
|
|
186
|
+
const countResult = await this.client.query(`
|
|
187
|
+
SELECT reltuples::bigint as estimate
|
|
188
|
+
FROM pg_class
|
|
189
|
+
WHERE relname = $1
|
|
190
|
+
`, [tableName]);
|
|
191
|
+
const estimatedRows = parseInt(countResult.rows[0]?.estimate || '0', 10);
|
|
192
|
+
return {
|
|
193
|
+
name: tableName,
|
|
194
|
+
columns: columnInfos,
|
|
195
|
+
primaryKeys,
|
|
196
|
+
indexes: indexInfos,
|
|
197
|
+
estimatedRows,
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* 检查是否为写操作
|
|
202
|
+
*/
|
|
203
|
+
isWriteOperation(query) {
|
|
204
|
+
return checkWriteOperation(query);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=highgo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"highgo.js","sourceRoot":"","sources":["../../src/adapters/highgo.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -19,12 +19,13 @@ import { TiDBAdapter } from './adapters/tidb.js';
|
|
|
19
19
|
import { ClickHouseAdapter } from './adapters/clickhouse.js';
|
|
20
20
|
import { PolarDBAdapter } from './adapters/polardb.js';
|
|
21
21
|
import { VastbaseAdapter } from './adapters/vastbase.js';
|
|
22
|
+
import { HighGoAdapter } from './adapters/highgo.js';
|
|
22
23
|
const program = new Command();
|
|
23
24
|
program
|
|
24
25
|
.name('universal-db-mcp')
|
|
25
26
|
.description('MCP 数据库万能连接器 - 让 Claude Desktop 直接连接你的数据库')
|
|
26
27
|
.version('0.1.0')
|
|
27
|
-
.requiredOption('--type <type>', '数据库类型 (mysql|postgres|redis|oracle|dm|sqlserver|mssql|mongodb|sqlite|kingbase|gaussdb|opengauss|oceanbase|tidb|clickhouse|polardb|vastbase)')
|
|
28
|
+
.requiredOption('--type <type>', '数据库类型 (mysql|postgres|redis|oracle|dm|sqlserver|mssql|mongodb|sqlite|kingbase|gaussdb|opengauss|oceanbase|tidb|clickhouse|polardb|vastbase|highgo)')
|
|
28
29
|
.option('--host <host>', '数据库主机地址')
|
|
29
30
|
.option('--port <port>', '数据库端口', parseInt)
|
|
30
31
|
.option('--user <user>', '用户名')
|
|
@@ -36,8 +37,8 @@ program
|
|
|
36
37
|
.action(async (options) => {
|
|
37
38
|
try {
|
|
38
39
|
// 验证数据库类型
|
|
39
|
-
if (!['mysql', 'postgres', 'redis', 'oracle', 'dm', 'sqlserver', 'mssql', 'mongodb', 'sqlite', 'kingbase', 'gaussdb', 'opengauss', 'oceanbase', 'tidb', 'clickhouse', 'polardb', 'vastbase'].includes(options.type)) {
|
|
40
|
-
console.error('❌ 错误: 不支持的数据库类型。支持的类型: mysql, postgres, redis, oracle, dm, sqlserver (或 mssql), mongodb, sqlite, kingbase, gaussdb (或 opengauss), oceanbase, tidb, clickhouse, polardb, vastbase');
|
|
40
|
+
if (!['mysql', 'postgres', 'redis', 'oracle', 'dm', 'sqlserver', 'mssql', 'mongodb', 'sqlite', 'kingbase', 'gaussdb', 'opengauss', 'oceanbase', 'tidb', 'clickhouse', 'polardb', 'vastbase', 'highgo'].includes(options.type)) {
|
|
41
|
+
console.error('❌ 错误: 不支持的数据库类型。支持的类型: mysql, postgres, redis, oracle, dm, sqlserver (或 mssql), mongodb, sqlite, kingbase, gaussdb (或 opengauss), oceanbase, tidb, clickhouse, polardb, vastbase, highgo');
|
|
41
42
|
process.exit(1);
|
|
42
43
|
}
|
|
43
44
|
// 规范化 SQL Server 和 GaussDB 别名
|
|
@@ -221,6 +222,15 @@ program
|
|
|
221
222
|
database: config.database,
|
|
222
223
|
});
|
|
223
224
|
break;
|
|
225
|
+
case 'highgo':
|
|
226
|
+
adapter = new HighGoAdapter({
|
|
227
|
+
host: config.host,
|
|
228
|
+
port: config.port,
|
|
229
|
+
user: config.user,
|
|
230
|
+
password: config.password,
|
|
231
|
+
database: config.database,
|
|
232
|
+
});
|
|
233
|
+
break;
|
|
224
234
|
default:
|
|
225
235
|
throw new Error(`不支持的数据库类型: ${config.type}`);
|
|
226
236
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/adapter.d.ts
CHANGED
|
@@ -49,7 +49,7 @@ export interface QueryResult {
|
|
|
49
49
|
*/
|
|
50
50
|
export interface SchemaInfo {
|
|
51
51
|
/** 数据库类型 */
|
|
52
|
-
databaseType: 'mysql' | 'postgres' | 'redis' | 'oracle' | 'dm' | 'sqlserver' | 'mongodb' | 'sqlite' | 'kingbase' | 'gaussdb' | 'oceanbase' | 'tidb' | 'clickhouse' | 'polardb' | 'vastbase';
|
|
52
|
+
databaseType: 'mysql' | 'postgres' | 'redis' | 'oracle' | 'dm' | 'sqlserver' | 'mongodb' | 'sqlite' | 'kingbase' | 'gaussdb' | 'oceanbase' | 'tidb' | 'clickhouse' | 'polardb' | 'vastbase' | 'highgo';
|
|
53
53
|
/** 数据库名称 */
|
|
54
54
|
databaseName: string;
|
|
55
55
|
/** 表信息列表 */
|
|
@@ -102,7 +102,7 @@ export interface IndexInfo {
|
|
|
102
102
|
* 数据库连接配置
|
|
103
103
|
*/
|
|
104
104
|
export interface DbConfig {
|
|
105
|
-
type: 'mysql' | 'postgres' | 'redis' | 'oracle' | 'dm' | 'sqlserver' | 'mongodb' | 'sqlite' | 'kingbase' | 'gaussdb' | 'oceanbase' | 'tidb' | 'clickhouse' | 'polardb' | 'vastbase';
|
|
105
|
+
type: 'mysql' | 'postgres' | 'redis' | 'oracle' | 'dm' | 'sqlserver' | 'mongodb' | 'sqlite' | 'kingbase' | 'gaussdb' | 'oceanbase' | 'tidb' | 'clickhouse' | 'polardb' | 'vastbase' | 'highgo';
|
|
106
106
|
host?: string;
|
|
107
107
|
port?: number;
|
|
108
108
|
user?: string;
|
|
@@ -1 +1 @@
|
|
|
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,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/types/adapter.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": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "MCP 数据库万能连接器 - 让 Claude Desktop 直接连接你的数据库",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -43,6 +43,8 @@
|
|
|
43
43
|
"阿里云",
|
|
44
44
|
"vastbase",
|
|
45
45
|
"海量数据",
|
|
46
|
+
"highgo",
|
|
47
|
+
"瀚高",
|
|
46
48
|
"列式数据库",
|
|
47
49
|
"蚂蚁金服",
|
|
48
50
|
"华为高斯",
|