CloudBase

io.github.TencentCloudBase由 GitHub 账号 TencentCloudBase 发布v2.37.5更新于 Nov 7, 2026

CloudBase MCP: DB, functions, storage, hosting via @cloudbase/cloudbase-mcp

已验证Streamable HTTP可网页运行数据库云端与基础设施开发者工具

概览

AI 生成的概览

CloudBase MCP 让 AI 助手登录腾讯云 CloudBase,并管理其数据库、云函数、存储、托管与日志。

可以做什么
  • 登录并查看或切换当前绑定的 CloudBase 环境
  • 操作 PostgreSQL 与文档型数据库:数据模型、增删改查、权限、SQL 与迁移
  • 编写、部署、调用和调试云函数与 Cloud Run 服务
  • 管理登录方式、对象存储与权限联动
  • 发布静态托管或小程序版本,查看日志并重新部署
  • 直接调用 CloudBase 云 API,并在删除等破坏性操作前弹出确认
适用场景
适用于在腾讯云 CloudBase 上构建或运维应用,并希望 AI 编程助手在 IDE 中建表、部署函数、上传资源或发布托管变更的场景。既适合通过浏览器 OAuth 快速上手的个人使用,也适合需要静态凭据的 CI 或自动化任务。
运行要求
需要一个 CloudBase 环境。可使用远程端点(中国站或国际站,需与账号匹配)并通过浏览器 OAuth 登录;也可在本地用 npx 运行 npm 包,需 Node.js v18.15.0 及以上。不支持 OAuth 的客户端和 CI 需使用 X-TencentCloud-SecretId 与 X-TencentCloud-SecretKey 请求头并附带 env_id。可选配置包括 TCB_SITE、TCB_REGION 与 CLOUDBASE_MCP_UI。
安装前请注意
静态密钥对在轮换或删除前一直有效,应避免写入代码仓库,优先使用 OAuth。该服务器可写入、部署和删除云端资源,而删除确认仅在客户端支持表单征询且确实询问用户时出现,全权限或非交互客户端可能不经提示直接执行。远程模式不支持本地文件上传与模板下载,国际站尚未提供 NoSQL 工具。

安装

在 SourceWeft 中

  1. 打开 控制台中的 CloudBase,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[CloudBase AI Toolkit]

@cloudbase/cloudbase-mcp

MCP Server for Tencent CloudBase. Part of CloudBase AI Toolkit.

Operate CloudBase from AI coding tools: login, databases, functions, storage, hosting, and logs—via the Model Context Protocol.

English · 简体中文 · Toolkit README · Docs · Changelog · Issues

[图片] [图片] [图片] [图片]

What this package is

@cloudbase/cloudbase-mcp is the npm distribution of the CloudBase MCP Server. It is one piece of the Toolkit:

PieceRole
PluginInstalls MCP + Skills + Hooks together
Agent SkillsScenario skills toward workable CloudBase practice
MCP (this package)Tools the agent calls to act on your CloudBase environment

Prefer Plugin when your IDE supports it. Use this package alone when you only need MCP config.

Full Toolkit narrative, related repos, and IDE matrix: repository README.

Quick start

json
{  "mcpServers": {    "cloudbase": {      "command": "npx",      "args": ["@cloudbase/cloudbase-mcp@latest"]    }  }}

First prompts:

Login to CloudBase
Use CloudBase Skills to build a todo app with login, database and permissions, then deploy

You need a CloudBase environment and should confirm sensitive actions the AI proposes.

Other install paths

PathWhen
Official MCP Registry io.github.TencentCloudBase/cloudbase-mcpDiscover via registry search=cloudbase
npx plugins add TencentCloudBase/cloudbase-pluginOpen Plugin Spec tools
Marketplace / built-in pluginClaude Code, Codex, CodeBuddy, WorkBuddy, Doubao, MiniMax Code, DeepSeek Harness, Kimi Code, Kimi Work, ZCode, etc.

Already using CloudBase CLI? tcb ai sets up MCP and Skills too (docs).

Connection modes

Remote (recommended): your IDE connects over HTTP to Tencent Cloud MCP. No local Node, and interactive clients finish authorization in the browser.

SiteMCP endpoint
China (domestic)https://tcb-api.cloud.tencent.com/mcp/v1
Internationalhttps://tcb-api.tencentcloud.com/mcp/v1

Pick the endpoint matching the site your environment lives in—the two sites use separate accounts and credentials.

OAuth (interactive, recommended): the URL is the whole configuration—your IDE opens the browser for login and consent, and you pick the environment there. No keys land in config files, and there is nothing to rotate.

json
{  "mcpServers": {    "cloudbase": {      "type": "http",      "url": "https://tcb-api.cloud.tencent.com/mcp/v1"    }  }}

Static credentials (for a client without OAuth, and for CI/CD): append env_id and a key pair created on the same site as the endpoint.

json
{  "mcpServers": {    "cloudbase": {      "type": "http",      "url": "https://tcb-api.cloud.tencent.com/mcp/v1?env_id=<env_id>",      "headers": {        "X-TencentCloud-SecretId": "<Tencent Cloud Secret ID>",        "X-TencentCloud-SecretKey": "<Tencent Cloud Secret Key>"      }    }  }}

A static key pair stays valid until it is rotated or deleted; an OAuth session ends when you log out. Use the static form only where the browser flow is impossible—and keep it out of a repository.

Local: runs npx @cloudbase/cloudbase-mcp@latest on your machine—full features, including local filesystem upload and template download. Requires Node.js v18.15.0+.

Remote trade-off: local-filesystem features (upload, template download) are unavailable, and the international site does not yet expose NoSQL tools.

Remote URLs accept site for one case only—a China-site environment in ap-singapore, where the region is ambiguous—plus enable_plugins / disable_plugins (comma-separated). Canonical plugin names: see src/server.ts in this package (e.g. env, database, functions, hosting, storage, pg_database, cloudrun, logs, feedback).

Self-hosted Cloud Mode: set CLOUDBASE_MCP_CLOUD_MODE=true (or MCP_CLOUD_MODE=true) so local file and process tools are disabled for remote callers.

ScenarioSuggestion
Personal / fastest startRemote URL (OAuth)
Need local file featuresLocal npx
CI / automationRemote + static credentials
Self-hosted MCPCloud Mode required

Site & region

Set TCB_SITE (domestic / intl) to select the login/credential site, and TCB_REGION for API routing. The domestic and international sites are separate account systems. ap-singapore exists on both, so domestic-site Singapore users must set TCB_SITE=domestic; otherwise it defaults to intl. Project-level .cloudbase/project.json ({ site, region, envId }) is also supported.

In remote mode the site is determined by the endpoint host itself—tcb-api.cloud.tencent.com is the China site, tcb-api.tencentcloud.com is the international site—and there is no site query parameter to set. This holds for a China-site environment in ap-singapore too: keep using the China-site endpoint. Self-hosted Cloud Mode deployments can still use the TCB_SITE environment variable.

MCP Apps panels (on by default)

auth, queryEnv and the deploy tools can render MCP Apps panels (ui://cloudbase/*) in hosts that support them. Panels are on by default: the ui:// resources are registered and those tools carry _meta.ui.

Hosts that cannot render them are unaffected in practice — resources/list stays empty (the panels are ResourceTemplates without a list), so nothing new appears in a resource browser, and every tool keeps returning the same JSON text it did before. The flag only decides whether panels are offered.

Turn it off with CLOUDBASE_MCP_UI=off (also accepts 0 / false / no / disabled). Leaving it unset means on; a typo such as of also leaves it off, so a misspelled value never silently enables something you meant to disable. Tools behave identically either way.

Capabilities

Typical backend work in your environment (confirm critical steps):

  • Database: PostgreSQL and document DB, data models, CRUD, permissions
  • Compute: cloud functions / Cloud Run—author, deploy, invoke, debug
  • Auth & storage: login methods, object storage, permission linkage
  • Release & ops: static hosting / Mini Program publish; logs and redeploy

Tool catalog: MCP tools · tools.json

Confirmations before destructive calls

Deleting a cloud function, a collection, the documents in one, a stored file, a CloudRun service or a MySQL instance now pauses the call until you answer a dialog that names the target — "about to delete the cloud function hello (env env-abc)" — instead of asking a bare "are you sure?". The same deletes pause when they arrive as callCloudApi, but only for an explicit service + Action pair: DeleteFunction on tcb or scf, tcb.DeleteTable, tcb.DeleteItem, tcb.DestroyEnv, tcb.DestroyPlatformEnv, tcb.DestroyMySQL, tcbr.DeleteCloudRunServer, and tcbr.DeleteCloudRunVersions when IsDeleteServer is true. A Delete prefix does not confirm other cloud APIs. Cloud storage deletes do not go through callCloudApi. PostgreSQL execute / applyMigration pause only when the SQL itself is DELETE, DROP, TRUNCATE or ALTER … DROP; INSERT, UPDATE and CREATE TABLE do not. It is built on MCP form elicitation, so it can only appear where the client declares that capability and actually asks the user.

SituationWhat happens
The client asks the userYou get the dialog; the call runs only after you pick "delete"
The client is in a full-access / never-ask modeIt answers on its own within a few milliseconds. That is treated as "you were not asked", and the call proceeds
The client cannot render formsNo dialog, and the call proceeds — the behaviour is the same as before this change
You decline, dismiss it, or answer nothing for 45sNothing is executed, and the result says so without being marked as an error, so a model does not retry the same deletion

A declined call is not a failure: the tool returns "not executed" plus what to do instead. Two environment variables change the handling, and neither of them bypasses authentication, permissions or read-only limits — they only decide whether the question is asked:

VariableEffect
CLOUDBASE_MCP_SKIP_ELICITATIONSComma-separated. Accepts a tool name (manageFunctions, callCloudApi) or a single action (manageFunctions.deleteFunction, callCloudApi.tcb.DeleteFunction), case-sensitive, no wildcard. Unknown entries are logged and ignored rather than failing the server
CLOUDBASE_MCP_ELICIT_AUTO_APPROVEallow (default) proceeds when the client answers for itself; block treats that case as not confirmed

A client's own tool-approval prompt is not this confirmation: it asks "may this tool run?", not "is this the resource you want to delete?".

Credential-shaped arguments: one real check before writing

When a call's arguments contain something shaped like a credential — a three-part JWT, or a cb_secret_… / cb_publishable_… key — the server asks the client for one check before writing: compare the value against your original source and confirm. The message deliberately carries no plaintext: only the total length, the segment lengths (for a JWT), and a fingerprint (the first 12 hex characters of sha256). That is enough to notice a value that was changed while being copied or transcribed, and nothing that would put the secret into the conversation or into the logs.

What this is not. We do not decide whether the credential is valid. There is no signature verification, no certs/JWKS lookup, no network request of any kind, and no server-side comparison — the server never sees the value you originally pasted, so the only side that can compare it is the client. This is a request for a real confirmation at write time, not a validity check.

Boundaries. It only applies when the arguments actually contain a credential-shaped string (otherwise the call is unchanged: one shallow scan, no network). It only applies when the client supports interactive form elicitation; a client that cannot ask proceeds as before, so an unattended client is not blocked. And a check that returns within a few hundred milliseconds counts as "nobody looked at it": unlike the deletion confirmation — where a client answering for itself is treated as "you were not asked" and the call proceeds — a credential write is not executed, because a value nobody compared is exactly the case this guards against. When the guard declines, the result says "not executed" without being marked as an error, so a model does not retry it blindly.

VariableEffect
CLOUDBASE_MCP_SKIP_CREDENTIAL_GUARDComma-separated. Accepts a tool name (manageCloudRun) or a single action (manageCloudRun.updateConfig), case-sensitive, no wildcard. Unknown entries are logged and ignored rather than failing the server

Environment panel (MCP Apps)

The panel is on by default. Set CLOUDBASE_MCP_UI=off to hide it. Where the client declares the io.modelcontextprotocol/ui extension, auth also opens a panel (ui://cloudbase/get-started). It consumes the structured result that this auth call already returned and shows the connection status: region, scope, and the environment ID. Signed-out users get a sign-in action. When no environment is bound, clicking a row binds it.

The panel does not touch cloud resources, but it is not a read-only surface. It makes two kinds of calls:

  • auth(status) — read-only, fired by "Re-check".
  • auth(set_env) — fired when you click an environment row. It only rebinds the local environment for this session (an environment-scoped API key still cannot reach another environment), but it changes which environment every subsequent tool call uses, so pick the row deliberately.

Every other action just hands a sentence to the conversation. A result that carries a credentials block (for example auth(get_temp_credentials) with reveal) does not open "View raw response", so that fold never shows the key.

Clients that do not render MCP Apps are unaffected: auth keeps the same title, description, arguments and output, and resources/list stays empty, so nothing new appears in a resource browser.

IDE config snippets

Cursor (.cursor/mcp.json)
json
{  "mcpServers": {    "cloudbase": {      "command": "npx",      "args": ["@cloudbase/cloudbase-mcp@latest"]    }  }}
WindSurf (.windsurf/settings.json)
json
{  "mcpServers": {    "cloudbase": {      "command": "npx",      "args": ["@cloudbase/cloudbase-mcp@latest"]    }  }}
CodeBuddy

CloudBase is built in; manual MCP config is usually unnecessary.

Others: IDE setup.

Docs

License

MIT · TencentCloudBase

来源:mcp/README.md,提交 e01117b

工具

0
该服务器需要登录,因此 SourceWeft 无法在没有账号的情况下读取其工具,也未收录。已连接账号所能看到的内容可能因账号及其权限而异。

版本历史

13
  1. v2.37.5最新Nov 7, 2026
  2. v2.37.4Nov 4, 2026
  3. v2.37.3Nov 4, 2026
  4. v2.37.1Nov 3, 2026
  5. v2.36.2Oct 29, 2026
  6. v2.36.1Oct 21, 2026
  7. v2.36.0Oct 19, 2026
  8. v2.35.2Oct 13, 2026
  9. v2.35.1Oct 10, 2026
  10. v2.34.8Sep 30, 2026
  11. v2.34.6Sep 21, 2026
  12. v2.34.5Sep 20, 2026
  13. v2.34.4Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分