@cloudbase/cloudbase-mcp 2.20.1 → 2.20.2
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 +3 -3
- package/dist/index.cjs +30 -30
- package/dist/index.js +30 -30
- package/package.json +2 -1
package/dist/index.cjs
CHANGED
|
@@ -2854,8 +2854,8 @@ function registerEnvTools(server) {
|
|
|
2854
2854
|
});
|
|
2855
2855
|
// envQuery - 环境查询(合并 listEnvs + getEnvInfo + getEnvAuthDomains)
|
|
2856
2856
|
server.registerTool?.("envQuery", {
|
|
2857
|
-
title: "环境查询",
|
|
2858
|
-
description: "
|
|
2857
|
+
title: "CloudBase 环境查询",
|
|
2858
|
+
description: "查询 CloudBase 环境相关信息,支持查询环境列表、指定环境详情和安全域名。(原工具名:listEnvs/getEnvInfo/getEnvAuthDomains,为兼容旧AI规则可继续使用这些名称)当 action=list 时,会按 DescribeEnvs 语义做列表/筛选,标准返回字段为 EnvId、Alias、Status、EnvType、Region、PackageId、PackageName、IsDefault,并支持通过 fields 白名单裁剪这些字段;aliasExact=true 时会按别名精确筛选,避免把前缀相近的环境误当作候选;即使传入 envId,action=list 也只返回摘要,不会返回完整资源明细或 expiry。如需查询某个已知 EnvId 对应环境的详细信息(包括资源字段和计费信息),必须使用 action=info 并传入目标环境的 envId 参数。action=info 会在可用时补充 BillingInfo(如 ExpireTime、PayMode、IsAutoRenew 等计费字段)。",
|
|
2859
2859
|
inputSchema: {
|
|
2860
2860
|
action: zod_1.z
|
|
2861
2861
|
.enum(["list", "info", "domains"])
|
|
@@ -3059,8 +3059,8 @@ function registerEnvTools(server) {
|
|
|
3059
3059
|
});
|
|
3060
3060
|
// envDomainManagement - 环境域名管理(合并 createEnvDomain + deleteEnvDomain)
|
|
3061
3061
|
server.registerTool?.("envDomainManagement", {
|
|
3062
|
-
title: "环境域名管理(安全域名 / CORS 白名单)",
|
|
3063
|
-
description: "
|
|
3062
|
+
title: "CloudBase 环境域名管理(安全域名 / CORS 白名单)",
|
|
3063
|
+
description: "管理 CloudBase 环境的安全域名(安全域名 / CORS 白名单),支持添加和删除操作。(原工具名:createEnvDomain/deleteEnvDomain,为兼容旧AI规则可继续使用这些名称)当浏览器 Web 应用需要从本地 Vite / dev server 直接访问 CloudBase 资源时,应先用 envQuery(action=domains) 检查当前实际浏览器 origin 对应的 host:port 是否已在白名单中,再按该实际值添加。新增或删除后通常需要继续轮询 envQuery(action=domains) 确认状态收敛;安全域名一般约 10 分钟生效。⚠️ 重要:此工具仅用于 CORS/请求来源验证,不涉及 SSL 证书。如需绑定自定义域名供公网 HTTPS 访问,请使用 manageGateway(action=\"bindCustomDomain\")。",
|
|
3064
3064
|
inputSchema: {
|
|
3065
3065
|
action: zod_1.z
|
|
3066
3066
|
.enum(["create", "delete"])
|
|
@@ -28555,8 +28555,8 @@ function registerAppAuthTools(server) {
|
|
|
28555
28555
|
};
|
|
28556
28556
|
};
|
|
28557
28557
|
server.registerTool?.("queryAppAuth", {
|
|
28558
|
-
title: "
|
|
28559
|
-
description: "应用侧认证配置只读入口。用于查询登录方式、provider、publishable key、API key、client 配置和静态域名等认证准备状态。⚠️ 本工具为管理端配置查询工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具确认配置状态,再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若业务要接受普通用户名样式标识符,先查询 action=getLoginConfig;若 usernamePassword=false,下一步应立即调用 manageAppAuth(action=patchLoginStrategy, patch={ usernamePassword: true }),不要直接写 email 登录 API。",
|
|
28558
|
+
title: "查询 CloudBase 应用认证配置",
|
|
28559
|
+
description: "CloudBase 应用侧认证配置只读入口。用于查询登录方式、provider、publishable key、API key、client 配置和静态域名等认证准备状态。⚠️ 本工具为管理端配置查询工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具确认配置状态,再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若业务要接受普通用户名样式标识符,先查询 action=getLoginConfig;若 usernamePassword=false,下一步应立即调用 manageAppAuth(action=patchLoginStrategy, patch={ usernamePassword: true }),不要直接写 email 登录 API。",
|
|
28560
28560
|
inputSchema: {
|
|
28561
28561
|
action: zod_1.z.enum(QUERY_APP_AUTH_ACTIONS),
|
|
28562
28562
|
providerId: zod_1.z.string().optional().describe("provider 标识,如 email、google"),
|
|
@@ -28666,8 +28666,8 @@ function registerAppAuthTools(server) {
|
|
|
28666
28666
|
}
|
|
28667
28667
|
}));
|
|
28668
28668
|
server.registerTool?.("manageAppAuth", {
|
|
28669
|
-
title: "
|
|
28670
|
-
description: "应用侧认证配置写入口。用于修改登录方式、provider、client 配置,确保 publishable key,以及创建或删除 API key、自定义登录密钥。⚠️ 本工具为管理端配置工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具完成配置(如启用 usernamePassword、获取 publishable key),再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若前端要接受普通用户名样式标识符,应先执行 action=patchLoginStrategy 并传入 patch={ usernamePassword: true },再实现对应前端登录逻辑。",
|
|
28669
|
+
title: "管理 CloudBase 应用认证配置",
|
|
28670
|
+
description: "CloudBase 应用侧认证配置写入口。用于修改登录方式、provider、client 配置,确保 publishable key,以及创建或删除 API key、自定义登录密钥。⚠️ 本工具为管理端配置工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具完成配置(如启用 usernamePassword、获取 publishable key),再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若前端要接受普通用户名样式标识符,应先执行 action=patchLoginStrategy 并传入 patch={ usernamePassword: true },再实现对应前端登录逻辑。",
|
|
28671
28671
|
inputSchema: {
|
|
28672
28672
|
action: zod_1.z.enum(MANAGE_APP_AUTH_ACTIONS),
|
|
28673
28673
|
patch: zod_1.z
|
|
@@ -38664,8 +38664,8 @@ function registerAgentTools(server) {
|
|
|
38664
38664
|
const cloudBaseOptions = server.cloudBaseOptions;
|
|
38665
38665
|
const getManager = () => (0, cloudbase_manager_js_1.getCloudBaseManager)({ cloudBaseOptions });
|
|
38666
38666
|
server.registerTool?.("queryAgents", {
|
|
38667
|
-
title: "查询 Agent",
|
|
38668
|
-
description: "Agent 域统一只读入口。支持列表、详情与日志查询。",
|
|
38667
|
+
title: "查询 CloudBase Agent",
|
|
38668
|
+
description: "CloudBase Agent 域统一只读入口。支持列表、详情与日志查询。",
|
|
38669
38669
|
inputSchema: {
|
|
38670
38670
|
action: zod_1.z.enum(QUERY_AGENT_ACTIONS),
|
|
38671
38671
|
agentId: zod_1.z.string().optional(),
|
|
@@ -38727,8 +38727,8 @@ function registerAgentTools(server) {
|
|
|
38727
38727
|
}
|
|
38728
38728
|
});
|
|
38729
38729
|
server.registerTool?.("manageAgents", {
|
|
38730
|
-
title: "管理 Agent",
|
|
38731
|
-
description: "Agent 域统一写入口。支持创建、更新和删除远端 Agent。",
|
|
38730
|
+
title: "管理 CloudBase Agent",
|
|
38731
|
+
description: "CloudBase Agent 域统一写入口。支持创建、更新和删除远端 Agent。",
|
|
38732
38732
|
inputSchema: {
|
|
38733
38733
|
action: zod_1.z.enum(MANAGE_AGENT_ACTIONS),
|
|
38734
38734
|
agentId: zod_1.z.string().optional(),
|
|
@@ -89822,8 +89822,8 @@ function registerFunctionTools(server) {
|
|
|
89822
89822
|
}
|
|
89823
89823
|
};
|
|
89824
89824
|
server.registerTool?.("queryFunctions", {
|
|
89825
|
-
title: "
|
|
89826
|
-
description: "
|
|
89825
|
+
title: "查询 CloudBase 云函数",
|
|
89826
|
+
description: "CloudBase 云函数统一只读入口。通过更自解释的 action 查询 CloudBase 云函数列表、函数详情、执行日志、层、触发器和代码下载地址。" +
|
|
89827
89827
|
"\n\n**分页说明**:`listFunctions`、`listLayers` 支持 `limit` 和 `offset` 参数。" +
|
|
89828
89828
|
"\n- `limit`: 分页数量,默认值由后端决定" +
|
|
89829
89829
|
"\n- `offset`: 分页偏移,从 0 开始" +
|
|
@@ -89883,8 +89883,8 @@ function registerFunctionTools(server) {
|
|
|
89883
89883
|
},
|
|
89884
89884
|
}, async (input) => withEnvelope(() => handleQueryFunctions(input)));
|
|
89885
89885
|
server.registerTool?.("manageFunctions", {
|
|
89886
|
-
title: "
|
|
89887
|
-
description: "
|
|
89886
|
+
title: "管理 CloudBase 云函数",
|
|
89887
|
+
description: "CloudBase 云函数统一写入口。支持创建函数、更新代码、更新配置、调用函数、管理定时跑 / 定时任务 / scheduled job 的 timer 触发器和层绑定。" +
|
|
89888
89888
|
"如果要创建 cron 定时任务,先用 createFunction 创建函数,再用 createFunctionTrigger 创建 timer 触发器(支持7段cron表达式),deleteFunctionTrigger 删除触发器。" +
|
|
89889
89889
|
"危险操作需要显式 confirm=true。",
|
|
89890
89890
|
inputSchema: {
|
|
@@ -117816,7 +117816,7 @@ function registerHostingTools(server) {
|
|
|
117816
117816
|
const cloudBaseOptions = server.cloudBaseOptions;
|
|
117817
117817
|
const getManager = () => (0, cloudbase_manager_js_1.getCloudBaseManager)({ cloudBaseOptions });
|
|
117818
117818
|
server.registerTool('queryHosting', {
|
|
117819
|
-
title: '
|
|
117819
|
+
title: '查询 CloudBase 静态托管',
|
|
117820
117820
|
description: '查询 CloudBase 静态托管的只读信息。适合 AI 先做发现再决定下一步:action=websiteConfig 查询首页/错误页/路由规则与站点域名信息;action=status 查询托管服务状态;action=findFiles 按前缀查找文件;action=listFiles 列出全部托管文件;action=domainStatus 查询自定义域名的当前状态与配置。该工具不会产生任何副作用。',
|
|
117821
117821
|
inputSchema: queryHostingInputSchema,
|
|
117822
117822
|
annotations: {
|
|
@@ -117955,7 +117955,7 @@ function registerHostingTools(server) {
|
|
|
117955
117955
|
}
|
|
117956
117956
|
});
|
|
117957
117957
|
server.registerTool('manageHosting', {
|
|
117958
|
-
title: '
|
|
117958
|
+
title: '管理 CloudBase 静态托管',
|
|
117959
117959
|
description: '管理 CloudBase 静态托管的变更操作。action=upload 上传本地构建产物;action=delete 删除托管文件或目录(必须 confirm=true);action=setWebsiteDocument 设置首页/错误页/路由规则;action=enableService 开通静态托管;action=bindDomain / unbindDomain / updateDomain 管理自定义域名;action=downloadFile / downloadDirectory 下载托管内容到本地。若任务只是查看配置、文件或域名状态,请改用 queryHosting。',
|
|
117960
117960
|
inputSchema: manageHostingInputSchema,
|
|
117961
117961
|
annotations: {
|
|
@@ -134931,7 +134931,7 @@ class TelemetryReporter {
|
|
|
134931
134931
|
const nodeVersion = process.version; // Node.js版本
|
|
134932
134932
|
const arch = os_1.default.arch(); // 系统架构
|
|
134933
134933
|
// 从构建时注入的版本号获取MCP版本信息
|
|
134934
|
-
const mcpVersion = process.env.npm_package_version || "2.20.
|
|
134934
|
+
const mcpVersion = process.env.npm_package_version || "2.20.2" || 0;
|
|
134935
134935
|
return {
|
|
134936
134936
|
userAgent: `${osType} ${osRelease} ${arch} ${nodeVersion} CloudBase-MCP/${mcpVersion}`,
|
|
134937
134937
|
deviceId: this.deviceId,
|
|
@@ -193536,7 +193536,7 @@ ${envIdSection}
|
|
|
193536
193536
|
## 环境信息
|
|
193537
193537
|
- 操作系统: ${os_1.default.type()} ${os_1.default.release()}
|
|
193538
193538
|
- Node.js版本: ${process.version}
|
|
193539
|
-
- MCP 版本:${process.env.npm_package_version || "2.20.
|
|
193539
|
+
- MCP 版本:${process.env.npm_package_version || "2.20.2" || 0}
|
|
193540
193540
|
- 系统架构: ${os_1.default.arch()}
|
|
193541
193541
|
- 时间: ${new Date().toISOString()}
|
|
193542
193542
|
- 请求ID: ${requestId}
|
|
@@ -193617,7 +193617,7 @@ function createWrappedHandler(name, handler, server) {
|
|
|
193617
193617
|
requestId: (typeof error === 'object' && error && 'requestId' in error) ? error.requestId : '',
|
|
193618
193618
|
ide: server.ide || process.env.INTEGRATION_IDE || ''
|
|
193619
193619
|
});
|
|
193620
|
-
const mcpVersion = true ? "2.20.
|
|
193620
|
+
const mcpVersion = true ? "2.20.2" : 0;
|
|
193621
193621
|
const requestIdSuffix = requestId ? `\n🆔 RequestId: ${requestId}` : '';
|
|
193622
193622
|
const enhancedErrorMessage = `${errorMessage}${requestIdSuffix}\n\n📦 CloudBase MCP v${mcpVersion}\n🔗 遇到问题?请复制以下链接到浏览器打开\n即可自动携带错误详情快速创建 GitHub Issue:\n${issueLink}`;
|
|
193623
193623
|
// 创建新的错误对象,保持原有的错误类型但更新消息
|
|
@@ -209576,7 +209576,7 @@ function registerSetupTools(server) {
|
|
|
209576
209576
|
server.registerTool("downloadTemplate", {
|
|
209577
209577
|
title: "下载项目模板",
|
|
209578
209578
|
description: `自动下载并部署CloudBase项目模板。
|
|
209579
|
-
**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.20.
|
|
209579
|
+
**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.20.2" : 0}),便于后续维护和版本追踪\n- 下载 rules 模板时,如果项目中已存在 README.md 文件,系统会自动保护该文件不被覆盖(除非设置 overwrite=true)`,
|
|
209580
209580
|
inputSchema: {
|
|
209581
209581
|
template: zod_1.z
|
|
209582
209582
|
.enum(["react", "vue", "miniprogram", "uniapp", "rules"])
|
|
@@ -227002,8 +227002,8 @@ function registerGatewayTools(server) {
|
|
|
227002
227002
|
}
|
|
227003
227003
|
};
|
|
227004
227004
|
server.registerTool?.("queryGateway", {
|
|
227005
|
-
title: "
|
|
227006
|
-
description: "
|
|
227005
|
+
title: "查询 CloudBase 网关",
|
|
227006
|
+
description: "CloudBase 网关统一只读入口。通过 action 查询网关域名、访问入口和目标暴露情况。",
|
|
227007
227007
|
inputSchema: {
|
|
227008
227008
|
action: zod_1.z
|
|
227009
227009
|
.enum(QUERY_GATEWAY_ACTIONS)
|
|
@@ -227025,8 +227025,8 @@ function registerGatewayTools(server) {
|
|
|
227025
227025
|
},
|
|
227026
227026
|
}, async (input) => withEnvelope(() => handleQueryGateway(input)));
|
|
227027
227027
|
server.registerTool?.("manageGateway", {
|
|
227028
|
-
title: "
|
|
227029
|
-
description: "
|
|
227028
|
+
title: "管理 CloudBase 网关",
|
|
227029
|
+
description: "CloudBase 网关统一写入口。通过 action 创建目标访问入口,后续承接更通用的网关配置能力。为已存在的 HTTP 云函数补默认域名访问时,通常使用 createAccess 并提供 targetType=\"function\"、targetName、type=\"HTTP\" 与期望 path。注意 createAccess 只创建网关入口,不会自动修改函数资源权限。⚠️ 如需绑定带 SSL 证书的自定义域名供公网 HTTPS 访问,使用 action=\"bindCustomDomain\"(需要 domain 和 certificateId 参数);如需配置 CORS/安全域名(无证书),请使用 envDomainManagement 工具。",
|
|
227030
227030
|
inputSchema: {
|
|
227031
227031
|
action: zod_1.z
|
|
227032
227032
|
.enum(MANAGE_GATEWAY_ACTIONS)
|
|
@@ -250624,8 +250624,8 @@ function registerStorageTools(server) {
|
|
|
250624
250624
|
const getManager = () => (0, cloudbase_manager_js_1.getCloudBaseManager)({ cloudBaseOptions });
|
|
250625
250625
|
// Tool 1: queryStorage - 查询存储信息(只读操作)
|
|
250626
250626
|
server.registerTool("queryStorage", {
|
|
250627
|
-
title: "
|
|
250628
|
-
description: "
|
|
250627
|
+
title: "查询 CloudBase 存储信息",
|
|
250628
|
+
description: "查询 CloudBase 云存储信息,支持列出目录文件、获取文件信息、获取临时下载链接等只读操作。返回的文件信息包括文件名、大小、修改时间、下载链接等。注意:action=url 返回的 temporaryUrl 是临时签名链接,有效期由 maxAge 参数决定(默认1小时),不要当作永久公网地址使用。工具还会基于 DescribeEnvs 返回的 Storages[0].CdnDomain 推导出 publicUrl,⚠️ 警告:publicUrl 仅在存储桶 ACL 为公有读(所有用户可读)时才能被匿名访问;默认私有读写存储桶返回的 publicUrl 会 403,此时请继续使用 temporaryUrl 或先通过控制台/SDK 将目标路径设置为公有读。",
|
|
250629
250629
|
inputSchema: queryStorageInputSchema,
|
|
250630
250630
|
annotations: {
|
|
250631
250631
|
readOnlyHint: true,
|
|
@@ -250753,8 +250753,8 @@ function registerStorageTools(server) {
|
|
|
250753
250753
|
});
|
|
250754
250754
|
// Tool 2: manageStorage - 管理存储文件(写操作)
|
|
250755
250755
|
server.registerTool("manageStorage", {
|
|
250756
|
-
title: "
|
|
250757
|
-
description: "
|
|
250756
|
+
title: "管理 CloudBase 存储文件",
|
|
250757
|
+
description: "管理 CloudBase 云存储文件,仅用于 COS/Storage 对象,不用于静态网站托管。支持上传文件/目录、下载文件/目录、删除文件/目录等操作。删除操作需要设置force=true进行确认,防止误删除重要文件。注意:上传后返回的 temporaryUrl 是临时签名链接,1小时后过期,不要当作永久公网地址写入配置或持久化存储。工具还会基于 DescribeEnvs 返回的 Storages[0].CdnDomain 推导 publicUrl,⚠️ 警告:publicUrl 仅在存储桶 ACL 为公有读(所有用户可读)时才能被匿名访问;默认私有读写存储桶返回的 publicUrl 会 403,此时请继续使用 temporaryUrl 或先通过控制台/SDK 将目标路径设置为公有读。",
|
|
250758
250758
|
inputSchema: manageStorageInputSchema,
|
|
250759
250759
|
annotations: {
|
|
250760
250760
|
readOnlyHint: false,
|
package/dist/index.js
CHANGED
|
@@ -1123,8 +1123,8 @@ function registerEnvTools(server) {
|
|
|
1123
1123
|
});
|
|
1124
1124
|
// envQuery - 环境查询(合并 listEnvs + getEnvInfo + getEnvAuthDomains)
|
|
1125
1125
|
server.registerTool?.("envQuery", {
|
|
1126
|
-
title: "环境查询",
|
|
1127
|
-
description: "
|
|
1126
|
+
title: "CloudBase 环境查询",
|
|
1127
|
+
description: "查询 CloudBase 环境相关信息,支持查询环境列表、指定环境详情和安全域名。(原工具名:listEnvs/getEnvInfo/getEnvAuthDomains,为兼容旧AI规则可继续使用这些名称)当 action=list 时,会按 DescribeEnvs 语义做列表/筛选,标准返回字段为 EnvId、Alias、Status、EnvType、Region、PackageId、PackageName、IsDefault,并支持通过 fields 白名单裁剪这些字段;aliasExact=true 时会按别名精确筛选,避免把前缀相近的环境误当作候选;即使传入 envId,action=list 也只返回摘要,不会返回完整资源明细或 expiry。如需查询某个已知 EnvId 对应环境的详细信息(包括资源字段和计费信息),必须使用 action=info 并传入目标环境的 envId 参数。action=info 会在可用时补充 BillingInfo(如 ExpireTime、PayMode、IsAutoRenew 等计费字段)。",
|
|
1128
1128
|
inputSchema: {
|
|
1129
1129
|
action: zod_1.z
|
|
1130
1130
|
.enum(["list", "info", "domains"])
|
|
@@ -1328,8 +1328,8 @@ function registerEnvTools(server) {
|
|
|
1328
1328
|
});
|
|
1329
1329
|
// envDomainManagement - 环境域名管理(合并 createEnvDomain + deleteEnvDomain)
|
|
1330
1330
|
server.registerTool?.("envDomainManagement", {
|
|
1331
|
-
title: "环境域名管理(安全域名 / CORS 白名单)",
|
|
1332
|
-
description: "
|
|
1331
|
+
title: "CloudBase 环境域名管理(安全域名 / CORS 白名单)",
|
|
1332
|
+
description: "管理 CloudBase 环境的安全域名(安全域名 / CORS 白名单),支持添加和删除操作。(原工具名:createEnvDomain/deleteEnvDomain,为兼容旧AI规则可继续使用这些名称)当浏览器 Web 应用需要从本地 Vite / dev server 直接访问 CloudBase 资源时,应先用 envQuery(action=domains) 检查当前实际浏览器 origin 对应的 host:port 是否已在白名单中,再按该实际值添加。新增或删除后通常需要继续轮询 envQuery(action=domains) 确认状态收敛;安全域名一般约 10 分钟生效。⚠️ 重要:此工具仅用于 CORS/请求来源验证,不涉及 SSL 证书。如需绑定自定义域名供公网 HTTPS 访问,请使用 manageGateway(action=\"bindCustomDomain\")。",
|
|
1333
1333
|
inputSchema: {
|
|
1334
1334
|
action: zod_1.z
|
|
1335
1335
|
.enum(["create", "delete"])
|
|
@@ -1703,7 +1703,7 @@ ${envIdSection}
|
|
|
1703
1703
|
## 环境信息
|
|
1704
1704
|
- 操作系统: ${os_1.default.type()} ${os_1.default.release()}
|
|
1705
1705
|
- Node.js版本: ${process.version}
|
|
1706
|
-
- MCP 版本:${process.env.npm_package_version || "2.20.
|
|
1706
|
+
- MCP 版本:${process.env.npm_package_version || "2.20.2" || 0}
|
|
1707
1707
|
- 系统架构: ${os_1.default.arch()}
|
|
1708
1708
|
- 时间: ${new Date().toISOString()}
|
|
1709
1709
|
- 请求ID: ${requestId}
|
|
@@ -1784,7 +1784,7 @@ function createWrappedHandler(name, handler, server) {
|
|
|
1784
1784
|
requestId: (typeof error === 'object' && error && 'requestId' in error) ? error.requestId : '',
|
|
1785
1785
|
ide: server.ide || process.env.INTEGRATION_IDE || ''
|
|
1786
1786
|
});
|
|
1787
|
-
const mcpVersion = true ? "2.20.
|
|
1787
|
+
const mcpVersion = true ? "2.20.2" : 0;
|
|
1788
1788
|
const requestIdSuffix = requestId ? `\n🆔 RequestId: ${requestId}` : '';
|
|
1789
1789
|
const enhancedErrorMessage = `${errorMessage}${requestIdSuffix}\n\n📦 CloudBase MCP v${mcpVersion}\n🔗 遇到问题?请复制以下链接到浏览器打开\n即可自动携带错误详情快速创建 GitHub Issue:\n${issueLink}`;
|
|
1790
1790
|
// 创建新的错误对象,保持原有的错误类型但更新消息
|
|
@@ -7042,8 +7042,8 @@ function registerGatewayTools(server) {
|
|
|
7042
7042
|
}
|
|
7043
7043
|
};
|
|
7044
7044
|
server.registerTool?.("queryGateway", {
|
|
7045
|
-
title: "
|
|
7046
|
-
description: "
|
|
7045
|
+
title: "查询 CloudBase 网关",
|
|
7046
|
+
description: "CloudBase 网关统一只读入口。通过 action 查询网关域名、访问入口和目标暴露情况。",
|
|
7047
7047
|
inputSchema: {
|
|
7048
7048
|
action: zod_1.z
|
|
7049
7049
|
.enum(QUERY_GATEWAY_ACTIONS)
|
|
@@ -7065,8 +7065,8 @@ function registerGatewayTools(server) {
|
|
|
7065
7065
|
},
|
|
7066
7066
|
}, async (input) => withEnvelope(() => handleQueryGateway(input)));
|
|
7067
7067
|
server.registerTool?.("manageGateway", {
|
|
7068
|
-
title: "
|
|
7069
|
-
description: "
|
|
7068
|
+
title: "管理 CloudBase 网关",
|
|
7069
|
+
description: "CloudBase 网关统一写入口。通过 action 创建目标访问入口,后续承接更通用的网关配置能力。为已存在的 HTTP 云函数补默认域名访问时,通常使用 createAccess 并提供 targetType=\"function\"、targetName、type=\"HTTP\" 与期望 path。注意 createAccess 只创建网关入口,不会自动修改函数资源权限。⚠️ 如需绑定带 SSL 证书的自定义域名供公网 HTTPS 访问,使用 action=\"bindCustomDomain\"(需要 domain 和 certificateId 参数);如需配置 CORS/安全域名(无证书),请使用 envDomainManagement 工具。",
|
|
7070
7070
|
inputSchema: {
|
|
7071
7071
|
action: zod_1.z
|
|
7072
7072
|
.enum(MANAGE_GATEWAY_ACTIONS)
|
|
@@ -7348,8 +7348,8 @@ function registerStorageTools(server) {
|
|
|
7348
7348
|
const getManager = () => (0, cloudbase_manager_js_1.getCloudBaseManager)({ cloudBaseOptions });
|
|
7349
7349
|
// Tool 1: queryStorage - 查询存储信息(只读操作)
|
|
7350
7350
|
server.registerTool("queryStorage", {
|
|
7351
|
-
title: "
|
|
7352
|
-
description: "
|
|
7351
|
+
title: "查询 CloudBase 存储信息",
|
|
7352
|
+
description: "查询 CloudBase 云存储信息,支持列出目录文件、获取文件信息、获取临时下载链接等只读操作。返回的文件信息包括文件名、大小、修改时间、下载链接等。注意:action=url 返回的 temporaryUrl 是临时签名链接,有效期由 maxAge 参数决定(默认1小时),不要当作永久公网地址使用。工具还会基于 DescribeEnvs 返回的 Storages[0].CdnDomain 推导出 publicUrl,⚠️ 警告:publicUrl 仅在存储桶 ACL 为公有读(所有用户可读)时才能被匿名访问;默认私有读写存储桶返回的 publicUrl 会 403,此时请继续使用 temporaryUrl 或先通过控制台/SDK 将目标路径设置为公有读。",
|
|
7353
7353
|
inputSchema: queryStorageInputSchema,
|
|
7354
7354
|
annotations: {
|
|
7355
7355
|
readOnlyHint: true,
|
|
@@ -7477,8 +7477,8 @@ function registerStorageTools(server) {
|
|
|
7477
7477
|
});
|
|
7478
7478
|
// Tool 2: manageStorage - 管理存储文件(写操作)
|
|
7479
7479
|
server.registerTool("manageStorage", {
|
|
7480
|
-
title: "
|
|
7481
|
-
description: "
|
|
7480
|
+
title: "管理 CloudBase 存储文件",
|
|
7481
|
+
description: "管理 CloudBase 云存储文件,仅用于 COS/Storage 对象,不用于静态网站托管。支持上传文件/目录、下载文件/目录、删除文件/目录等操作。删除操作需要设置force=true进行确认,防止误删除重要文件。注意:上传后返回的 temporaryUrl 是临时签名链接,1小时后过期,不要当作永久公网地址写入配置或持久化存储。工具还会基于 DescribeEnvs 返回的 Storages[0].CdnDomain 推导 publicUrl,⚠️ 警告:publicUrl 仅在存储桶 ACL 为公有读(所有用户可读)时才能被匿名访问;默认私有读写存储桶返回的 publicUrl 会 403,此时请继续使用 temporaryUrl 或先通过控制台/SDK 将目标路径设置为公有读。",
|
|
7482
7482
|
inputSchema: manageStorageInputSchema,
|
|
7483
7483
|
annotations: {
|
|
7484
7484
|
readOnlyHint: false,
|
|
@@ -8893,8 +8893,8 @@ function registerAppAuthTools(server) {
|
|
|
8893
8893
|
};
|
|
8894
8894
|
};
|
|
8895
8895
|
server.registerTool?.("queryAppAuth", {
|
|
8896
|
-
title: "
|
|
8897
|
-
description: "应用侧认证配置只读入口。用于查询登录方式、provider、publishable key、API key、client 配置和静态域名等认证准备状态。⚠️ 本工具为管理端配置查询工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具确认配置状态,再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若业务要接受普通用户名样式标识符,先查询 action=getLoginConfig;若 usernamePassword=false,下一步应立即调用 manageAppAuth(action=patchLoginStrategy, patch={ usernamePassword: true }),不要直接写 email 登录 API。",
|
|
8896
|
+
title: "查询 CloudBase 应用认证配置",
|
|
8897
|
+
description: "CloudBase 应用侧认证配置只读入口。用于查询登录方式、provider、publishable key、API key、client 配置和静态域名等认证准备状态。⚠️ 本工具为管理端配置查询工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具确认配置状态,再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若业务要接受普通用户名样式标识符,先查询 action=getLoginConfig;若 usernamePassword=false,下一步应立即调用 manageAppAuth(action=patchLoginStrategy, patch={ usernamePassword: true }),不要直接写 email 登录 API。",
|
|
8898
8898
|
inputSchema: {
|
|
8899
8899
|
action: zod_1.z.enum(QUERY_APP_AUTH_ACTIONS),
|
|
8900
8900
|
providerId: zod_1.z.string().optional().describe("provider 标识,如 email、google"),
|
|
@@ -9004,8 +9004,8 @@ function registerAppAuthTools(server) {
|
|
|
9004
9004
|
}
|
|
9005
9005
|
}));
|
|
9006
9006
|
server.registerTool?.("manageAppAuth", {
|
|
9007
|
-
title: "
|
|
9008
|
-
description: "应用侧认证配置写入口。用于修改登录方式、provider、client 配置,确保 publishable key,以及创建或删除 API key、自定义登录密钥。⚠️ 本工具为管理端配置工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具完成配置(如启用 usernamePassword、获取 publishable key),再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若前端要接受普通用户名样式标识符,应先执行 action=patchLoginStrategy 并传入 patch={ usernamePassword: true },再实现对应前端登录逻辑。",
|
|
9007
|
+
title: "管理 CloudBase 应用认证配置",
|
|
9008
|
+
description: "CloudBase 应用侧认证配置写入口。用于修改登录方式、provider、client 配置,确保 publishable key,以及创建或删除 API key、自定义登录密钥。⚠️ 本工具为管理端配置工具,不执行用户登录。当任务要求编写客户端登录代码时(例如「用 JS SDK 登录」),应先通过本工具完成配置(如启用 usernamePassword、获取 publishable key),再在项目代码中编写 @cloudbase/js-sdk 客户端登录代码(如 auth.signInWithPassword()),而非使用本工具完成登录。若前端要接受普通用户名样式标识符,应先执行 action=patchLoginStrategy 并传入 patch={ usernamePassword: true },再实现对应前端登录逻辑。",
|
|
9009
9009
|
inputSchema: {
|
|
9010
9010
|
action: zod_1.z.enum(MANAGE_APP_AUTH_ACTIONS),
|
|
9011
9011
|
patch: zod_1.z
|
|
@@ -9275,7 +9275,7 @@ class TelemetryReporter {
|
|
|
9275
9275
|
const nodeVersion = process.version; // Node.js版本
|
|
9276
9276
|
const arch = os_1.default.arch(); // 系统架构
|
|
9277
9277
|
// 从构建时注入的版本号获取MCP版本信息
|
|
9278
|
-
const mcpVersion = process.env.npm_package_version || "2.20.
|
|
9278
|
+
const mcpVersion = process.env.npm_package_version || "2.20.2" || 0;
|
|
9279
9279
|
return {
|
|
9280
9280
|
userAgent: `${osType} ${osRelease} ${arch} ${nodeVersion} CloudBase-MCP/${mcpVersion}`,
|
|
9281
9281
|
deviceId: this.deviceId,
|
|
@@ -10635,8 +10635,8 @@ function registerFunctionTools(server) {
|
|
|
10635
10635
|
}
|
|
10636
10636
|
};
|
|
10637
10637
|
server.registerTool?.("queryFunctions", {
|
|
10638
|
-
title: "
|
|
10639
|
-
description: "
|
|
10638
|
+
title: "查询 CloudBase 云函数",
|
|
10639
|
+
description: "CloudBase 云函数统一只读入口。通过更自解释的 action 查询 CloudBase 云函数列表、函数详情、执行日志、层、触发器和代码下载地址。" +
|
|
10640
10640
|
"\n\n**分页说明**:`listFunctions`、`listLayers` 支持 `limit` 和 `offset` 参数。" +
|
|
10641
10641
|
"\n- `limit`: 分页数量,默认值由后端决定" +
|
|
10642
10642
|
"\n- `offset`: 分页偏移,从 0 开始" +
|
|
@@ -10696,8 +10696,8 @@ function registerFunctionTools(server) {
|
|
|
10696
10696
|
},
|
|
10697
10697
|
}, async (input) => withEnvelope(() => handleQueryFunctions(input)));
|
|
10698
10698
|
server.registerTool?.("manageFunctions", {
|
|
10699
|
-
title: "
|
|
10700
|
-
description: "
|
|
10699
|
+
title: "管理 CloudBase 云函数",
|
|
10700
|
+
description: "CloudBase 云函数统一写入口。支持创建函数、更新代码、更新配置、调用函数、管理定时跑 / 定时任务 / scheduled job 的 timer 触发器和层绑定。" +
|
|
10701
10701
|
"如果要创建 cron 定时任务,先用 createFunction 创建函数,再用 createFunctionTrigger 创建 timer 触发器(支持7段cron表达式),deleteFunctionTrigger 删除触发器。" +
|
|
10702
10702
|
"危险操作需要显式 confirm=true。",
|
|
10703
10703
|
inputSchema: {
|
|
@@ -11831,7 +11831,7 @@ function registerSetupTools(server) {
|
|
|
11831
11831
|
server.registerTool("downloadTemplate", {
|
|
11832
11832
|
title: "下载项目模板",
|
|
11833
11833
|
description: `自动下载并部署CloudBase项目模板。
|
|
11834
|
-
**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.20.
|
|
11834
|
+
**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.20.2" : 0}),便于后续维护和版本追踪\n- 下载 rules 模板时,如果项目中已存在 README.md 文件,系统会自动保护该文件不被覆盖(除非设置 overwrite=true)`,
|
|
11835
11835
|
inputSchema: {
|
|
11836
11836
|
template: zod_1.z
|
|
11837
11837
|
.enum(["react", "vue", "miniprogram", "uniapp", "rules"])
|
|
@@ -13115,7 +13115,7 @@ function registerHostingTools(server) {
|
|
|
13115
13115
|
const cloudBaseOptions = server.cloudBaseOptions;
|
|
13116
13116
|
const getManager = () => (0, cloudbase_manager_js_1.getCloudBaseManager)({ cloudBaseOptions });
|
|
13117
13117
|
server.registerTool('queryHosting', {
|
|
13118
|
-
title: '
|
|
13118
|
+
title: '查询 CloudBase 静态托管',
|
|
13119
13119
|
description: '查询 CloudBase 静态托管的只读信息。适合 AI 先做发现再决定下一步:action=websiteConfig 查询首页/错误页/路由规则与站点域名信息;action=status 查询托管服务状态;action=findFiles 按前缀查找文件;action=listFiles 列出全部托管文件;action=domainStatus 查询自定义域名的当前状态与配置。该工具不会产生任何副作用。',
|
|
13120
13120
|
inputSchema: queryHostingInputSchema,
|
|
13121
13121
|
annotations: {
|
|
@@ -13254,7 +13254,7 @@ function registerHostingTools(server) {
|
|
|
13254
13254
|
}
|
|
13255
13255
|
});
|
|
13256
13256
|
server.registerTool('manageHosting', {
|
|
13257
|
-
title: '
|
|
13257
|
+
title: '管理 CloudBase 静态托管',
|
|
13258
13258
|
description: '管理 CloudBase 静态托管的变更操作。action=upload 上传本地构建产物;action=delete 删除托管文件或目录(必须 confirm=true);action=setWebsiteDocument 设置首页/错误页/路由规则;action=enableService 开通静态托管;action=bindDomain / unbindDomain / updateDomain 管理自定义域名;action=downloadFile / downloadDirectory 下载托管内容到本地。若任务只是查看配置、文件或域名状态,请改用 queryHosting。',
|
|
13259
13259
|
inputSchema: manageHostingInputSchema,
|
|
13260
13260
|
annotations: {
|
|
@@ -14601,8 +14601,8 @@ function registerAgentTools(server) {
|
|
|
14601
14601
|
const cloudBaseOptions = server.cloudBaseOptions;
|
|
14602
14602
|
const getManager = () => (0, cloudbase_manager_js_1.getCloudBaseManager)({ cloudBaseOptions });
|
|
14603
14603
|
server.registerTool?.("queryAgents", {
|
|
14604
|
-
title: "查询 Agent",
|
|
14605
|
-
description: "Agent 域统一只读入口。支持列表、详情与日志查询。",
|
|
14604
|
+
title: "查询 CloudBase Agent",
|
|
14605
|
+
description: "CloudBase Agent 域统一只读入口。支持列表、详情与日志查询。",
|
|
14606
14606
|
inputSchema: {
|
|
14607
14607
|
action: zod_1.z.enum(QUERY_AGENT_ACTIONS),
|
|
14608
14608
|
agentId: zod_1.z.string().optional(),
|
|
@@ -14664,8 +14664,8 @@ function registerAgentTools(server) {
|
|
|
14664
14664
|
}
|
|
14665
14665
|
});
|
|
14666
14666
|
server.registerTool?.("manageAgents", {
|
|
14667
|
-
title: "管理 Agent",
|
|
14668
|
-
description: "Agent 域统一写入口。支持创建、更新和删除远端 Agent。",
|
|
14667
|
+
title: "管理 CloudBase Agent",
|
|
14668
|
+
description: "CloudBase Agent 域统一写入口。支持创建、更新和删除远端 Agent。",
|
|
14669
14669
|
inputSchema: {
|
|
14670
14670
|
action: zod_1.z.enum(MANAGE_AGENT_ACTIONS),
|
|
14671
14671
|
agentId: zod_1.z.string().optional(),
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudbase/cloudbase-mcp",
|
|
3
|
-
"version": "2.20.
|
|
3
|
+
"version": "2.20.2",
|
|
4
|
+
"packageManager": "pnpm@10.8.0",
|
|
4
5
|
"description": "腾讯云开发 MCP Server,通过AI提示词和MCP协议+云开发,让开发更智能、更高效,当你在Cursor/ VSCode GitHub Copilot/WinSurf/CodeBuddy/Augment Code/Claude Code等AI编程工具里写代码时,它能自动帮你生成可直接部署的前后端应用+小程序,并一键发布到腾讯云开发 CloudBase。",
|
|
5
6
|
"main": "./dist/index.cjs",
|
|
6
7
|
"module": "./dist/index.js",
|