CloudOps MCP Server
CloudOps MCP Server
Servidor MCP (Model Context Protocol) unificado de operaciones en la nube, que dota a los Agentes de IA de capacidades integrales de operaciones en la nube.
Un único MCP Server gestiona simultáneamente Alibaba Cloud + Tencent Cloud, cubriendo 6 escenarios principales: gestión de servidores, despliegue de proyectos, consultas de bases de datos, operaciones con archivos, consulta de instancias en la nube y gestión de DNS/CDN, con 26 herramientas.
Versión
Versión actual: v1.0.0 (consulte CHANGELOG.md para más detalles).
Related MCP server: Coolify MCP Tools
Navegación de documentación
README.md (este archivo): Documento general del conector — listado de herramientas, instalación en un clic (copiar y pegar a la IA), instalación manual, asistente de configuración, arquitectura, detalle de herramientas, guía de extensión.
OPERATIONS.md: Playbook real de operaciones (P1–P8), que recopila manuales prácticos de tipo «objetivo + proceso» como «obtener claves / subir clave pública SSH / establecer sudo NOPASSWD / cambiar el origen en CDN». Consúltelo primero cuando necesite operar manualmente la consola en la nube.
CHANGELOG.md: Registro de actualizaciones de versiones.
Resumen de herramientas (26)
Módulo | Herramientas | Descripción |
Gestión de servidores |
| Ejecución remota de comandos SSH, información del sistema, listado de servidores, registro de servidores en tiempo de ejecución |
Despliegue de proyectos |
| Git pull/compilación/reinicio, despliegue Docker, despliegue con script personalizado (script) |
Base de datos |
| Consultas SQL, gestión de tablas (compatible con túnel SSH) |
Gestión de archivos |
| Listado/lectura/escritura/búsqueda de archivos remotos |
Plataforma en la nube |
| Alibaba Cloud ECS + SWAS (ligero) + Tencent Cloud CVM + Lighthouse (ligero) |
DNS/CDN |
| Resolución DNSPod de Tencent Cloud + dominios acelerados CDN/refresco de caché/consulta de progreso de tareas de refresco |
Instalación en un clic (copiar y pegar a la IA) ⭐ Recomendado
El repositorio es público; cualquier herramienta de IA compatible con MCP de terceros puede clonarlo y usarlo directamente. Copie el siguiente texto tal cual y péguelo a su asistente de IA; este completará por sí mismo: clonar → leer documentación → instalar dependencias → configurar → registrar el conector → verificar las 26 herramientas. Compatible con WorkBuddy, Hermes Agent, Claude Code, Codex CLI y otros agentes principales. Más rápido que la instalación manual; úselo preferentemente.
请帮我安装并学会使用 CloudOps MCP Server(统一云运维 MCP 连接器,GitHub: https://github.com/rowanlin-dev/cloud-ops-mcp)。
步骤:
1. 克隆仓库:git clone https://github.com/rowanlin-dev/cloud-ops-mcp.git && cd cloud-ops-mcp
2. 通读仓库内 README.md 与 OPERATIONS.md,掌握 26 个工具(server_exec / deploy_project / db_query / file_list / cloud_list_instances / dns_list_domains / cdn_refresh / cdn_task_status 等)的能力与用法
3. 安装依赖:npm install
4. 初始化配置:cp .env.example .env,然后引导我填写最小配置(至少一台 SSH 服务器:host / username / privateKey 或 password;云 AK、数据库等用到再填)
5. 按下方「各客户端注册方式」把我注册为 MCP 连接器
6. 验证:重启后应能列出 26 个工具,用 server_info 或 server_exec 测试连通
注意:.env 含云密钥、SSH 私钥路径等敏感信息,绝不可提交到 git(.gitignore 已排除)。Métodos de registro en cada cliente
Sustituya <ruta> por su ruta real de clonación (p. ej. E:/WorkSpace/cloud-ops-mcp, /home/user/cloud-ops-mcp).
El .env se carga automáticamente según la ruta del código fuente (no depende del directorio de inicio del proceso), por lo que los siguientes métodos de registro no requieren configurar un directorio de trabajo adicional.
Cliente | Método de registro | Ubicación de configuración |
WorkBuddy | Editar JSON (ver abajo) |
|
Hermes Agent | Editar YAML (ver abajo) |
|
Claude Code | Un comando |
|
Codex CLI | Editar TOML (ver abajo) |
|
WorkBuddy (~/.workbuddy/mcp.json):
{
"mcpServers": {
"cloud-ops": {
"command": "npx",
"args": ["tsx", "<路径>/cloud-ops-mcp/src/index.ts"],
"cwd": "<路径>/cloud-ops-mcp"
}
}
}Hermes Agent (~/.hermes/config.yaml):
mcp_servers:
cloud-ops:
command: "npx"
args: ["tsx", "<路径>/cloud-ops-mcp/src/index.ts"]Claude Code (un comando; primero debe cd al directorio del proyecto o ejecutarlo dentro del proyecto):
claude mcp add --transport stdio cloud-ops -- npx tsx <路径>/cloud-ops-mcp/src/index.tsCodex CLI (~/.codex/config.toml):
[mcp_servers.cloud-ops]
command = "npx"
args = ["tsx", "<路径>/cloud-ops-mcp/src/index.ts"]Tras el registro, reinicie el cliente de IA correspondiente (o ejecute su comando de recarga de MCP, como
/reload-mcpen Hermes) para ver las 26 herramientas, comoserver_exec,deploy_project,db_query,cdn_refresh, etc.
Instalación manual (inicio rápido)
A continuación se muestran los pasos de instalación manual (clonar → configurar → registrar → verificar). ¿Quiere ir más rápido? Use la «instalación en un clic (copiar y pegar a la IA)» anterior para que la IA lo complete automáticamente.
1. Clonar e instalar
git clone <your-repo-url> cloud-ops-mcp
cd cloud-ops-mcp
npm installEl proyecto utiliza tsx como runtime de TypeScript; no requiere paso de compilación.
2. Configuración
cp .env.example .env
# 编辑 .env 填入你的配置Configuración mínima (solo SSH):
SSH_HOST=your-server-ip
SSH_PORT=22
SSH_USER=root
SSH_PRIVATE_KEY=~/.ssh/id_rsaConsulte .env.example para ver todos los elementos de configuración; admite múltiples servidores, bases de datos y claves AK de Alibaba Cloud/Tencent Cloud.
💡 Registro de servidores en tiempo de ejecución: además de editar manualmente
SSH_SERVERSen.env, también puede usar la herramientaserver_addpara registrar en tiempo de ejecución (escribe en.envy actualiza la caché en memoria en caliente, sin necesidad de reiniciar el conector). Consulte «Detalle de herramientas → server_add» más abajo.
3. Registro en el cliente MCP (cualquier herramienta de IA compatible con MCP de terceros)
Este conector no es exclusivo de WorkBuddy. Siempre que su herramienta de IA cumpla dos requisitos, podrá usarlo:
Poder instalar el skill kimi-webbridge (para la automatización de respaldo de consolas sin API pública);
Ser compatible con la instalación de conectores MCP de terceros (protocolo stdio). Herramientas habituales como WorkBuddy, Claude Desktop, Cursor, VS Code (extensiones Cline/Continue, etc.) son compatibles.
Fragmento de registro genérico (sustituya /absolute/path/to/cloud-ops-mcp por su ruta real):
{
"mcpServers": {
"cloud-ops": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/cloud-ops-mcp/src/index.ts"],
"cwd": "/absolute/path/to/cloud-ops-mcp"
}
}
}Ubicación de los archivos de configuración de cada cliente:
Cliente | Ruta del archivo de configuración |
WorkBuddy |
|
Claude Desktop | macOS |
Claude Code |
|
Codex CLI |
|
Hermes Agent |
|
Cursor |
|
VS Code (Cline/Continue) | Elemento de configuración MCP en la configuración de la extensión |
cwddebe apuntar al directorio raíz del proyecto; el MCP Server necesita cargar.envynode_modulesdesde ese directorio. De forma predeterminada, el asistente de configuración no reescribe automáticamente la configuración MCP de ningún cliente; si desea que el asistente la escriba automáticamente, puede establecer la variable de entornoCLOUD_OPS_MCP_CONFIG_PATHapuntando a la ruta del archivo de configuración de destino (opcional).
4. Verificación
# 测试阿里云工具
npx tsx src/test-aliyun.ts
# 测试 SSH 工具
npx tsx src/test-ssh.ts
# 直接启动 MCP Server(查看日志)
npx tsx src/index.tsAsistente de configuración (recomendado)
El asistente de configuración es una interfaz web que le permite editar visualmente en el navegador todo el contenido de .env: tanto la obtención automática (depende de Kimi WebBridge escaneando la consola en la nube) de instancias y claves en la nube con relleno automático, como el relleno manual de todos los campos: ruta de la clave privada SSH, contraseña de inicio de sesión remota, credenciales de bases de datos, valores predeterminados de despliegue, etc. Incluso usuarios sin experiencia pueden empezar a usarlo directamente.
Siempre puede editar manualmente el archivo
.enven cualquier momento (consulte el playbook manual enOPERATIONS.md); el asistente es solo una entrada más amigable, no la única vía.
Qué configuración debe preparar primero (necesaria / opcional)
Elemento de configuración | Necesaria / Opcional | Función | Método de relleno |
Servidor SSH ( | Necesaria | Ejecución remota de comandos / despliegue / túnel de base de datos | Obtención automática por el asistente o relleno manual |
Base de datos ( | Opcional | Consultas MySQL (compatible con túnel SSH) | Solo relleno manual |
Alibaba Cloud ( | Opcional | Consulta de instancias ECS / SWAS | Obtención automática por el asistente o relleno manual |
Tencent Cloud ( | Opcional | Consulta de CVM / Lighthouse, refresco CDN, DNSPod | Obtención automática por el asistente o relleno manual |
Valores predeterminados de despliegue ( | Opcional | Comandos predeterminados de compilación/reinicio de | Solo relleno manual |
Solo el servidor SSH es obligatorio; las claves AK de la nube, las bases de datos y los valores predeterminados de despliegue se configuran «solo si se usan». Para despliegues puramente manuales (p. ej. solo
server_exec+deploy_project), basta con configurar SSH.
Requisitos previos
Proceso demonio de automatización del navegador Kimi WebBridge (
npm run configlo detecta / inicia / instala automáticamente; también puede instalarlo manualmente)La extensión del navegador debe instalarse manualmente: https://www.kimi.com/zh-cn/features/webbridge
Rol de Kimi WebBridge: se utiliza para aquellas operaciones de consola sin una API pública limpia (por ejemplo, iniciar sesión por escaneo de código en la consola del proveedor de la nube, leer AK/SK, algunas configuraciones avanzadas de CDN). Para capacidades que ya tienen API pública (configuración de claves, refresco de caché CDN, consulta de instancias, etc.), se prioriza la automatización con herramientas; Kimi WebBridge es el «respaldo opcional cuando no hay API».
Pasos de uso
# 1. 启动配置向导(会自动检测 / 启动 / 安装 Kimi WebBridge,无需手动先 start)
npm run config
# 2. 打开浏览器访问 http://localhost:3456
# 3. 点击「阿里云全自动配置」或「腾讯云全自动配置」
# 4. 扫码登录云控制台(唯一手动步骤)
# 5. 向导自动读取服务器实例(阿里云同时扫描 ECS + SWAS 轻量服务器,腾讯云扫描 CVM + Lighthouse)和 AK/SK
# 6. 点击「保存配置」完成Kimi WebBridge se gestiona automáticamente:
npm run configdetecta automáticamente el proceso demonio — si ya está en ejecución, lo usa directamente; si está instalado pero no en ejecución, lo inicia automáticamente; si no está instalado, lo instala automáticamente con el comando oficial (Windows:irm https://cdn.kimi.com/webbridge/install.ps1 | iex; macOS/Linux:curl -fsSL https://cdn.kimi.com/webbridge/install.sh | bash) y luego lo inicia. Si la instalación automática falla o prefiere hacerlo manualmente, instálelo usted mismo con los comandos anteriores.
⚠️ La extensión del navegador debe instalarse manualmente: el proceso demonio puede instalarse de forma automatizada, pero la extensión del navegador (que permite al demonio tomar el control de su sesión real del navegador) no puede instalarse automáticamente. Instálela manualmente en https://www.kimi.com/zh-cn/features/webbridge e inicie sesión. WebBridge se usa únicamente como respaldo para la «obtención automática de AK de la nube»; si no está instalado, el asistente aún permite rellenar
.envmanualmente; no bloquea el proceso.
Usuario RAM (recomendado, automático)
Tanto Alibaba Cloud como Tencent Cloud muestran un cuadro de confirmación que recomienda usar claves de RAM/cuenta secundaria en lugar de las claves de la cuenta principal al «crear claves». El asistente de configuración ahora reconoce este cuadro emergente y deriva automáticamente al flujo de subusuario:
Cree un subusuario dedicado
cloud-ops-mcpen la consola RAM/CAM (marque acceso programático);Genere una AccessKey para ese subusuario y lea KeyId/Secret;
Adjunte, en la medida de lo posible, las políticas de permisos mínimos necesarias para el conector (solo lectura de ECS/SWAS/Lighthouse, refresco CDN, resolución DNS);
Escriba la clave del subusuario en
.env; nunca guarde la clave de la cuenta principal.
Si la asociación automática de políticas falla, el asistente generará MANUAL_STEPS.md, que contiene el JSON de las políticas de permisos mínimos que deben asociarse manualmente; complételas siguiendo los pasos. Todas las señales de detección de la interfaz de la consola son listas configurables; si el reconocimiento falla, siempre se degrada a pasos manuales; nunca se interpreta erróneamente «haber hecho clic en el cuadro emergente» como éxito.
Permisos mínimos (deshabilitar el administrador completo
AdministratorAccess/QcloudAdministrator): Alibaba CloudAliyunECSReadOnlyAccess/AliyunSWASReadOnlyAccess/AliyunCDNFullAccess/AliyunDNSFullAccess; Tencent CloudQcloudCVMReadOnlyAccess/QcloudLighthouseReadOnlyAccess/QcloudCDNFullAccess/QcloudDNSPodFullAccess.
Comportamiento idempotente al volver a ejecutar el asistente (importante)
El asistente de configuración puede ejecutarse repetidamente de forma segura; ya se ha tratado la idempotencia frente a «crear AK repetidamente / crear subusuarios repetidamente»:
Las AK existentes no se vuelven a obtener: si en
.envya existeALIBABA_CLOUD_ACCESS_KEY_IDde Alibaba Cloud, al hacer clic en «Configuración automática completa de Alibaba Cloud» se conservará la configuración existente de forma predeterminada, se omitirá la obtención automática por navegador y se mostrará en el registro «se ha conservado lo existente». Si realmente desea volver a capturarla, haga clic en el botón «Volver a obtener» (sigue la ruta de actualización forzada).Reutilización automática del subusuario RAM/CAM: el asistente usa fijamente un subusuario llamado
cloud-ops-mcp. Al volver a ejecutarlo, primero comprueba si ese subusuario ya existe — si existe, lo reutiliza; no lo crea de nuevo (en Alibaba Cloud,CreateUsercon el mismo nombre devuelve un error directamente; ese era precisamente el problema de ejecutar repetidamente en versiones anteriores).Rotación de AccessKey en lugar de acumulación: al reutilizar un subusuario existente, el asistente primero limpia las AccessKey existentes de ese subusuario (best-effort) y luego crea un nuevo par que escribe en
.env, evitando superar el límite de 2 claves o la acumulación prolongada.Deja rastro para facilitar la limpieza: todo subusuario RAM creado/reutilizado por el asistente se marca en
.envconALIYUN_RAM_USER=cloud-ops-mcp. Si en el futuro desea eliminarlo por completo, basta con borrar ese subusuario en la consola RAM de Alibaba Cloud (antes de eliminarlo, confirme que el conector ya no usa sus claves).
En una frase: hacer clic repetidamente en «Configuración automática completa» es seguro — o conserva, o reutiliza, o rota; no creará subusuarios ni claves de la nada.
Cerrar el proceso demonio tras completar la configuración
# 1. 关闭配置向导(在运行 npm run config 的终端按 Ctrl+C)
# 2. 关闭 Kimi WebBridge 守护进程
# Windows PowerShell:
& "$env:USERPROFILE\.kimi-webbridge\bin\kimi-webbridge.exe" stop
# 验证已关闭(无输出或进程不存在即已停止)
& "$env:USERPROFILE\.kimi-webbridge\bin\kimi-webbridge.exe" statusEl asistente de configuración es opcional. Editar manualmente el archivo
.envsiempre está disponible (consulte los playbooks manuales enOPERATIONS.md).
Interfaces API del asistente de configuración
El backend del asistente (Express) expone las siguientes interfaces para que las use el frontend:
Interfaz | Método | Función |
| GET | Comprueba el estado del proceso demonio de Kimi WebBridge |
| GET | Lee la configuración completa actual de |
| POST | Recibe el formulario completo y escribe de vuelta todo en |
| POST | Configuración automática completa de Alibaba Cloud (ECS + AK/SK) |
| POST | Configuración automática completa de Tencent Cloud (CVM + AK/SK) |
| POST | Comprueba si el usuario ha iniciado sesión en la consola en la nube |
| POST | Interfaz de compatibilidad: escribe de forma combinada |
Flujo totalmente automático (resumen)
Alibaba Cloud: abre la consola ECS → detecta/inicia sesión por escaneo → extrae IP y nombre de la lista de instancias → salta a «API Key» de RAM → reconoce el cuadro emergente «se recomienda usuario RAM» y deriva al flujo de subusuario → obtiene AK/SK → rellena el formulario.
Tencent Cloud: abre la consola CVM → detecta/inicia sesión por escaneo → extrae instancias → salta a «API Key» de CAM → reconoce el cuadro emergente y deriva al flujo de subusuario → obtiene SecretId/Key → rellena el formulario.
Las dos nubes pueden configurarse por separado; las configuraciones se fusionan en el mismo
.env.
Notas
La automatización del navegador puede requerir ajustes: la estructura de las páginas de la consola en la nube cambia; si la extracción automática falla, se muestra una vista previa de la página para facilitar la depuración.
Es posible que SecretKey no pueda extraerse automáticamente: algunas políticas de seguridad de plataformas en la nube ocultan el Secret; en ese caso, deberá copiarlo y pegarlo manualmente.
Ruta de la clave SSH: la configuración automática usa por defecto
~/.ssh/id_rsa; si la ruta es diferente, modifíquela manualmente en la vista previa de configuración (en Windows se recomienda usar la ruta absoluta/C:/Users/<USUARIO_LOCAL>/.ssh/...).Fusión de múltiples plataformas en la nube: puede hacer clic por separado en los botones de Alibaba Cloud / Tencent Cloud; ambas configuraciones se fusionarán en el mismo
.env.
Arquitectura
AI Agent(任意支持 MCP 的客户端,如 Claude / Cursor / WorkBuddy)
│
MCP Protocol (stdio)
│
CloudOps MCP Server (TypeScript + tsx)
│ │ │ │ │ │
server deploy db file cloud dnscdn ← 工具模块 (26 tools)
│ │ │ │ │ │
SSH MySQL Git AliSDK TcSDK DNSPod/CDN SDK
│ │ │ │ │ │
Alibaba Cloud / Tencent Cloud ← 目标云平台
(ECS, SWAS, CVM, Lighthouse, CDN, DNSPod)
Kimi WebBridge(可选)── 浏览器自动化,兜底无公开 API 的控制台操作Estructura del proyecto
cloud-ops-mcp/
├── src/
│ ├── index.ts # MCP Server 主入口
│ ├── config.ts # 配置加载(.env + 环境变量)+ 运行时 server_add
│ ├── types.ts # TypeScript 类型定义
│ ├── clients/
│ │ ├── ssh.ts # SSH 客户端 (ssh2)
│ │ ├── aliyun.ts # 阿里云客户端 (ECS + SWAS)
│ │ ├── tencent.ts # 腾讯云客户端 (CVM + Lighthouse,整包命名空间)
│ │ ├── cdn.ts # 腾讯云 CDN 客户端
│ │ └── dnspod.ts # 腾讯云 DNSPod 客户端
│ ├── tools/
│ │ ├── server.ts # 服务器管理 (exec/info/list/add)
│ │ ├── deploy.ts # 项目部署
│ │ ├── database.ts # 数据库
│ │ ├── file.ts # 文件管理
│ │ ├── cloud.ts # 云实例查询 (ECS/SWAS/CVM/Lighthouse)
│ │ └── dnscdn.ts # DNSPod + CDN 管理
│ ├── utils/
│ │ └── logger.ts # 日志
│ ├── config-wizard/ # 配置向导(可选,依赖 Kimi WebBridge)
│ │ ├── server.cjs # 向导后端
│ │ └── web/ # 向导前端
│ ├── test-aliyun.ts # 阿里云工具测试
│ └── test-ssh.ts # SSH 工具测试
├── .env.example # 配置模板
├── .gitignore
├── package.json
├── tsconfig.json
├── OPERATIONS.md # 运维 Playbook(P1–P7 实操手册)
└── README.md # 项目总文档(本文件)Detalle de herramientas
server_exec — Ejecución remota de comandos
参数: server(服务器名), command(命令), cwd(可选), timeout(可选, 默认60s, 最大600s)
超时: 默认 60 秒;构建/部署等长命令请显式加大 timeout;超时错误会附带提示
示例: 在 Tencent-LH 服务器上执行 docker psserver_add — Registro de servidores SSH en tiempo de ejecución
参数: name, host, port(默认22), username, privateKey(可选), password(可选)
行为: 写入 .env 的 SSH_SERVERS 并热更新内存缓存,无需重启连接器即可被 server_exec 使用
示例: server_add(name="Tencent-LH", host="<LIGHTHOUSE_PUBLIC_IP>", port=22, username="<SSH_USER>", privateKey="C:/Users/xxx/.ssh/id_ed25519")
注意: 特权写文件请用 `echo x | sudo tee file`,勿用 `sudo cmd > file`(重定向由非 sudo shell 执行会 Permission denied)deploy_project — Despliegue de proyectos
参数: server, projectPath, method(git-pull|upload|docker|script), branch, scriptCommand, buildCommand, restartCommand
示例: 将 /data/www/myapp 拉取最新代码并重启
script 方式: method="script", scriptCommand="bash /tmp/deploy_backend.sh" —— 在 projectPath 下执行自定义部署脚本
(适合「备份→停服→换包→启服」这类现成脚本化流程,执行超时 5 分钟)db_query — Consulta de bases de datos
参数: database(配置名), query(SQL), maxRows(默认100)
安全: 自动阻止 DROP/TRUNCATE/ALTER 等危险操作file_read / file_write / file_search — Operaciones con archivos
file_read: 读取远程文件内容(支持 tail 模式用于日志)
file_write: 写入内容到远程文件(建议配合 sudo tee 使用)
file_search: 用 grep 搜索文件内容cloud_list_instances — Listado de instancias en la nube
参数: provider(aliyun|tencent|all, 默认all)
支持:
- 阿里云 ECS + SWAS(轻量应用服务器) ← SWAS 自动扫描多个区域
- 腾讯云 CVM(云服务器) + Lighthouse(轻量应用服务器)cdn_refresh — Refresco de caché CDN (automatizado, sin entrar en la consola)
参数: urls(URL/目录列表), type(url|path)
示例: cdn_refresh(urls=["https://<YOUR_DOMAIN>/","https://<YOUR_DOMAIN>/index.html"], type="url")
注意: type=path 时每个目录路径必须以 / 结尾(如 https://<YOUR_DOMAIN>/assets/),否则校验失败cdn_task_status — Consulta de progreso de tareas de refresco CDN (nuevo en v1.0.0)
参数: taskId(可选,cdn_refresh 返回的任务ID), limit(默认10)
示例: cdn_task_status(taskId="<TASK_ID>") —— 查询任务是否 done/process/fail
用途: 刷新后轮询任务状态,替代「等 60 秒盲查 CDN」;留空可查最近记录Para más instrucciones manuales de tipo «objetivo + proceso» (obtener claves, subir clave pública SSH, establecer sudo NOPASSWD, cambiar el origen principal en CDN, etc.), consulte
OPERATIONS.md.
Escenarios de uso habituales
A continuación se muestran flujos típicos en los que el Agente de IA impulsa el conector mediante lenguaje natural:
Ver el estado del servidor: «Mira la CPU y la memoria de Tencent-LH» →
server_info→ presentación en tabla.Desplegar un proyecto: «Despliega myapp en Tencent-LH» →
deploy_project(SSH: obtener el código más reciente → compilar → reiniciar).Consultar la base de datos: «Consulta los primeros 10 registros de la tabla de usuarios de prod-db» →
db_query(conexión a la base de datos mediante túnel SSH, con interceptación automática de SQL peligroso).Gestionar recursos en la nube: «Lista todas las instancias Lighthouse de Tencent Cloud en la región de Guangzhou» →
cloud_list_instances tencent.Refrescar CDN: «Refresca la caché de <YOUR_DOMAIN>» →
cdn_refresh.
Plataformas en la nube compatibles
平台 | 产品 | SDK |
Alibaba Cloud | ECS (Elastic Compute Service) |
|
Alibaba Cloud | SWAS (Servidor de aplicaciones ligeras) |
|
Tencent Cloud | CVM (Cloud Virtual Machine) |
|
Tencent Cloud | Lighthouse (Servidor de aplicaciones ligeras) |
|
Tencent Cloud | CDN (Red de distribución de contenido) |
|
Tencent Cloud | DNSPod (Resolución de dominios) |
|
El SDK de Tencent Cloud adopta el paquete completo
tencentcloud-sdk-nodejsy se accede por espacio de nombres (cvm/lighthouse), evitando así el error "Cannot find module" al importar subpaquetes de productos no instalados. Tanto el paquete completo como los subpaquetes por producto se colocan enoptionalDependencies; si no están instalados, no afectan al resto de funciones.
Filosofía operativa: automatización primero, manual con playbook
Los límites de diseño del conector (definidos por el propietario):
Operar las APIs públicas de Alibaba Cloud/Tencent Cloud — cuando exista una API limpia (configuración de claves, purga de CDN, consulta de instancias, resolución DNS), se prioriza la automatización con herramientas.
Conectarse a servidores en la nube mediante SSH para ejecutar comandos —
server_addpara registrar +server_execpara ejecución remota.(Opcional) Invocar la automatización del navegador Kimi WebBridge — para operaciones de consola sin API pública (inicio de sesión por código QR, lectura de AK/SK, algunas configuraciones avanzadas de CDN).
Si el usuario debe operar manualmente, se debe proporcionar una explicación de «objetivo + procedimiento» — cuando falte capacidad de API, el conector genera pasos estándar y una persona los ejecuta en la consola.
Los playbooks concretos (con comandos, rutas de consola y trampas conocidas) se mantienen unificados en OPERATIONS.md.
Características de seguridad
Autenticación por clave SSH con prioridad sobre contraseñas
Las consultas a bases de datos bloquean automáticamente operaciones peligrosas (DROP/TRUNCATE/ALTER)
Toda la configuración sensible (AK de nube, ruta de clave privada SSH) se gestiona mediante
.env, que ya está excluido en.gitignore; el archivo de clave privada SSH debe ubicarse en un lugar seguro propio (por ejemplo,~/.ssh/) y referenciarse por ruta mediante el campoprivateKey; no debe incluirse en el directorio del proyectoProtección contra inyección SQL (consultas parametrizadas, límite de tamaño del conjunto de resultados)
Mecanismo de tiempo de espera para la ejecución de comandos (60 s por defecto, máximo 10 minutos, configurable)
Validación de entrada para objetivos de purga de CDN (las URLs deben comenzar con http(s)://; las rutas de purga por directorio deben terminar en /)
server_addrealiza una validación de nombre al escribir en.envpara evitar sobrescribir servidores existentesSe recomienda que los permisos del archivo
.envsean de solo lectura/escritura para el usuario (chmod 600 .env)Rotar periódicamente las claves AK de los servicios en la nube; crear subcuentas dedicadas para el conector y aplicar el principio de mínimo privilegio (véase «Guía de configuración → Usuarios RAM» más arriba)
Guía de extensión
Añadir una nueva herramienta
Crear un nuevo módulo en
src/tools/Exportar la función
registerXxxTools(server: McpServer)Registrar en
src/index.ts
Añadir una nueva plataforma en la nube / producto
Crear o ampliar la encapsulación del SDK en
src/clients/(priorizar la reutilización de los espacios de nombres del paquete completotencentcloud-sdk-nodejs)Añadir el tipo de configuración en
src/config.tsAñadir la herramienta en
src/tools/cloud.ts
Licencia
MIT
Available Tools
26 toolscdn_list_domainsA
列出腾讯云 CDN 加速域名,包含状态、CNAME 与业务类型
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals that the tool returns status, CNAME, and business type, which gives useful behavioral context about the output. However, since no annotations are provided, the description carries the full burden of disclosing behavioral traits like pagination, permissions, or whether it is a read-only operation. It does not address these, so it only partially fulfills the requirement.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. It states the action and resource first, then lists the key expected output fields. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list operation with no output schema, the description covers the core purpose and key return fields. It is not exhaustive about potential pagination or output format details, but given the simplicity of the tool, the provided description is largely adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema imposes no burden. The description correctly implies that no inputs are needed. Baseline for zero-parameter tools is 4, which is appropriate here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb ('列出' / list) and a specific resource ('腾讯云 CDN 加速域名'), and it explicitly names the key output fields (status, CNAME, business type). This distinguishes it from sibling tools like dns_list_domains or cloud_list_instances without ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying that this tool targets CDN acceleration domains, which naturally sets it apart from DNS domain listing and cloud instance listing. However, it does not explicitly state when to use this tool over alternatives, but the resource naming makes the intended scenario evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdn_refreshA
刷新或预热腾讯云 CDN 缓存。type=url 刷新指定 URL;type=path 刷新指定目录(每个路径必须以 / 结尾,否则校验失败)
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | 刷新类型: url(刷新指定 URL) 或 path(刷新指定目录,路径须以 / 结尾) | |
| urls | Yes | 要刷新的 URL 或目录路径列表,例如 ["https://example.com/a.css"] 或 ["https://example.com/path/"] |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral disclosure burden. It does state the mutating behavior and a validation constraint, but it does not disclose that the operation is likely asynchronous, that it invalidates/purges cached content, or that it may have quotas/costs. The '预热' (preheat) wording is also inconsistent with the schema's type enum, which only describes refresh behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single well-structured sentence with the core action front-loaded and conditionals following. Every clause contributes useful information, and there is no filler or redundant explanation. It is appropriately sized for a two-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For correct input construction, the description is mostly complete: required parameters, type semantics, and path validation are covered. However, since there is no output schema, the description should at least hint at the return behavior (e.g., task ID) and note that progress can be checked via cdn_task_status. These gaps leave the agent without full end-to-end context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameter semantics baseline is 3. The description largely repeats what the schema already says about type and urls, adding no new meaning beyond restating the trailing-slash rule already present in the schema. It neither harms nor significantly improves parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the resource (Tencent Cloud CDN cache) and the action (refresh or preheat), and it breaks down behavior by type=url vs type=path. It does not explicitly contrast itself with sibling tools like cdn_task_status, but the action is distinct enough to be understood. The mention of '预热' (preheat) is not reflected in the enum, which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit conditional guidance on when to use type=url vs type=path, including the trailing-slash validation rule for paths. This is clear context for invoking the tool. However, it does not mention the natural alternative/follow-up cdn_task_status for checking the refresh task result, so exclusion guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cdn_task_statusA
查询腾讯云 CDN 刷新任务的状态(fail 失败 / done 成功 / process 进行中)。可按任务ID查询,也可查询最近记录
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | 最多返回条数,默认 10 | |
| taskId | No | 刷新任务 ID(cdn_refresh 返回)。留空则返回最近的刷新记录 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral burden. It discloses the possible return statuses (fail/done/process) and the two query modes, which is useful. However, it does not describe the output shape, behavior for unknown task IDs, or ordering/limiting behavior beyond the schema default.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the action, status vocabulary, and both invocation modes. Every phrase adds useful information, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple status-query tool with two optional parameters and no output schema, the description adequately covers the core invocation choices and return status semantics. Combined with the fully documented input schema and the related cdn_refresh sibling, the agent has enough context to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes both parameters completely, including the default for limit and the taskId behavior when left blank (100% schema coverage). The description does not add additional parameter meaning beyond what the schema states, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: querying the status of Tencent Cloud CDN refresh tasks, and enumerates the possible status values (fail/done/process). This clearly identifies the action and distinguishes it from related tools like cdn_refresh, which creates tasks. It does not explicitly name an alternative, but the purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage context: query by task ID or query recent records. The schema further clarifies that taskId comes from cdn_refresh and that leaving it blank returns recent records. It does not explicitly state when not to use this tool, but no sibling offers equivalent status-checking functionality, so the guidance is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_instance_infoA
获取指定云实例的详细信息。阿里云自动识别 ECS/轻量应用服务器(SWAS);腾讯云自动识别 CVM/轻量应用服务器(Lighthouse)
| Name | Required | Description | Default |
|---|---|---|---|
| provider | Yes | 云服务商 | |
| instanceId | Yes | 实例 ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It reveals the key auto-detection behavior for Aliyun (ECS/SWAS) and Tencent (CVM/Lighthouse), which is valuable. However, it does not state that the operation is read-only, what happens on invalid IDs, or any response characteristics, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the primary purpose and then provides the provider-specific nuance. Every word earns its place, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool, the description is reasonably complete, but the lack of an output schema means the agent cannot know what 'detailed information' will contain. Additionally, no error or permission context is provided, and with no annotations, the description could do more to round out the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides 100% coverage with descriptions and an enum for provider, so the baseline is 3. The tool description adds minimal direct parameter detail, though the auto-detection hint implies the instanceId can be any supported type. This is sufficient but not compensatory.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('获取') and resource ('指定云实例的详细信息'), and adds the cross-provider auto-detection nuance, which distinguishes it from sibling listing tools like cloud_list_instances. It is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: given a specific instance ID and provider, it retrieves details and auto-detects the instance type. However, it does not explicitly state when to use this tool over alternatives like server_info or cloud_list_instances, nor any exclusions or conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cloud_list_instancesA
列出阿里云实例(ECS + 轻量应用服务器 SWAS)和/或腾讯云实例(CVM 云服务器 + Lighthouse 轻量应用服务器)。SWAS 会自动扫描多个区域查找实例
| Name | Required | Description | Default |
|---|---|---|---|
| provider | No | 云服务商: aliyun(阿里云), tencent(腾讯云), all(全部) | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does reveal one useful behavioral trait: SWAS automatically scans multiple regions, implying a broader and potentially slower search. However, it fails to state whether the operation is read-only, whether authentication is required, or how results are handled if no instances are found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long with zero redundancy. It front-loads the core action (listing instances) and immediately enumerates the supported cloud providers and instance types. The final clause about SWAS region scanning adds important detail without bloating the text. This is an efficiently structured description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and no annotations, and the description does not indicate what data is returned for each instance, whether pagination is applied, or what error handling looks like. Given the tool's simplicity (one optional parameter), this is a moderate gap. The description does confirm the scope of the listing, so it is not entirely incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides full coverage for the single parameter ('provider'), including an enum and description. The tool description repeats the provider names but adds no new semantic information about parameter behavior, such as the effect of choosing 'all' or the format of the provider value. This meets the baseline expected when schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it lists Alibaba Cloud instances (ECS + SWAS) and/or Tencent Cloud instances (CVM + Lighthouse), using a specific verb and enumerating exact resource types. It also notes that SWAS automatically scans multiple regions, which further specifies the tool's scope. This provides a clear, unambiguous purpose that distinguishes it from generic server listing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no explicit guidance on when to use this tool versus alternatives like server_list or cloud_instance_info. It does not mention any exclusions, conditions, or alternatives, leaving the agent to infer usage solely from the tool's name. This is a notable gap given the many sibling tools present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cos_check_public_readA
综合检查腾讯云 COS 存储桶是否对匿名(未授权)开放读:同时校验桶 ACL 与桶策略是否包含匿名读授权。用于上线前安全自检,确认私有证件照等敏感对象不会泄露。
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | Yes | 存储桶名称 | |
| region | No | 存储桶地域,不填则用全局配置 region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It clearly signals a non-mutating inspection via '检查/校验/自检' and discloses exactly what is evaluated (ACL and policy for anonymous read). It does not mention required credentials or explicit 'no modification' wording, but the read-only intent is strongly evident.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense, front-loaded sentence with no filler: it states the action, the exact check scope, and the intended use case. Every clause contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete for a simple two-parameter check: purpose, scope, and use case are covered. There is no output schema, so return-value shape is left implicit, but '是否...开放读' strongly implies a boolean/verdict result, which is acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and both parameters ('bucket', 'region') have adequate descriptions. The tool description adds no parameter-specific detail beyond the schema, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a precise action—'综合检查' a COS bucket for anonymous read access—and explicitly scopes it to both bucket ACL and bucket policy. This clearly distinguishes it from sibling tools like cos_get_bucket_acl and cos_get_bucket_policy, which inspect only one source.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States a concrete usage context: pre-launch security self-check to confirm private sensitive objects will not leak. It does not explicitly name when to prefer the individual ACL/policy sibling tools, but the '同时校验' phrasing implies those are for single-source checks, so the guidance is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cos_get_bucket_aclA
获取腾讯云 COS 存储桶的访问权限(ACL),包含 ACL 级别与各项授权(读/写/ACP/完全控制)。用于确认桶是否对匿名开放读。
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | Yes | 存储桶名称,例如 campusbuzz-images-1312192644 | |
| region | No | 存储桶地域,例如 ap-guangzhou(不填则用全局配置 region) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It clearly indicates a read operation ('获取') and describes what information is returned, but it does not disclose potential error conditions, permission requirements, or whether the ACL data is always present. Basic behavioral context is present, but depth is limited.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler. The core function is stated first, the output contents are listed, and the intended use case is appended. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter read-only tool with no output schema, the description gives enough context: what is returned and why it would be used. It does not describe response formatting, but that is not essential here. A dedicated alternative for public-read checks exists but is not mentioned, slightly reducing completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (bucket and region) with examples and defaults. The description adds no additional parameter semantics beyond what the schema provides, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: fetching a Tencent Cloud COS bucket's ACL, including ACL level and grants (read/write/ACP/full control). This is clear and distinct enough from tool names like cos_get_bucket_policy, though it does not explicitly name or contrast sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a concrete use case: confirming whether the bucket allows anonymous read access. However, it does not say when not to use this tool or mention dedicated siblings like cos_check_public_read or cos_get_bucket_policy, leaving the agent to infer routing correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cos_get_bucket_policyA
获取腾讯云 COS 存储桶的桶策略(Bucket Policy)。用于检查是否存在向匿名主体授予读权限的策略。
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | Yes | 存储桶名称 | |
| region | No | 存储桶地域,不填则用全局配置 region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of conveying behavior. '获取' and '用于检查' clearly indicate a read-only operation, but the description does not disclose permission requirements, error conditions, or behavior when no bucket policy exists. This is acceptable for a simple getter but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences with no filler. The operation is stated first, and the use case follows immediately, making it easy to scan and process.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter read-only tool with full schema coverage, the description covers the main purpose and a common use case. It is complete enough for selection and invocation, though it leaves return-value details and edge cases unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents the bucket name and optional region with a default behavior. The description adds no additional parameter-level detail, so it meets the baseline but does not exceed it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('获取') and identifies the exact resource ('存储桶的桶策略'), and adds the practical purpose of checking for anonymous read grants. It is clear, but it does not explicitly differentiate from the sibling cos_check_public_read, which may overlap in intent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence gives a concrete use case: verifying whether any policy grants anonymous principals read access. This provides context for when to call the tool, though it does not state when to prefer alternatives such as cos_check_public_read or cos_get_bucket_acl.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
cos_set_bucket_privateA
将腾讯云 COS 存储桶 ACL 设为「私有读写」(覆盖式 PUT,ACL='private')。用于修复因「公有读」导致敏感对象可被匿名访问的安全风险。
| Name | Required | Description | Default |
|---|---|---|---|
| bucket | Yes | 存储桶名称 | |
| region | No | 存储桶地域,不填则用全局配置 region |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It discloses that this is an overwriting PUT operation that replaces the bucket ACL, and explains the security rationale. It could further warn about the impact on intentionally public content, but the core mutating behavior and result are clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no filler. The first sentence states the exact operation and mechanism; the second gives the practical use case. It is front-loaded and every clause contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, parameters are fully schema-documented, and the description explains both the action and the security context. It does not describe the response or post-verification steps, but for a straightforward ACL-setting operation the description is sufficiently complete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented in the schema. The description adds no additional parameter-level detail, which is acceptable given the schema fully handles parameter semantics. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: it explicitly sets the COS bucket ACL to private read/write via an overwrite PUT with ACL='private'. It clearly distinguishes itself from the read-only siblings like cos_get_bucket_acl and cos_check_public_read by stating the mutating action and target state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: it is meant to remediate the security risk where public-read access allows anonymous access to sensitive objects. It does not explicitly state when not to use it or mention alternative/complementary tools, but the intended scenario is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_list_databasesA
列出 MySQL 服务器上所有数据库
| Name | Required | Description | Default |
|---|---|---|---|
| database | Yes | 通过哪个数据库配置的连接来查询(用于获取连接信息) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The word 'list' implies a read-only operation, which is useful context given that no annotations are provided. However, the description does not explicitly state that no data is modified, what the return value looks like, or whether special connection permissions are required. It is adequate but not richly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence with no filler or redundant content. It conveys the essential operation efficiently, which is ideal for a simple listing tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one well-documented parameter and no output schema, the description is mostly sufficient. It clarifies the scope ('all databases') and the server type ('MySQL'). It could have added explicit return-format details, but the operation is straightforward.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the description does not need to compensate. The tool description itself does not elaborate on the 'database' parameter, but the input schema already explains that it refers to the connection configuration. This meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (list) and the resource (all databases on the MySQL server), so an agent can quickly understand the tool's core function. However, it does not explicitly differentiate from sibling tools like db_list_tables or db_query, though the resource scope is clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for enumerating databases on a MySQL server, but it provides no explicit guidance on when to use it instead of db_query, db_list_tables, or other listing tools. No exclusions or alternative selection criteria are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_list_tablesA
列出指定数据库中的所有表及其行数估算
| Name | Required | Description | Default |
|---|---|---|---|
| dbName | No | 要查询的数据库名(可选,默认使用 DATABASES 配置中的 database) | |
| database | Yes | 数据库配置名称 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It usefully discloses that row counts are estimates rather than exact values, which is meaningful for an agent. However, it does not explicitly state read-only behavior, permission requirements, or response shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded with the action and target, with no filler or repetition. It is appropriately concise for a simple listing tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity listing tool with fully documented parameters and no output schema, the description conveys the essential return content: tables and row-count estimates. It could be slightly more explicit about the database config name versus actual database name distinction, but the schema already covers that.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both database and dbName already documented clearly. The description adds no parameter-level detail beyond the generic phrase 'specified database', so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('列出' / list) and a precise resource: all tables in a specified database, including their row-count estimates. This clearly distinguishes it from siblings like db_list_databases (databases vs. tables) and db_query (querying vs. listing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use this tool versus alternatives such as db_query or db_list_databases, and no exclusions or prerequisites are mentioned. The intended usage is only implied by the tool name and general wording.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
db_queryB
在指定数据库上执行 SQL 查询(SELECT/INSERT/UPDATE/DELETE)。只读查询建议添加 LIMIT
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | 要执行的 SQL 语句。只读查询建议添加 LIMIT 子句 | |
| maxRows | No | 最大返回行数,默认 100 | |
| database | Yes | 数据库名称,对应 .env 中 DATABASES 配置的 name 字段 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose that the tool can perform writes and deletes (INSERT/UPDATE/DELETE) and hints at large result sets via the LIMIT recommendation. However, it omits important behavioral context such as whether mutations are immediately committed, whether confirmation is required, or what the response looks like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief, front-loaded with the core purpose, and contains no filler. The LIMIT recommendation is useful but slightly redundant with the schema description, so it does not earn a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter tool with fully documented schema properties, this description is mostly adequate. Missing context includes the return format for writes, error behavior, and how this tool relates to the specialized database listing siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters. The description adds no new parameter-level semantics; the LIMIT advice is also present in the query parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it executes SQL queries on a specified database, listing the supported statement types (SELECT/INSERT/UPDATE/DELETE). It implicitly differentiates from sibling list-only tools like db_list_databases and db_list_tables, though it does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is recommending LIMIT for read-only queries. There is no explicit direction on when to choose this generic SQL tool over specialized siblings, nor any when-not-to-use guidance for potentially destructive operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deploy_projectA
将项目部署到远程服务器。支持 git pull、npm install、构建、PM2/Docker 重启,以及自定义脚本(script)部署
| Name | Required | Description | Default |
|---|---|---|---|
| branch | No | Git 分支名称(仅 git-pull 方式生效) | main |
| method | No | 部署方式: git-pull(拉取代码), upload(上传文件), docker(镜像更新), script(执行自定义脚本) | git-pull |
| server | Yes | 目标服务器名称 | |
| skipBuild | No | 跳过构建步骤 | |
| projectPath | Yes | 项目在服务器上的绝对路径,如 /data/www/myapp | |
| skipRestart | No | 跳过重启步骤 | |
| buildCommand | No | 构建命令,默认使用 .env 中 DEPLOY_BUILD_COMMAND 或 'npm install && npm run build' | |
| scriptCommand | No | method=script 时的远程命令/脚本(在 projectPath 目录下执行),如 bash /tmp/deploy_backend.sh | |
| restartCommand | No | 重启命令,默认使用 .env 中 DEPLOY_RESTART_COMMAND 或 'pm2 restart app' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals meaningful behavior beyond the name: git pull, npm install, build, PM2/Docker restart, and custom script execution. With no annotations, it still does not disclose side effects, prerequisites such as credentials, or the risk of restarting/overwriting remote services, so it only partially carries the transparency burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence conveys purpose and key capabilities with no filler or repetition. It is compact but informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 9 parameters and 4 distinct methods, the description does not explain orchestration (e.g., how build/restart interact with each method, whether upload requires a source path, or what the tool returns). No output schema is provided, so an agent would struggle to predict response format or side effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The prose adds no parameter-level meaning beyond summarizing methods already documented in the enum description (git-pull, upload, docker, script).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific action and object: '将项目部署到远程服务器' (deploy a project to a remote server), then enumerates supported deployment methods. This clearly differentiates it from siblings like deploy_status (status checking) and server_exec (generic command execution).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is clear: this is the deployment tool for projects. However, it does not explicitly state when to prefer it over server_exec or how to choose among the four methods in terms of use cases, leaving the agent to infer routing from the method names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deploy_statusA
查看远程服务器上的项目部署状态:Git 状态、PM2/Docker 进程、端口监听等
| Name | Required | Description | Default |
|---|---|---|---|
| server | Yes | 目标服务器名称 | |
| projectPath | Yes | 项目在服务器上的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It signals a read-only action via the word '查看' (view) and names the status areas observed. However, it does not disclose requirements like SSH access, potential side effects, or the response format, leaving gaps beyond what is stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one concise sentence that front-loads the core purpose and immediately provides specific examples of what is checked. There is no redundant wording or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with only two simple parameters and no nested objects, the description is largely complete: it states the operation, the target (remote server/project), and the kinds of status supplied. The only missing piece is an explicit return format, but the informational content is sufficient for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema fully describes both parameters (server name and project path) with 100% coverage, so the baseline is 3. The description adds no additional parameter-level meaning, but it also does not need to given the schema's completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function—viewing deployment status on a remote server—and enumerates concrete items inspected (Git status, PM2/Docker processes, port listening). This specific verb-plus-resource phrasing distinguishes it from related siblings like deploy_project or server_exec.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a clear usage context: inspect deployment state for a project on a given server. It does not explicitly list alternatives or when-not-to-use, but the scope is unambiguous enough that an agent can select it appropriately without confusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dns_create_recordA
为指定域名创建一条解析记录(如 A/CNAME/TXT/MX 等)
| Name | Required | Description | Default |
|---|---|---|---|
| ttl | No | TTL(秒),不填则跟随域名默认设置 | |
| type | Yes | 记录类型,例如 A / CNAME / TXT / MX / AAAA | |
| value | Yes | 记录值,例如 1.2.3.4 或 target.example.com | |
| domain | Yes | 域名,例如 example.com | |
| subDomain | Yes | 子域名前缀,例如 www(或用 @ 表示根域名) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the full burden of behavioral disclosure. It only states that a record is created, but does not mention idempotency, duplicate handling, propagation time, whether existing records are affected, or authorization requirements. For a mutating tool this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that front-loads the core action and resource. Every word earns its place and there is no redundant scaffolding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The schema fully documents all five parameters, and the purpose is clear. However, the tool is a mutation with no annotations and no output schema, so an agent is left without guidance on expected return values, failure modes, or side effects. It is minimally sufficient but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter is already documented. The description adds only the record-type examples, which largely overlap with the schema's own examples. It does not add meaningful semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('创建') and resource ('为指定域名创建一条解析记录'), and gives concrete record types (A/CNAME/TXT/MX). This makes it clearly distinct from sibling tools like dns_delete_record, dns_list_records, and dns_list_domains.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The word '创建' implies the tool is for adding a DNS record, and siblings like dns_delete_record and dns_list_records provide contrast. However, the description does not explicitly state when to use this tool versus alternatives, nor mention any prerequisites or restrictions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dns_delete_recordA
删除指定域名下的一条解析记录(按记录ID,可用 dns_list_records 查询 ID)
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | 域名,例如 example.com | |
| recordId | Yes | 要删除的解析记录 ID(通过 dns_list_records 获取) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description itself must convey the behavioral profile; the word 删除 makes the destructive nature clear and the schema provides exact parameters. It does not mention irreversibility or error behavior when the record ID is invalid, so it is adequate but not richly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence leads with the action, then specifies the scope and provides the ID lookup pointer. Every element contributes value with no redundant text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter delete tool with fully documented schema and a clear record-ID acquisition path, the description is nearly complete. The main missing context is failure behavior and explicit irreversibility, which would matter more with additional complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters fully (100% coverage), so the baseline is 3. The description reinforces that recordId comes from dns_list_records but adds no new parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (删除) and resource (解析记录), scoping the action to a single record under a specified domain by record ID. This clearly differentiates it from dns_create_record and dns_list_records.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives concrete usage context: delete by recordId under a domain, and explicitly points to dns_list_records as the way to obtain the record ID. It does not enumerate when-not-to-use cases, but the operation is unambiguous enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dns_list_domainsA
列出腾讯云 DNSPod 中托管的所有域名,以及每个域名的解析记录数
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of behavioral disclosure. It clearly implies a read-only operation via the verb 'list' and specifies the output includes record counts, but it does not explicitly state whether any authentication is required, whether results are paginated, or any potential side effects. For a simple read tool, the implicit read-only nature is a reasonable baseline, but richer disclosure about output size or rate limits would be better.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the action and resource. Every word earns its place, and there is no redundancy or filler. It conveys both the scope (all domains) and an additional detail (record count) efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool with no annotations and no output schema, the description is entirely sufficient. It tells the agent exactly what the tool does and what to expect in the return (domains plus their record counts). There is no missing information required to invoke it correctly, and the simplicity of the tool lowers the burden on the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description does not need to elaborate on parameter meanings, and it does not attempt to. The mention of record counts is output-related rather than parameter-related, which is outside this dimension. No gaps exist since there are no inputs to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('列出' = list) and a precise resource ('腾讯云 DNSPod 中托管的所有域名' = all domains hosted in Tencent Cloud DNSPod). It adds a distinguishing detail—each domain's record count—which separates it from siblings like dns_list_records and cdn_list_domains without needing to open schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention dns_list_records for records or cdn_list_domains for CDN domains, nor does it state any conditions or exclusions. Usage must be inferred purely from the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dns_list_recordsA
列出指定域名下的所有解析记录,包含记录ID、子域名、类型、值、TTL 与状态
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | 要查询的域名,例如 example.com |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses that this is a read/list operation and what fields the result includes, which is helpful. However, it does not mention authentication needs, error behavior for invalid domains, pagination, or whether the list is complete/untruncated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, information-dense sentence that leads with the core action and domain scope, then lists the returned fields. Every part earns its place with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter list operation, the description is nearly complete: it states the input, the result scope, and the returned fields. It is slightly lacking in usage caveats and behavioral details, but nothing critical is missing for an agent to invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides full coverage for the single parameter with an example ('example.com'). The description adds no additional semantic detail about the domain parameter beyond what the schema states, so it sits at the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('列出') and resource ('所有解析记录') scoped to a domain, and enumerates the returned fields (record ID, subdomain, type, value, TTL, status). This clearly distinguishes it from sibling tools like dns_list_domains, dns_create_record, and dns_delete_record.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use is implied: when you need all DNS records for a given domain. However, it does not explicitly state when to prefer this tool over dns_list_domains, nor does it mention that creation/deletion are handled by separate tools. No exclusion or alternative-condition guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_listA
列出远程服务器上指定目录的文件和子目录
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | 远程目录路径,如 /data/www 或 /var/log | |
| server | Yes | 目标服务器名称 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It correctly signals a read-only listing operation, but does not disclose additional behaviors such as whether the listing is recursive, includes hidden files, or what exact format the output takes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that clearly communicates the tool's function without any unnecessary words or filler. It is well-structured and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool, the description conveys the core functionality. However, with no output schema and no annotations, it would benefit from clarifying what the returned list contains (e.g., names, full paths, file types) and whether any special permissions are needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the two parameters (path and server) are already fully documented in the schema. The description itself adds no parameter-specific semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('list') with a clear resource ('files and subdirectories in a specified directory on the remote server'). It clearly distinguishes file_list from sibling tools like file_read, file_write, and server_exec.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied by the description — an agent can infer to use this tool when directory contents are needed. However, there is no explicit guidance about when to choose it over alternatives like file_search or server_exec, nor any exclusion scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_readC
读取远程服务器上的文件内容。支持文本文件(代码、日志、配置等)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | 远程文件的绝对路径 | |
| tail | No | 仅读取最后 N 行(类似 tail -n),适用于日志文件 | |
| server | Yes | 目标服务器名称 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
没有 annotations,描述承担全部行为披露责任。除'支持文本文件'外,未说明二进制文件处理、文件编码、大小限制、输出格式或权限要求;'读取'虽暗示只读,但未显式声明副作用或边界行为。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
描述仅两句话,首句直接点明核心功能,第二句补充支持的文件类型,没有冗余内容。信息密度高且结构清晰。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
工具没有 output schema 且没有 annotations,仅有简短描述,缺少返回内容、失败条件、权限要求等上下文。sibling tools 中的 file_write、file_search 等需要说明边界,当前描述不足以让 agent 完整判断调用场景。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
input schema 覆盖了全部 3 个参数(server、path、tail)且每个都有描述,覆盖率 100%。描述没有在 schema 之外增加参数含义,'支持文本文件'与 tail 的日志场景略有关联,但未提供额外参数语义。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述明确说明'读取远程服务器上的文件内容',动词和资源清晰,并补充了支持文本文件类型。虽然未显式区分 file_list、file_search、file_write 等 sibling tools,但'读取'这一核心语义已足够明确。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述没有说明何时使用 file_read 而非 file_search、file_list 或 server_exec,也未提及 tail 参数的使用场景(虽然 schema 中有)。仅通过'读取文件'暗示用途,缺少工具选择相关的指导。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_searchA
在远程服务器上搜索文件内容(grep),适合查找日志中的错误、配置项等
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | 搜索的目标目录或文件路径 | |
| server | Yes | 目标服务器名称 | |
| context | No | 上下文行数 | |
| pattern | Yes | 搜索模式(支持正则表达式) | |
| maxResults | No | 最大结果数 | |
| caseSensitive | No | 是否区分大小写 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does convey that the operation is a remote, content-based grep-like search, which implies read-only behavior. It does not mention permission prerequisites, potential performance cost on large paths, or how results are truncated, leaving some operational behavior undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence contains the core action, the tool's nature (grep), and typical use cases with no redundant wording. It is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a moderately parameterized tool with full schema coverage and no output schema, the description provides enough context for invocation and gives concrete use cases. It does not describe the exact result format, but the grep analogy and schema parameters (context, maxResults) make the expected output reasonably clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all 6 parameters with descriptions, so the baseline is 3. The description adds the grep analogy and use cases but no per-parameter details beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a concrete operation—searching file contents on a remote server via grep—and adds concrete use cases (finding errors in logs, config items). This clearly separates it from sibling file tools like file_read and file_list by emphasizing content search rather than reading or listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit scenarios where the tool is appropriate: searching logs for errors and locating config items. It does not enumerate exclusions or compare directly with file_read/file_list/server_exec, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
file_writeA
将内容写入远程服务器上的文件(会覆盖已有文件)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | 远程文件的绝对路径 | |
| server | Yes | 目标服务器名称 | |
| content | Yes | 要写入的文件内容 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explicitly discloses the destructive overwrite behavior ('会覆盖已有文件'), which is the most important safety concern. It does not mention permissions, file creation, or error cases, but the overwrite warning adds significant value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the action and includes the key side-effect warning in parentheses. There is no wasted wording, and the overwrite caution is prominently placed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential purpose and the critical overwrite side-effect, which an agent needs to know before invoking the tool. It lacks details about return values or error conditions, but for a straightforward file-write operation, it is reasonably complete given the moderate complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all three parameters (server, path, content) with descriptions at 100% coverage, so the schema already explains what each parameter means. The description repeats the concept of content and remote server but adds no additional semantic detail beyond the schema's baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('write') and resource ('remote server file'), and explicitly notes the overwriting behavior. This clearly distinguishes it from sibling read concerns like file_read, file_list, and file_search, so an agent can identify it as the write operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when you need to write content to a remote file, but provides no explicit exclusions or alternatives. It does not compare with server_exec, which could also modify files, leaving the when-not-to-use guidance implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
server_addA
运行时注册一个新的 SSH 服务器:写入 .env 并更新内存缓存,无需重启连接器即可被 server_exec 使用
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes | 服务器公网 IP 或域名 | |
| name | Yes | 服务器名称(唯一标识),如 Tencent-LH | |
| port | No | SSH 端口,默认 22 | |
| password | No | 密码(与 privateKey 二选一) | |
| username | Yes | 登录用户名,如 root 或 ubuntu | |
| privateKey | No | 私钥本地绝对路径,如 C:/Users/xxx/.ssh/id_ed25519 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It explicitly discloses key side effects: persisting to .env and updating the in-memory cache, plus the operational benefit of no restart required. While it does not detail error cases or security implications, the main behavioral traits are transparently stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, dense sentence that front-loads the main action ('register a new SSH server') and immediately states the important side effects. Every word earns its place, with no redundancy or tangential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 6 parameters, no output schema, and no annotations. The description covers the core purpose and side effects, but omits guidance on conflict resolution (e.g., duplicate name) or success feedback. While the schema handles parameter details, the lack of outcome/error behavior means the description is adequate but not fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The tool description does not add parameter-specific meaning beyond what the schema already conveys (e.g., host, username, port, password vs privateKey). The description's focus is on the operation, not the parameters, so it neither compensates nor degrades beyond baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('register a new SSH server at runtime') and the resource (SSH server), plus mentions the side effects (write .env, update cache). It distinguishes itself from siblings like server_list and server_exec by focusing on the addition operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a use case: add a server without restarting the connector, making it available to server_exec. However, it does not explicitly contrast with alternatives (e.g., manually editing .env) or provide when-not-to-use conditions. The context is clear but not fully elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
server_execA
在指定的远程服务器上执行 Shell 命令。返回 stdout、stderr 和退出码
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | 命令执行的工作目录(可选) | |
| server | Yes | 目标服务器名称,对应 .env 中 SSH_SERVERS 配置的 name 字段 | |
| command | Yes | 要在远程服务器上执行的 Shell 命令 | |
| timeout | No | 命令超时时间(毫秒),默认 60 秒,最大 10 分钟 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the return format (stdout, stderr, exit code), which is helpful. However, with no annotations to rely on, it fails to mention important behavioral traits such as the potentially destructive or irreversible effects of executing commands on a remote server. There is no caution about side effects, permissions, or error-condition behavior, which is a significant gap for a remote execution tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that clearly states the action and the return values. There is no wasteful text, and the most important information (what the tool does) appears first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the basics: what it does and what it returns. However, it omits critical safety context about the risks of executing arbitrary remote commands, such as potential server modifications or irreversibility. For a tool that can run arbitrary shell commands, this is a notable gap. The schema provides parameter details, but the description does not give enough behavioral context for safe and correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters are fully described in the schema, so the baseline is 3. The description itself does not add any parameter-specific meaning beyond a vague reference to 'specified remote server' and 'Shell command', which the schema already captures.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('execute') and a clear resource ('Shell commands on a specified remote server'), and explicitly lists the return values (stdout, stderr, exit code). This clearly distinguishes it from sibling file, deploy, and database tools, so an agent can identify its purpose without confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for running arbitrary shell commands, but it does not provide explicit guidance on when to use this tool versus alternatives like deploy_project or file_read. There are no exclusion criteria or mentions of alternative tools, leaving the agent to infer the appropriate context from the tool's name and short description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
server_infoA
获取远程服务器的系统信息:操作系统、CPU、内存、磁盘使用情况
| Name | Required | Description | Default |
|---|---|---|---|
| server | Yes | 目标服务器名称 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden of behavioral disclosure. It indicates a retrieval-style operation and names the output categories, which is useful, but it does not explicitly confirm non-mutating behavior, authorization requirements, failure modes, or how the information is returned. Some transparency is present, but not full.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence that front-loads the action and resource, then lists the information categories with no filler. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read-only info tool with no output schema, the description covers the essential call contract: which server to pass and what output categories to expect. It does not describe formatting, units, or error behavior, but given the low complexity, the description is substantially complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% because the only parameter, 'server', is already described as '目标服务器名称' (target server name). The description adds no additional parameter semantics, such as accepted formats, constraints, or how to discover valid server names, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('获取', get) and a specific resource ('远程服务器的系统信息', remote server system information), then enumerates the exact categories returned: OS, CPU, memory, and disk usage. This is clearly a read-only server details tool and is readily distinguishable from siblings like server_list and server_exec.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used when system-level information about a target server is needed, but it does not explicitly state when to prefer this over related tools such as server_list or cloud_instance_info. It also does not mention prerequisites, such as obtaining a valid server name from server_list, or provide any when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
server_listA
列出当前 MCP 配置中所有可连接的服务器
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
没有任何注解,因此描述承担行为说明责任。动词“列出”隐含只读操作,且“可连接的”增加了筛选条件,但描述未说明返回格式、是否会真的检测连接可用性、是否需要权限,以及是否可能因网络检查而变慢。对于简单列表工具已提供基本行为,但还不够充分。
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
描述是一句完整且无冗余的中文单句,核心信息动作和对象都在句首,没有任何浪费篇幅的内容,清晰易读。
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
工具本身较简单且无参数,描述给出了列取范围和连接性条件,但缺少使用场景指引、输出形态说明以及与其他服务器相关工具的区分。对于代理选择工具而言,基本可用但仍有明确缺口。
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
工具没有参数,输入模式为空,因此不存在参数语义负担。按基线规则,0 参数工具应给予 4 分,描述无需补充参数说明。
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
描述明确使用动词“列出”并明确指出对象是“当前 MCP 配置中所有可连接的服务器”,资源范围和动作都很清晰。与同组的 server_info(单服务器信息)相比,通过“所有”明确了枚举型操作,能够有效区分用途。
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
描述只说明工具能做什么,没有说明何时应该使用它、何时不应该使用它,也没有提及替代工具如 server_info 或 server_exec 的选择条件。调用场景完全依赖名称和用户推断,缺乏显式指引。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
26 tool updates
v1.0.0- First observed
cdn_list_domains - First observed
cdn_refresh - First observed
cdn_task_status - First observed
cloud_instance_info - First observed
cloud_list_instances - First observed
cos_check_public_read - First observed
cos_get_bucket_acl - First observed
cos_get_bucket_policy - First observed
cos_set_bucket_private - First observed
db_list_databases - First observed
db_list_tables - First observed
db_query - First observed
deploy_project - First observed
deploy_status - First observed
dns_create_record - First observed
dns_delete_record - First observed
dns_list_domains - First observed
dns_list_records - First observed
file_list - First observed
file_read - First observed
file_search - First observed
file_write - First observed
server_add - First observed
server_exec - First observed
server_info - First observed
server_list
TDQS
Scored across 26 tools
Most tools are grouped by clear prefixes (server_, file_, dns_, cos_) and target distinct resources/actions. The only mild risk is the COS bucket-read cluster (get_acl, get_policy, check_public_read), where purposes overlap though descriptions differentiate them.
The set follows a consistent [domain]_[operation] pattern in snake_case, such as dns_create_record and cdn_list_domains. Minor deviations like deploy_project (verb+object) and deploy_status (noun) keep it from being perfect.
At 26 tools, this is on the heavy side, but the multi-domain scope (servers, deploy, DB, DNS, CDN, COS) means the count is borderline rather than excessive. Each tool has a clear function, though some consolidation could reduce the total.
The server covers core operations across its advertised domains: files, deployment, DB queries, DNS records, CDN refresh, and COS security audit/remediation. Gaps such as DNS record update, server removal, and file delete/upload are missing but can be worked around via existing tools or direct exec.
Maintenance
Related MCP Connectors
The agent-native cloud: database, functions, AI, storage, computers. 51 tools, one API key.
Provides capabilities that let LLM agents perform a range of infrastructure management tasks.
The cloud for agents. Tools for AI agents to register, build, and deploy other agents. Zero human required.
Backend for AI agents: one batched tool over ~668 actions (hosting, storage, auth, payments).
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI agents with cloud-based execution environments through Alibaba Cloud's Wuying infrastructure, enabling browser automation, file operations, and terminal access in secure, serverless cloud environments.7MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Coolify infrastructure including servers, applications, databases, deployments, and 80+ one-click services through 98 comprehensive tools for both cloud and self-hosted instances.MIT
- AlicenseNot gradedqualityCmaintenanceProvides AI agents with natural language control over AWS, Azure, GCP, and Alibaba Cloud infrastructure through dynamic API discovery and execution. Supports 51,900+ cloud operations and includes OpenTofu integration for complete infrastructure lifecycle management.3MIT
- FlicenseCqualityDmaintenanceEnables AI assistants to manage Alibaba Cloud resources via natural language, with explicit tools for common services and a universal API invoker for full cloud coverage.92-