@cloudbase/cloudbase-mcp 2.23.8 → 2.23.10
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/dist/cli.cjs +2 -2
- package/dist/index.cjs +111 -162
- package/dist/index.d.ts +0 -12
- package/dist/index.js +111 -178
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -136836,7 +136836,7 @@ class TelemetryReporter {
|
|
|
136836
136836
|
const nodeVersion = process.version; // Node.js版本
|
|
136837
136837
|
const arch = os_1.default.arch(); // 系统架构
|
|
136838
136838
|
// 从构建时注入的版本号获取MCP版本信息
|
|
136839
|
-
const mcpVersion = process.env.npm_package_version || "2.23.
|
|
136839
|
+
const mcpVersion = process.env.npm_package_version || "2.23.10" || 0;
|
|
136840
136840
|
return {
|
|
136841
136841
|
userAgent: `${osType} ${osRelease} ${arch} ${nodeVersion} CloudBase-MCP/${mcpVersion}`,
|
|
136842
136842
|
deviceId: this.deviceId,
|
|
@@ -160271,17 +160271,13 @@ exports["default"] = applicator;
|
|
|
160271
160271
|
/***/ }),
|
|
160272
160272
|
|
|
160273
160273
|
/***/ 56473:
|
|
160274
|
-
/***/ (
|
|
160274
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
160275
160275
|
|
|
160276
160276
|
"use strict";
|
|
160277
160277
|
|
|
160278
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
160279
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
160280
|
-
};
|
|
160281
160278
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
160279
|
+
exports.__resetPgReadyCache = __resetPgReadyCache;
|
|
160282
160280
|
exports.registerPGDatabaseTools = registerPGDatabaseTools;
|
|
160283
|
-
const node_fs_1 = __webpack_require__(89971);
|
|
160284
|
-
const node_path_1 = __importDefault(__webpack_require__(26743));
|
|
160285
160281
|
const zod_1 = __webpack_require__(21614);
|
|
160286
160282
|
const cloudbase_manager_js_1 = __webpack_require__(3431);
|
|
160287
160283
|
const tool_result_js_1 = __webpack_require__(9835);
|
|
@@ -160296,7 +160292,6 @@ const QUERY_ACTIONS = [
|
|
|
160296
160292
|
"sql",
|
|
160297
160293
|
];
|
|
160298
160294
|
const MANAGE_ACTIONS = [
|
|
160299
|
-
"init",
|
|
160300
160295
|
"execute",
|
|
160301
160296
|
"dryRun",
|
|
160302
160297
|
"planMigration",
|
|
@@ -160317,63 +160312,19 @@ function buildNextAction(tool, action, reason, suggestedArgs) {
|
|
|
160317
160312
|
reason,
|
|
160318
160313
|
};
|
|
160319
160314
|
}
|
|
160320
|
-
|
|
160321
|
-
|
|
160322
|
-
|
|
160323
|
-
|
|
160324
|
-
async function
|
|
160325
|
-
|
|
160326
|
-
|
|
160327
|
-
|
|
160328
|
-
try {
|
|
160329
|
-
const raw = await node_fs_1.promises.readFile(getPgContextStorePath(), "utf8");
|
|
160330
|
-
return JSON.parse(raw);
|
|
160331
|
-
}
|
|
160332
|
-
catch {
|
|
160333
|
-
return undefined;
|
|
160334
|
-
}
|
|
160335
|
-
}
|
|
160336
|
-
async function savePgContext(server, context) {
|
|
160337
|
-
server.pgRuntimeContext = context;
|
|
160338
|
-
if (!process.env.CLOUDBASE_PG_CONTEXT_PATH) {
|
|
160339
|
-
return;
|
|
160340
|
-
}
|
|
160341
|
-
const storePath = getPgContextStorePath();
|
|
160342
|
-
await node_fs_1.promises.mkdir(node_path_1.default.dirname(storePath), { recursive: true });
|
|
160343
|
-
await node_fs_1.promises.writeFile(storePath, JSON.stringify(context, null, 2), {
|
|
160344
|
-
encoding: "utf8",
|
|
160345
|
-
mode: 0o600,
|
|
160346
|
-
});
|
|
160347
|
-
await node_fs_1.promises.chmod(storePath, 0o600).catch(() => undefined);
|
|
160348
|
-
}
|
|
160349
|
-
async function getPgContext(server) {
|
|
160350
|
-
if (server.pgRuntimeContext) {
|
|
160351
|
-
return server.pgRuntimeContext;
|
|
160352
|
-
}
|
|
160353
|
-
const stored = await loadStoredPgContext();
|
|
160354
|
-
if (stored) {
|
|
160355
|
-
server.pgRuntimeContext = stored;
|
|
160356
|
-
}
|
|
160357
|
-
return stored;
|
|
160358
|
-
}
|
|
160359
|
-
function buildMissingContextResult() {
|
|
160360
|
-
return buildPgToolResult({
|
|
160361
|
-
success: false,
|
|
160362
|
-
errorCode: "PG_CONTEXT_NOT_INITIALIZED",
|
|
160363
|
-
message: "PostgreSQL context is not initialized yet. Call managePgDatabase(action=init) to bind the current CloudBase environment's built-in PostgreSQL runtime.",
|
|
160364
|
-
nextActions: [
|
|
160365
|
-
buildNextAction(MANAGE_PG_DATABASE, "init", "初始化 CloudBase PG 云端执行上下文,然后再查询 schema 或执行 SQL。", { action: "init" }),
|
|
160366
|
-
],
|
|
160367
|
-
});
|
|
160368
|
-
}
|
|
160369
|
-
function sanitizePgContext(context) {
|
|
160315
|
+
/**
|
|
160316
|
+
* 从 cloudBaseOptions + args 推导 PG 执行上下文(无状态)
|
|
160317
|
+
* 照搬 MySQL 的 resolveSqlDbContext 模式
|
|
160318
|
+
*/
|
|
160319
|
+
async function resolvePgDbContext(cloudBaseOptions, args) {
|
|
160320
|
+
const envId = args?.envId ??
|
|
160321
|
+
cloudBaseOptions?.envId ??
|
|
160322
|
+
(await (0, cloudbase_manager_js_1.getEnvId)(cloudBaseOptions));
|
|
160370
160323
|
return {
|
|
160371
|
-
envId
|
|
160372
|
-
instanceId:
|
|
160373
|
-
defaultSchema:
|
|
160374
|
-
|
|
160375
|
-
bootstrapMode: context.bootstrapMode,
|
|
160376
|
-
role: context.role,
|
|
160324
|
+
envId,
|
|
160325
|
+
instanceId: args?.instanceId ?? "cloudbase-pg",
|
|
160326
|
+
defaultSchema: args?.defaultSchema ?? "public",
|
|
160327
|
+
role: args?.role ?? "cloudbase_admin",
|
|
160377
160328
|
};
|
|
160378
160329
|
}
|
|
160379
160330
|
function normalizeLimit(limit, fallback = 20, max = 200) {
|
|
@@ -160941,89 +160892,65 @@ function createManagerPgClient(context, cloudBaseOptions) {
|
|
|
160941
160892
|
function sleep(ms) {
|
|
160942
160893
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
160943
160894
|
}
|
|
160944
|
-
|
|
160945
|
-
|
|
160946
|
-
|
|
160947
|
-
|
|
160948
|
-
|
|
160949
|
-
|
|
160950
|
-
|
|
160951
|
-
|
|
160952
|
-
|
|
160953
|
-
|
|
160954
|
-
}
|
|
160955
|
-
catch (error) {
|
|
160956
|
-
lastError = error;
|
|
160957
|
-
if (attempt === maxAttempts) {
|
|
160958
|
-
break;
|
|
160959
|
-
}
|
|
160960
|
-
await sleep(retryDelayMs);
|
|
160961
|
-
}
|
|
160962
|
-
}
|
|
160963
|
-
const reason = lastError instanceof Error ? lastError.message : String(lastError);
|
|
160964
|
-
throw new Error(`PostgreSQL is not ready after ${maxAttempts} attempts. Last error: ${reason}`);
|
|
160895
|
+
/**
|
|
160896
|
+
* 模块级 Promise 缓存:同一 server 生命周期内只探测一次 PG 就绪状态
|
|
160897
|
+
* 照搬 MySQL lazy 就绪检查模式,避免每次业务调用都 SELECT 1
|
|
160898
|
+
*/
|
|
160899
|
+
let pgReadyPromise = null;
|
|
160900
|
+
/**
|
|
160901
|
+
* @internal 重置就绪探测缓存(仅供测试使用)
|
|
160902
|
+
*/
|
|
160903
|
+
function __resetPgReadyCache() {
|
|
160904
|
+
pgReadyPromise = null;
|
|
160965
160905
|
}
|
|
160966
|
-
|
|
160967
|
-
|
|
160968
|
-
|
|
160969
|
-
|
|
160970
|
-
|
|
160971
|
-
|
|
160972
|
-
|
|
160973
|
-
return buildPgToolResult({
|
|
160974
|
-
success: false,
|
|
160975
|
-
errorCode: "ENV_ID_REQUIRED",
|
|
160976
|
-
message: "CloudBase PostgreSQL only supports the built-in cloud runtime. Provide envId or bind a CloudBase environment before calling managePgDatabase(action=init).",
|
|
160977
|
-
});
|
|
160906
|
+
/**
|
|
160907
|
+
* 首次 SQL 调用时探测 PG 就绪,Promise 缓存避免重复探测
|
|
160908
|
+
* 探测失败抛错,由调用方捕获返回 PG_NOT_READY 错误码
|
|
160909
|
+
*/
|
|
160910
|
+
async function ensurePgReadyOnce(cloudBaseOptions, deps) {
|
|
160911
|
+
if (pgReadyPromise) {
|
|
160912
|
+
return pgReadyPromise;
|
|
160978
160913
|
}
|
|
160979
|
-
|
|
160980
|
-
|
|
160981
|
-
|
|
160982
|
-
|
|
160983
|
-
|
|
160984
|
-
|
|
160985
|
-
|
|
160986
|
-
|
|
160987
|
-
|
|
160988
|
-
|
|
160989
|
-
|
|
160990
|
-
|
|
160991
|
-
|
|
160992
|
-
|
|
160993
|
-
|
|
160994
|
-
|
|
160995
|
-
|
|
160996
|
-
|
|
160997
|
-
|
|
160998
|
-
|
|
160999
|
-
|
|
161000
|
-
|
|
161001
|
-
|
|
161002
|
-
|
|
161003
|
-
...sanitizePgContext(context),
|
|
161004
|
-
},
|
|
161005
|
-
status: bootstrapResult.status,
|
|
161006
|
-
},
|
|
161007
|
-
message: "CloudBase PG 云端执行上下文已就绪。先查询对象或 schema,再执行写入 SQL。",
|
|
161008
|
-
nextActions: [
|
|
161009
|
-
buildNextAction(QUERY_PG_DATABASE, "objects", "List schema-qualified database objects before drilling into a specific table.", { action: "objects", limit: 20 }),
|
|
161010
|
-
buildSchemaNextAction("Inspect a concrete schema-qualified table after you know which object matters.", `${context.defaultSchema}.your_table`),
|
|
161011
|
-
],
|
|
161012
|
-
});
|
|
160914
|
+
pgReadyPromise = (async () => {
|
|
160915
|
+
const context = await resolvePgDbContext(cloudBaseOptions);
|
|
160916
|
+
const maxAttempts = deps.readyCheckOptions?.maxAttempts ?? 20;
|
|
160917
|
+
const retryDelayMs = deps.readyCheckOptions?.retryDelayMs ?? 1000;
|
|
160918
|
+
let lastError;
|
|
160919
|
+
for (let attempt = 1; attempt <= maxAttempts; attempt += 1) {
|
|
160920
|
+
try {
|
|
160921
|
+
await withPgClient(context, deps, async (client) => {
|
|
160922
|
+
await client.query("SELECT 1");
|
|
160923
|
+
});
|
|
160924
|
+
return;
|
|
160925
|
+
}
|
|
160926
|
+
catch (error) {
|
|
160927
|
+
lastError = error;
|
|
160928
|
+
if (attempt === maxAttempts) {
|
|
160929
|
+
break;
|
|
160930
|
+
}
|
|
160931
|
+
await sleep(retryDelayMs);
|
|
160932
|
+
}
|
|
160933
|
+
}
|
|
160934
|
+
const reason = lastError instanceof Error ? lastError.message : String(lastError);
|
|
160935
|
+
throw new Error(`PostgreSQL is not ready after ${maxAttempts} attempts. Last error: ${reason}`);
|
|
160936
|
+
})();
|
|
160937
|
+
return pgReadyPromise;
|
|
161013
160938
|
}
|
|
161014
160939
|
async function handleQueryContext(server) {
|
|
161015
|
-
const context = await
|
|
161016
|
-
if (!context) {
|
|
161017
|
-
return buildMissingContextResult();
|
|
161018
|
-
}
|
|
160940
|
+
const context = await resolvePgDbContext(server.cloudBaseOptions);
|
|
161019
160941
|
return buildPgToolResult({
|
|
161020
160942
|
success: true,
|
|
161021
160943
|
data: {
|
|
161022
160944
|
context: {
|
|
161023
|
-
|
|
160945
|
+
envId: context.envId,
|
|
160946
|
+
instanceId: context.instanceId,
|
|
160947
|
+
defaultSchema: context.defaultSchema,
|
|
160948
|
+
runtimeMode: "cloudbase-manager",
|
|
160949
|
+
bootstrapMode: "cloud",
|
|
160950
|
+
role: context.role,
|
|
161024
160951
|
},
|
|
161025
160952
|
},
|
|
161026
|
-
message: "Resolved current CloudBase PostgreSQL context.",
|
|
160953
|
+
message: "Resolved current CloudBase PostgreSQL context (auto-derived).",
|
|
161027
160954
|
nextActions: [
|
|
161028
160955
|
buildNextAction(QUERY_PG_DATABASE, "objects", "List schema-qualified objects before inspecting an individual table.", { action: "objects", limit: 20 }),
|
|
161029
160956
|
],
|
|
@@ -161419,9 +161346,20 @@ function registerPGDatabaseTools(server, providedDeps) {
|
|
|
161419
161346
|
if (args.action === "context") {
|
|
161420
161347
|
return handleQueryContext(server);
|
|
161421
161348
|
}
|
|
161422
|
-
const context = await
|
|
161423
|
-
|
|
161424
|
-
|
|
161349
|
+
const context = await resolvePgDbContext(server.cloudBaseOptions);
|
|
161350
|
+
try {
|
|
161351
|
+
await ensurePgReadyOnce(server.cloudBaseOptions, deps);
|
|
161352
|
+
}
|
|
161353
|
+
catch (error) {
|
|
161354
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
161355
|
+
return buildPgToolResult({
|
|
161356
|
+
success: false,
|
|
161357
|
+
errorCode: "PG_NOT_READY",
|
|
161358
|
+
message: `CloudBase PostgreSQL is not ready. ${reason}`,
|
|
161359
|
+
nextActions: [
|
|
161360
|
+
buildNextAction("queryEnv", "info", "检查当前环境 PostgreSQL 实例状态。", { action: "info", envId: context.envId }),
|
|
161361
|
+
],
|
|
161362
|
+
});
|
|
161425
161363
|
}
|
|
161426
161364
|
switch (args.action) {
|
|
161427
161365
|
case "objects":
|
|
@@ -161442,11 +161380,11 @@ function registerPGDatabaseTools(server, providedDeps) {
|
|
|
161442
161380
|
});
|
|
161443
161381
|
server.registerTool?.(MANAGE_PG_DATABASE, {
|
|
161444
161382
|
title: "管理 PostgreSQL 上下文或执行写入 SQL",
|
|
161445
|
-
description: "管理 CloudBase PostgreSQL MCP
|
|
161383
|
+
description: "管理 CloudBase PostgreSQL:执行已确认的写入 SQL 或 DDL、SQL 风险预检、迁移规划。上下文自动从当前 MCP 环境推导,无需 init。仅支持 CloudBase 内置 PostgreSQL 云端 Manager SDK 执行路径。",
|
|
161446
161384
|
inputSchema: {
|
|
161447
161385
|
action: zod_1.z
|
|
161448
161386
|
.enum(MANAGE_ACTIONS)
|
|
161449
|
-
.describe("操作类型:
|
|
161387
|
+
.describe("操作类型:execute=执行已确认的写入 SQL 或 DDL;dryRun=只分析 SQL 风险不执行;planMigration=通过 PreviewPGUserMigrations 预览迁移计划;applyMigration=通过 PushPGUserMigrations 应用迁移;listMigrations=查询已应用的 Migration 列表;migrationDetail=查看单条 Migration 详情;rollbackMigration=回滚指定 Migration"),
|
|
161450
161388
|
sql: zod_1.z
|
|
161451
161389
|
.string()
|
|
161452
161390
|
.optional()
|
|
@@ -161462,11 +161400,11 @@ function registerPGDatabaseTools(server, providedDeps) {
|
|
|
161462
161400
|
instanceId: zod_1.z
|
|
161463
161401
|
.string()
|
|
161464
161402
|
.optional()
|
|
161465
|
-
.describe("可选的 PostgreSQL
|
|
161403
|
+
.describe("可选的 PostgreSQL 逻辑实例标识,默认 cloudbase-pg。"),
|
|
161466
161404
|
defaultSchema: zod_1.z
|
|
161467
161405
|
.string()
|
|
161468
161406
|
.optional()
|
|
161469
|
-
.describe("
|
|
161407
|
+
.describe("可选的默认 schema,默认 public。"),
|
|
161470
161408
|
role: zod_1.z
|
|
161471
161409
|
.string()
|
|
161472
161410
|
.optional()
|
|
@@ -161484,13 +161422,23 @@ function registerPGDatabaseTools(server, providedDeps) {
|
|
|
161484
161422
|
category: CATEGORY,
|
|
161485
161423
|
},
|
|
161486
161424
|
}, async (args) => {
|
|
161425
|
+
const context = await resolvePgDbContext(server.cloudBaseOptions, args);
|
|
161426
|
+
const cbOpts = server.cloudBaseOptions;
|
|
161487
161427
|
switch (args.action) {
|
|
161488
|
-
case "init":
|
|
161489
|
-
return handleInit(args, server, deps);
|
|
161490
161428
|
case "execute": {
|
|
161491
|
-
|
|
161492
|
-
|
|
161493
|
-
|
|
161429
|
+
try {
|
|
161430
|
+
await ensurePgReadyOnce(cbOpts, deps);
|
|
161431
|
+
}
|
|
161432
|
+
catch (error) {
|
|
161433
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
161434
|
+
return buildPgToolResult({
|
|
161435
|
+
success: false,
|
|
161436
|
+
errorCode: "PG_NOT_READY",
|
|
161437
|
+
message: `CloudBase PostgreSQL is not ready. ${reason}`,
|
|
161438
|
+
nextActions: [
|
|
161439
|
+
buildNextAction("queryEnv", "info", "检查当前环境 PostgreSQL 实例状态。", { action: "info", envId: context.envId }),
|
|
161440
|
+
],
|
|
161441
|
+
});
|
|
161494
161442
|
}
|
|
161495
161443
|
return handleExecuteSql(args, context, deps);
|
|
161496
161444
|
}
|
|
@@ -161501,17 +161449,12 @@ function registerPGDatabaseTools(server, providedDeps) {
|
|
|
161501
161449
|
case "listMigrations":
|
|
161502
161450
|
case "migrationDetail":
|
|
161503
161451
|
case "rollbackMigration": {
|
|
161504
|
-
const migrationCtx = await getPgContext(server);
|
|
161505
|
-
if (!migrationCtx) {
|
|
161506
|
-
return buildMissingContextResult();
|
|
161507
|
-
}
|
|
161508
|
-
const cbOpts = server.cloudBaseOptions;
|
|
161509
161452
|
switch (args.action) {
|
|
161510
|
-
case "planMigration": return handlePlanMigration(args,
|
|
161511
|
-
case "applyMigration": return handleApplyMigration(args,
|
|
161512
|
-
case "listMigrations": return handleListMigrations(args,
|
|
161513
|
-
case "migrationDetail": return handleMigrationDetail(args,
|
|
161514
|
-
case "rollbackMigration": return handleRollbackMigration(args,
|
|
161453
|
+
case "planMigration": return handlePlanMigration(args, context, deps, cbOpts);
|
|
161454
|
+
case "applyMigration": return handleApplyMigration(args, context, deps, cbOpts);
|
|
161455
|
+
case "listMigrations": return handleListMigrations(args, context, deps, cbOpts);
|
|
161456
|
+
case "migrationDetail": return handleMigrationDetail(args, context, deps, cbOpts);
|
|
161457
|
+
case "rollbackMigration": return handleRollbackMigration(args, context, deps, cbOpts);
|
|
161515
161458
|
default: return buildPgToolResult({ success: false, errorCode: "UNSUPPORTED_ACTION", message: `Unsupported action: ${args.action}` });
|
|
161516
161459
|
}
|
|
161517
161460
|
}
|
|
@@ -183041,6 +182984,12 @@ async function resolveSkillSearchRoots(options = {}) {
|
|
|
183041
182984
|
? path.resolve(path.dirname(cliEntryPath), "..", "..")
|
|
183042
182985
|
: undefined;
|
|
183043
182986
|
return filterExistingDirs([
|
|
182987
|
+
repoRoot
|
|
182988
|
+
? path.join(repoRoot, ".generated", "compat-config", ".agents", "skills")
|
|
182989
|
+
: undefined,
|
|
182990
|
+
repoRoot
|
|
182991
|
+
? path.join(repoRoot, ".generated", "compat-config", ".claude", "skills")
|
|
182992
|
+
: undefined,
|
|
183044
182993
|
repoRoot
|
|
183045
182994
|
? path.join(repoRoot, ".generated", "compat-config", ".codebuddy", "skills")
|
|
183046
182995
|
: undefined,
|
|
@@ -196621,7 +196570,7 @@ ${envIdSection}
|
|
|
196621
196570
|
## 环境信息
|
|
196622
196571
|
- 操作系统: ${os_1.default.type()} ${os_1.default.release()}
|
|
196623
196572
|
- Node.js版本: ${process.version}
|
|
196624
|
-
- MCP 版本:${process.env.npm_package_version || "2.23.
|
|
196573
|
+
- MCP 版本:${process.env.npm_package_version || "2.23.10" || 0}
|
|
196625
196574
|
- 系统架构: ${os_1.default.arch()}
|
|
196626
196575
|
- 时间: ${new Date().toISOString()}
|
|
196627
196576
|
- 请求ID: ${requestId}
|
|
@@ -196702,7 +196651,7 @@ function createWrappedHandler(name, handler, server) {
|
|
|
196702
196651
|
requestId: (typeof error === 'object' && error && 'requestId' in error) ? error.requestId : '',
|
|
196703
196652
|
ide: server.ide || process.env.INTEGRATION_IDE || ''
|
|
196704
196653
|
});
|
|
196705
|
-
const mcpVersion = true ? "2.23.
|
|
196654
|
+
const mcpVersion = true ? "2.23.10" : 0;
|
|
196706
196655
|
const requestIdSuffix = requestId ? `\n🆔 RequestId: ${requestId}` : '';
|
|
196707
196656
|
const enhancedErrorMessage = `${errorMessage}${requestIdSuffix}\n\n📦 CloudBase MCP v${mcpVersion}\n🔗 遇到问题?请复制以下链接到浏览器打开\n即可自动携带错误详情快速创建 GitHub Issue:\n${issueLink}`;
|
|
196708
196657
|
// 创建新的错误对象,保持原有的错误类型但更新消息
|
|
@@ -212716,7 +212665,7 @@ function registerSetupTools(server) {
|
|
|
212716
212665
|
server.registerTool("downloadTemplate", {
|
|
212717
212666
|
title: "下载项目模板",
|
|
212718
212667
|
description: `自动下载并部署CloudBase项目模板。
|
|
212719
|
-
**Note**: Call this tool when the user requests to create a new project using a CloudBase template.\n\n支持的模板:\n- react: React + CloudBase 全栈应用模板\n- vue: Vue + CloudBase 全栈应用模板\n- miniprogram: 微信小程序 + 云开发模板 \n- uniapp: UniApp + CloudBase 跨端应用模板\n- rules: 只包含AI编辑器配置文件(包含Cursor、WindSurf、CodeBuddy等所有主流编辑器配置),适合在已有项目中补充AI编辑器配置\n\n支持的IDE类型:\n- all: 下载所有IDE配置\n- cursor: Cursor AI编辑器\n- 其他IDE类型见下方列表\n\n注意:如果未传入 ide 参数且无法从环境变量检测到 IDE,将提示错误并要求传入 ide 参数\n- windsurf: WindSurf AI编辑器\n- codebuddy: CodeBuddy AI编辑器\n- claude-code: Claude Code AI编辑器\n- cline: Cline AI编辑器\n- gemini-cli: Gemini CLI\n- opencode: OpenCode AI编辑器\n- qwen-code: 通义灵码\n- baidu-comate: 百度Comate\n- openai-codex-cli: OpenAI Codex CLI\n- augment-code: Augment Code\n- github-copilot: GitHub Copilot\n- roocode: RooCode AI编辑器\n- tongyi-lingma: 通义灵码\n- trae: Trae AI编辑器\n- qoder: Qoder AI编辑器\n- antigravity: Google Antigravity AI编辑器\n- vscode: Visual Studio Code\n- kiro: Kiro AI编辑器\n- aider: Aider AI编辑器\n\n特别说明:\n- rules 模板会自动包含当前 mcp 版本号信息(版本号:${ true ? "2.23.
|
|
212668
|
+
**Note**: Call this tool when the user requests to create a new project using a CloudBase template.\n\n支持的模板:\n- react: React + CloudBase 全栈应用模板\n- vue: Vue + CloudBase 全栈应用模板\n- miniprogram: 微信小程序 + 云开发模板 \n- uniapp: UniApp + CloudBase 跨端应用模板\n- rules: 只包含AI编辑器配置文件(包含Cursor、WindSurf、CodeBuddy等所有主流编辑器配置),适合在已有项目中补充AI编辑器配置\n\n支持的IDE类型:\n- all: 下载所有IDE配置\n- cursor: Cursor AI编辑器\n- 其他IDE类型见下方列表\n\n注意:如果未传入 ide 参数且无法从环境变量检测到 IDE,将提示错误并要求传入 ide 参数\n- windsurf: WindSurf AI编辑器\n- codebuddy: CodeBuddy AI编辑器\n- claude-code: Claude Code AI编辑器\n- cline: Cline AI编辑器\n- gemini-cli: Gemini CLI\n- opencode: OpenCode AI编辑器\n- qwen-code: 通义灵码\n- baidu-comate: 百度Comate\n- openai-codex-cli: OpenAI Codex CLI\n- augment-code: Augment Code\n- github-copilot: GitHub Copilot\n- roocode: RooCode AI编辑器\n- tongyi-lingma: 通义灵码\n- trae: Trae AI编辑器\n- qoder: Qoder AI编辑器\n- antigravity: Google Antigravity AI编辑器\n- vscode: Visual Studio Code\n- kiro: Kiro AI编辑器\n- aider: Aider AI编辑器\n\n特别说明:\n- rules 模板会自动包含当前 mcp 版本号信息(版本号:${ true ? "2.23.10" : 0}),便于后续维护和版本追踪\n- 下载 rules 模板时,如果项目中已存在 README.md 文件,系统会自动保护该文件不被覆盖(除非设置 overwrite=true)`,
|
|
212720
212669
|
inputSchema: {
|
|
212721
212670
|
template: zod_1.z
|
|
212722
212671
|
.enum(["react", "vue", "miniprogram", "uniapp", "rules"])
|
package/dist/index.d.ts
CHANGED
|
@@ -159,7 +159,6 @@ export declare interface ExtendedMcpServer extends McpServer {
|
|
|
159
159
|
authOptions?: AuthOptions;
|
|
160
160
|
ide?: string;
|
|
161
161
|
logger?: Logger;
|
|
162
|
-
pgRuntimeContext?: PgRuntimeContext;
|
|
163
162
|
enabledPlugins?: string[];
|
|
164
163
|
pluginOptions?: PluginOptions;
|
|
165
164
|
/** 已注册工具的列表,供外部(如微信 IDE)提取并注册到自己的 MCP server */
|
|
@@ -333,17 +332,6 @@ export declare function logout(): Promise<void>;
|
|
|
333
332
|
|
|
334
333
|
export { McpServer }
|
|
335
334
|
|
|
336
|
-
declare interface PgRuntimeContext {
|
|
337
|
-
envId: string;
|
|
338
|
-
instanceId: string;
|
|
339
|
-
defaultSchema: string;
|
|
340
|
-
runtimeMode: "cloudbase-manager";
|
|
341
|
-
bootstrapMode: "cloud";
|
|
342
|
-
role?: string;
|
|
343
|
-
createdAt: string;
|
|
344
|
-
updatedAt: string;
|
|
345
|
-
}
|
|
346
|
-
|
|
347
335
|
/** 各插件的可选配置 */
|
|
348
336
|
export declare interface PluginOptions {
|
|
349
337
|
functions?: FunctionDeployOverrides;
|