fix(mcp): route GaussDB through desktop bridge

This commit is contained in:
t8y2
2026-06-25 22:52:03 +08:00
parent b0f1be4df9
commit dbf9cae4c0
3 changed files with 13 additions and 3 deletions
@@ -707,7 +707,7 @@
"dbType": "gaussdb",
"label": "GaussDB",
"runtimeMode": "native",
"mcpMode": "direct",
"mcpMode": "bridge",
"singleConnectionPool": false,
"metadataConnectionScoped": false,
"skipTcpProbe": false,
@@ -975,7 +975,7 @@
"dbType": "opengauss",
"label": "openGauss",
"runtimeMode": "native",
"mcpMode": "direct",
"mcpMode": "bridge",
"singleConnectionPool": false,
"metadataConnectionScoped": false,
"skipTcpProbe": false,
+3 -1
View File
@@ -2,7 +2,7 @@ import { access, readFile } from "node:fs/promises";
import { bridgePortFilePath, dbPath, appDataDir } from "./paths.js";
import { inspectConnectionStore } from "./connections.js";
export const DIRECT_QUERY_TYPES = ["postgres", "redshift", "mysql", "doris", "starrocks", "manticoresearch", "sqlite", "rqlite", "gaussdb", "kwdb", "opengauss", "questdb"] as const;
export const DIRECT_QUERY_TYPES = ["postgres", "redshift", "mysql", "doris", "starrocks", "manticoresearch", "sqlite", "rqlite", "kwdb", "questdb"] as const;
export type DirectQueryType = (typeof DIRECT_QUERY_TYPES)[number];
@@ -30,6 +30,7 @@ export const BRIDGE_REQUIRED_TYPES = [
"vastbase",
"goldendb",
"databend",
"gaussdb",
"yashandb",
"databricks",
"saphana",
@@ -37,6 +38,7 @@ export const BRIDGE_REQUIRED_TYPES = [
"vertica",
"firebird",
"exasol",
"opengauss",
"oceanbase-oracle",
"gbase",
"tdengine",
@@ -62,6 +62,14 @@ test("Manticore Search is direct-query capable", () => {
assert.equal(DIRECT_QUERY_TYPES.includes("manticoresearch" as any), true);
});
test("GaussDB family requires the DBX Desktop bridge for MCP", () => {
for (const dbType of ["gaussdb", "opengauss"] as const) {
assert.equal(isDirectQueryType(dbType), false);
assert.equal(DIRECT_QUERY_TYPES.includes(dbType as any), false);
assert.equal(BRIDGE_REQUIRED_TYPES.includes(dbType as any), true);
}
});
test("driver manifest declares support levels and product capabilities", () => {
const manifest = loadManifest();