Skip to main content
Glama
RadiumGu

Alibaba Cloud Operations MCP Server

by RadiumGu

Alibaba Cloud Operations MCP Server

一个用于 Amazon Q CLI 的阿里云操作 MCP 服务器,支持 ECS、VPC、RDS、OSS、CloudMonitor、OOS 等服务。

English | 中文

系统要求

  • Python 3.10+ (通过 uv 自动管理)

  • uv - Python 包和项目管理器

  • 阿里云访问凭证

Related MCP server: AlibabaCloud MCP Server

快速开始

1. 安装 uv

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# 或者使用 pip
pip install uv

# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

2. 克隆项目

git clone https://github.com/your-username/alicloud-ops-mcp.git
cd alicloud-ops-mcp

3. 一键安装

# 运行安装脚本(推荐)
./install.sh

# 或者手动安装
uv sync
cp .env.example .env
# 编辑 .env 文件,填入你的阿里云凭证

4. 配置环境变量

编辑 .env 文件:

ALIBABA_CLOUD_ACCESS_KEY_ID="your_access_key_id"
ALIBABA_CLOUD_ACCESS_KEY_SECRET="your_access_key_secret"
ALIBABA_CLOUD_REGION="cn-beijing"

5. 验证安装

# 运行验证脚本
uv run python verify_setup.py

# 测试服务器启动
uv run python complete_fastmcp_server.py

如果看到 "Server is ready to accept connections." 说明安装成功。

Amazon Q CLI 配置

~/.aws/amazonq/mcp.json 中添加以下配置:

{
  "mcpServers": {
    "alibaba-cloud-ops-mcp-server": {
      "timeout": 30000,
      "command": "uv",
      "args": [
        "--directory",
        "/绝对路径/to/alicloud-ops-mcp",
        "run",
        "python",
        "complete_fastmcp_server.py"
      ],
      "env": {
        "PYTHONUNBUFFERED": "1"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

重要提示:/绝对路径/to/alicloud-ops-mcp 替换为项目的实际绝对路径。

配置示例

假设项目位于 /home/user/alicloud-ops-mcp

{
  "mcpServers": {
    "alibaba-cloud-ops-mcp-server": {
      "timeout": 30000,
      "command": "uv",
      "args": [
        "--directory",
        "/home/user/alicloud-ops-mcp",
        "run",
        "python",
        "complete_fastmcp_server.py"
      ],
      "env": {
        "PYTHONUNBUFFERED": "1"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

支持的服务

服务

功能

状态

ECS

云服务器管理、实例操作、镜像管理

VPC

虚拟私有云、网络配置、安全组

RDS

关系型数据库管理、备份恢复

OSS

对象存储、文件上传下载

CloudMonitor

云监控、告警管理、指标查询

OOS

运维编排、自动化任务

开发说明

项目结构

alicloud-ops-mcp/
├── pyproject.toml              # 项目配置和依赖
├── requirements.txt            # 依赖列表(兼容性)
├── complete_fastmcp_server.py  # 主服务器文件
├── alibaba_cloud_ops_mcp_server/
│   ├── __init__.py
│   ├── __main__.py
│   ├── server.py              # 服务器核心逻辑
│   ├── config.py              # 配置管理
│   └── tools/                 # 各服务工具
│       ├── __init__.py
│       ├── api_tools.py       # 通用 API 工具
│       ├── cms_tools.py       # CloudMonitor 工具
│       ├── common_api_tools.py # 公共 API 工具
│       ├── oos_tools.py       # OOS 工具
│       └── oss_tools.py       # OSS 工具
├── .env.example               # 环境变量模板
├── .env                       # 环境变量(需要创建)
├── install.sh                 # 安装脚本
├── verify_setup.py            # 验证脚本
├── README.md                  # 中文文档
├── README_EN.md               # 英文文档
└── LICENSE

使用 uv 进行开发

# 安装开发依赖
uv sync --dev

# 运行测试
uv run pytest

# 运行服务器
uv run python complete_fastmcp_server.py

# 添加新依赖
uv add package-name

# 添加开发依赖
uv add --dev package-name

# 更新依赖
uv sync --upgrade

# 查看依赖树
uv tree

Python 版本管理

项目在 pyproject.toml 中指定了 Python 版本要求:

requires-python = ">=3.10"

uv 会自动:

  • 检测并安装合适的 Python 版本

  • 创建隔离的虚拟环境

  • 管理所有依赖关系

  • 确保跨平台兼容性

故障排除

常见问题

1. Permission denied (os error 13)

原因: 配置错误或权限问题

解决方案:

# 确保使用 uv 命令而不是直接的 python 路径
uv run python complete_fastmcp_server.py

# 检查项目路径是否正确
pwd

# 确保脚本有执行权限
chmod +x complete_fastmcp_server.py

2. Python 版本不兼容

错误信息: Could not find a version that satisfies the requirement fastmcp>=2.8.0

解决方案:

# uv 会自动处理 Python 版本,无需手动安装
uv sync

# 如果仍有问题,清理并重新安装
uv clean
uv sync

3. 依赖安装失败

解决方案:

# 清理缓存并重新安装
uv clean
uv sync

# 查看详细错误信息
uv sync --verbose

4. 环境变量未加载

解决方案:

# 确保 .env 文件存在且格式正确
ls -la .env
cat .env

# 检查环境变量格式
uv run python -c "
import os
from dotenv import load_dotenv
load_dotenv()
print('Access Key ID:', os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID', 'Not found'))
print('Region:', os.getenv('ALIBABA_CLOUD_REGION', 'Not found'))
"

5. MCP 服务器无法启动

解决方案:

# 检查 Amazon Q CLI 配置
cat ~/.aws/amazonq/mcp.json

# 验证路径是否正确
ls -la /绝对路径/to/alicloud-ops-mcp/complete_fastmcp_server.py

# 测试服务器直接启动
cd /绝对路径/to/alicloud-ops-mcp
uv run python complete_fastmcp_server.py

调试模式

启用详细日志:

# 设置环境变量启用调试
export FASTMCP_LOG_LEVEL=DEBUG
uv run python complete_fastmcp_server.py

# 或者在 .env 文件中设置
echo "FASTMCP_LOG_LEVEL=DEBUG" >> .env

验证配置

运行完整的环境检查:

# 运行验证脚本
uv run python verify_setup.py

# 检查特定组件
uv run python -c "
import sys
print(f'Python version: {sys.version}')

try:
    import fastmcp
    print(f'FastMCP version: {fastmcp.__version__}')
except ImportError as e:
    print(f'FastMCP import error: {e}')

try:
    from alibaba_cloud_ops_mcp_server import server
    print('Server module loaded successfully')
except ImportError as e:
    print(f'Server module error: {e}')
"

性能优化

启动优化

# 预编译 Python 字节码
uv run python -m compileall .

# 使用更快的启动选项
uv run python -O complete_fastmcp_server.py

内存优化

.env 文件中添加:

# 限制内存使用
PYTHONHASHSEED=0
PYTHONDONTWRITEBYTECODE=1

贡献指南

  1. Fork 项目

  2. 创建功能分支 (git checkout -b feature/amazing-feature)

  3. 安装开发依赖 (uv sync --dev)

  4. 运行测试 (uv run pytest)

  5. 提交更改 (git commit -m 'Add some amazing feature')

  6. 推送到分支 (git push origin feature/amazing-feature)

  7. 创建 Pull Request

开发环境设置

# 克隆仓库
git clone https://github.com/your-username/alicloud-ops-mcp.git
cd alicloud-ops-mcp

# 安装开发依赖
uv sync --dev

# 设置 pre-commit hooks
uv run pre-commit install

# 运行测试
uv run pytest

# 代码格式化
uv run black .
uv run isort .

# 类型检查
uv run mypy .

许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

支持

如果遇到问题,请:

  1. 查看 故障排除 部分

  2. 运行 uv run python verify_setup.py 检查环境

  3. 查看 GitHub Issues

  4. 创建新的 Issue 报告问题

获取帮助

更新日志

v0.9.2 (2024-12-XX)

  • ✨ 支持使用 uv 进行包管理

  • 🚀 简化安装和配置流程

  • 🐛 改进错误处理和调试信息

  • 📚 更新文档和故障排除指南

  • 🔧 添加环境验证脚本

  • 📦 添加一键安装脚本

v0.9.1

  • 🔧 修复依赖版本兼容性问题

  • 📝 改进文档结构

  • 🐛 修复环境变量加载问题

v0.9.0

  • 🎉 初始版本发布

  • ✅ 支持 ECS、VPC、RDS、OSS、CloudMonitor、OOS 服务

  • 🔐 支持阿里云访问凭证配置

  • 📖 完整的文档和示例

致谢

感谢所有贡献者和社区成员的支持!


⭐ 如果这个项目对你有帮助,请给个 Star!

Available Tools

18 tools
create_oss_bucketC

创建OSS存储桶

Args:
    bucket_name: 存储桶名称
    region: 区域ID
ParametersJSON Schema
NameRequiredDescriptionDefault
bucket_nameYes
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool creates an OSS bucket but doesn't mention critical behavioral traits: whether this is a mutating operation (implied by 'create'), what permissions are required, potential costs, rate limits, or what happens on success/failure. For a creation tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and front-loaded with the main purpose, but the structure is minimal. It uses a simple 'Args:' section for parameters, which is clear but lacks elaboration. While concise, it could be more informative without becoming verbose, especially given the lack of annotations and low schema coverage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (creation operation), no annotations, 0% schema description coverage, but with an output schema (which handles return values), the description is partially complete. It covers the basic purpose and parameters but misses behavioral context, usage guidelines, and detailed parameter semantics. The output schema reduces the need to describe returns, but other gaps remain significant.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It lists both parameters ('bucket_name' and 'region') with brief Chinese explanations, adding basic meaning beyond the schema's titles. However, it doesn't provide format constraints (e.g., bucket naming rules), region options beyond the default, or validation details. The description adds some value but doesn't fully compensate for the schema's lack of descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as '创建OSS存储桶' (Create OSS bucket), which is a specific verb+resource combination. It distinguishes itself from sibling tools like 'list_oss_buckets' and 'delete_oss_bucket' by focusing on creation rather than listing or deletion. However, it doesn't explicitly differentiate from other creation tools in the sibling list, which mostly describe or manage resources rather than create them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 doesn't mention prerequisites (e.g., permissions, account setup), when not to use it (e.g., if a bucket already exists), or refer to sibling tools like 'list_oss_buckets' for checking existing buckets. The absence of usage context leaves the agent to infer appropriate scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_oss_bucketC

删除OSS存储桶

Args:
    bucket_name: 存储桶名称
    region: 区域ID
ParametersJSON Schema
NameRequiredDescriptionDefault
bucket_nameYes
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. While '删除' clearly indicates a destructive operation, it doesn't mention critical behavioral aspects like whether deletion is permanent, requires specific permissions, has rate limits, or what happens to contained objects. The description lacks essential context for a destructive operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief but not optimally structured. The main purpose is stated in one line, followed by parameter translations. While concise, it could be more front-loaded with critical behavioral information for a destructive operation. The parameter section adds some value but could be integrated more efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive tool with 2 parameters, 0% schema coverage, no annotations, but with an output schema, the description is inadequate. It doesn't address the destructive nature sufficiently, provides minimal parameter guidance, and fails to give context about when this operation is appropriate versus dangerous. The output schema existence reduces but doesn't eliminate the need for more complete description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It provides Chinese translations of parameter names ('存储桶名称' for bucket_name, '区域ID' for region) but adds minimal semantic context beyond what's obvious from the parameter names. The description doesn't explain format requirements, constraints, or the significance of the default region value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('删除' meaning delete) and resource ('OSS存储桶' meaning OSS bucket), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'list_oss_buckets' or 'create_oss_bucket' beyond the obvious action difference.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. There's no mention of prerequisites (e.g., bucket must be empty), consequences, or when to choose other tools like 'list_oss_buckets' for verification first.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_ecs_instancesC

查询ECS实例信息

Args:
    region: 区域ID,如cn-beijing
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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 only states it queries information without mentioning authentication requirements, rate limits, error conditions, pagination behavior, or what specific information is returned. For a query tool with zero annotation coverage, this provides minimal behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief with two sentences, but the structure is basic. The first sentence states the purpose, the second documents the parameter. While efficient, it could be more front-loaded with key information and lacks formatting that would enhance readability for an AI agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which handles return values) and only one parameter, the description covers the basic purpose and parameter meaning. However, for a query tool with no annotations, it should ideally mention authentication needs, rate limits, or what kind of instance information is returned. The presence of an output schema elevates the score from what would otherwise be lower.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides the only documentation for the single parameter 'region', explaining it's a region ID with an example 'cn-beijing'. Since schema description coverage is 0% and there's only one parameter, the description fully compensates by providing clear semantic meaning and an example, though it doesn't explain regional constraints or valid values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states '查询ECS实例信息' (Query ECS instance information), which provides a clear verb ('查询'/query) and resource ('ECS实例'/ECS instances). However, it doesn't differentiate from siblings like 'describe_ecs_regions' or 'describe_ecs_zones' - all describe ECS-related entities. The purpose is clear but lacks sibling distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives. There's no mention of when this tool is appropriate versus other ECS tools like 'reboot_ecs_instances', 'start_ecs_instances', or 'stop_ecs_instances', nor does it explain its relationship to 'describe_ecs_regions' or 'describe_ecs_zones'. The description only states what it does, not when to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_ecs_regionsB

查询ECS可用区域列表

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It states it's a query/list operation, implying read-only and non-destructive behavior, but doesn't disclose any behavioral traits like authentication needs, rate limits, pagination, or response format. For a tool with no annotations, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese ('查询ECS可用区域列表'), directly stating the purpose without any fluff. It's appropriately sized and front-loaded, with every word earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, 100% schema coverage, and an output schema exists, the description is minimally adequate. However, it lacks details on behavioral aspects (e.g., read-only nature, potential errors) that would be helpful since no annotations are provided. It's complete enough for a simple query tool but could be more informative.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100% (empty schema). The description doesn't need to add parameter semantics beyond what's already clear—no inputs required. Baseline for 0 parameters is 4, as there's nothing to compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '查询ECS可用区域列表' clearly states the action (query/list) and resource (ECS regions/availability zones). It distinguishes from siblings like describe_ecs_instances (instances) and describe_ecs_zones (zones vs regions). However, it doesn't specify if this lists all regions or filtered ones, keeping it from 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.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. Siblings include describe_ecs_zones (which might be more granular) and describe_ecs_instances (for specific instances), but the description doesn't mention these or provide context for selection. Usage is implied by the name but not articulated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_ecs_zonesB

查询ECS可用区列表

Args:
    region: 区域ID,如cn-beijing
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It only states it's a query operation ('查询'), implying read-only behavior, but doesn't mention authentication requirements, rate limits, pagination, error conditions, or what the output contains. For a tool with no annotation coverage, this is insufficient behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with two sentences: one stating the purpose, one explaining the parameter. Both sentences earn their place, and the structure is clear with purpose first followed by parameter details. Minor deduction for not being perfectly front-loaded with all essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which handles return values), 1 parameter, and no annotations, the description is minimally complete but has gaps. It covers the basic purpose and parameter, but lacks usage guidance and behavioral context that would be helpful for an AI agent. For a simple query tool with output schema, it's adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With only 1 parameter and 0% schema description coverage, the description compensates well by providing the parameter name 'region' with a clear example ('如cn-beijing'). This adds meaningful semantic context beyond what the bare schema provides, though it doesn't explain format constraints or valid values beyond the example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as '查询ECS可用区列表' (Query ECS availability zone list), which is a specific verb+resource combination. It distinguishes from siblings like describe_ecs_instances or describe_ecs_regions by focusing specifically on zones. However, it doesn't explicitly differentiate from all siblings in the description text itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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. There are multiple describe_* siblings (describe_ecs_instances, describe_ecs_regions, describe_rds_instances, etc.) but no indication of when this specific zone-listing tool is appropriate versus other describe operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_rds_instancesC

查询RDS实例列表

Args:
    region: 区域ID,如cn-beijing
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it's a query operation, implying read-only behavior, but doesn't specify if it requires authentication, has rate limits, returns paginated results, or details the output format. The description adds minimal behavioral context beyond the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences: one stating the purpose and another explaining the parameter. It's front-loaded with the main action, and there's no redundant information. However, the use of Chinese might reduce clarity for some agents, and the structure could be slightly improved with clearer formatting.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 1 parameter, no annotations, and an output schema exists, the description is minimally complete. It covers the basic purpose and parameter, but lacks details on behavioral traits, usage context, and output expectations, making it adequate but with clear gaps for effective tool invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description includes an 'Args' section that explains the 'region' parameter with an example ('cn-beijing'), adding meaning beyond the input schema, which has 0% description coverage and only provides a default value. However, with only 1 parameter and partial documentation in the description, it meets the baseline for adequate but not comprehensive coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the tool's purpose as '查询RDS实例列表' (query RDS instance list), which clearly indicates it retrieves a list of RDS instances. However, it doesn't differentiate from sibling tools like 'describe_ecs_instances' beyond the resource type (RDS vs ECS), and the title is null, leaving some ambiguity about the exact scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 doesn't mention any prerequisites, exclusions, or comparisons to sibling tools like 'describe_ecs_instances' or other describe_* tools, leaving the agent to infer usage based on the resource name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_vpcsC

查询VPC列表

Args:
    region: 区域ID,如cn-beijing
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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 states it queries a list, implying a read-only operation, but doesn't disclose behavioral traits such as whether it requires authentication, has rate limits, returns paginated results, or what the output format is. The description is minimal and lacks critical operational context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and front-loaded with the main purpose, followed by parameter details in a structured 'Args:' section. It avoids unnecessary words, but the lack of broader context or guidelines means it might be too terse for optimal agent understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which handles return values), 1 parameter with low schema coverage, and no annotations, the description is minimally adequate. It covers the purpose and parameter example but misses usage guidelines and behavioral transparency, leaving gaps for a read operation in a cloud management context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaningful context for the single parameter 'region' by providing an example value ('cn-beijing'), which clarifies the expected format beyond the schema's generic 'string' type. With 0% schema description coverage and only 1 parameter, this compensates well, though it could specify if other regions are valid or if it's optional.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states '查询VPC列表' which translates to 'Query VPC list', providing a clear verb ('query') and resource ('VPC list'). However, it doesn't distinguish this tool from sibling tools like 'describe_ecs_instances' or 'describe_rds_instances' beyond the resource type, making it somewhat generic within the context of this server.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 doesn't mention prerequisites, context (e.g., for cloud infrastructure management), or compare it to related tools like 'describe_vswitches' (which might list subnets within VPCs). Usage is implied by the action but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

describe_vswitchesB

查询交换机列表

Args:
    region: 区域ID,如cn-beijing
    vpc_id: VPC ID(可选)
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
vpc_idNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It only states it's a query operation, but doesn't disclose behavioral traits like authentication requirements, rate limits, pagination behavior, error conditions, or what happens when vpc_id is omitted. For a tool with no annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise and well-structured: a single sentence stating the purpose followed by a clear parameter explanation section. Every sentence earns its place with no wasted words, and the information is front-loaded appropriately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which handles return values), 2 parameters with 0% schema coverage, and no annotations, the description provides adequate basic purpose and parameter semantics. However, it lacks behavioral context needed for a query tool with no annotations, making it minimally complete but with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides clear semantic meaning for both parameters: 'region' as region ID with an example (cn-beijing) and 'vpc_id' as VPC ID with indication it's optional. With 0% schema description coverage, this compensates well by explaining what each parameter represents, though it doesn't specify format constraints beyond the example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states '查询交换机列表' (query switch list), which clearly indicates the tool's purpose as retrieving a list of vSwitches. It specifies the resource (vSwitches) and action (query/list), but doesn't differentiate from siblings like describe_vpcs or describe_ecs_instances beyond the resource type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus alternatives. The description doesn't mention sibling tools like describe_vpcs or describe_ecs_instances, nor does it specify any prerequisites, constraints, or appropriate contexts for using this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cpu_usage_dataB

获取ECS实例CPU使用率数据

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves CPU usage data, implying a read-only operation, but doesn't clarify aspects like whether it requires specific permissions, rate limits, data freshness, error handling, or output format. For a monitoring tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded: the first line states the purpose clearly, followed by a brief parameter explanation. There's no wasted text, and the structure is logical. However, it could be slightly more concise by integrating the parameter details more seamlessly, but it's still efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (simple monitoring with 2 parameters), no annotations, and the presence of an output schema (which handles return values), the description is minimally adequate. It covers the purpose and parameters but lacks behavioral details like error cases or usage context. With the output schema reducing the need to explain returns, it meets a basic threshold but has clear gaps in guidance and transparency.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaningful context beyond the input schema. The schema has 0% description coverage (titles only: 'Region' and 'Instance Ids'), but the description provides examples: '区域ID,如cn-beijing' (region ID, e.g., cn-beijing) and 'ECS实例ID列表' (ECS instance ID list). This clarifies the expected format and purpose of the parameters, compensating well for the low schema coverage. Since there are only 2 parameters, this is sufficient for a high score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取ECS实例CPU使用率数据' (Get ECS instance CPU usage data). It specifies the verb (获取/get) and resource (ECS实例CPU使用率数据/ECS instance CPU usage data), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like get_disk_usage_data or get_memory_usage_data beyond the resource name, which is why it's not a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 doesn't mention sibling tools like describe_ecs_instances (which might list instances) or other monitoring tools, nor does it specify prerequisites or contexts for usage. The only implied usage is from the purpose, but no explicit when/when-not instructions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_disk_usage_dataC

获取ECS实例磁盘使用率数据

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('获取'), implying a read-only operation, but doesn't clarify aspects like whether it requires specific permissions, rate limits, data freshness, or error conditions. For a data-fetching tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded: the first sentence states the purpose clearly, followed by a brief 'Args' section listing parameters. There's no unnecessary information, and each sentence serves a purpose. It could be slightly more structured with bullet points or clearer separation, but overall it's efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (which handles return values), the description covers the basic purpose and parameters. However, with no annotations and low schema coverage, it lacks context on behavioral traits like permissions or rate limits. For a simple data retrieval tool, this is minimally adequate but leaves room for improvement in guiding usage and transparency.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds basic semantics for both parameters: 'region' is described as '区域ID,如cn-beijing' (region ID, e.g., cn-beijing), and 'instance_ids' as 'ECS实例ID列表' (ECS instance ID list). With schema description coverage at 0%, this compensates somewhat by explaining what the parameters represent. However, it doesn't provide details like format constraints, example values beyond one region, or how multiple instance IDs are handled, keeping it at a baseline level.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取ECS实例磁盘使用率数据' (Get ECS instance disk usage data). It specifies the verb '获取' (get) and resource 'ECS实例磁盘使用率数据' (ECS instance disk usage data), making the function unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'get_cpu_usage_data' or 'get_memory_usage_data' beyond the resource type, 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.

Usage Guidelines2/5

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 doesn't mention sibling tools like 'get_cpu_usage_data' or 'get_memory_usage_data' for different metrics, or 'describe_ecs_instances' for general instance info. There's no context on prerequisites, such as needing instance IDs from another tool, or exclusions like unsupported instance types.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_memory_usage_dataC

获取ECS实例内存使用率数据

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. While it indicates this is a data retrieval operation ('获取'), it doesn't describe important behavioral aspects like whether this requires specific permissions, whether it's a real-time or historical query, rate limits, error conditions, or what the output format looks like. For a data retrieval tool with zero annotation coverage, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately concise with a clear purpose statement followed by parameter documentation. The two-sentence structure is efficient, though the parameter documentation could be slightly more detailed given the lack of schema descriptions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that there's an output schema (which means the description doesn't need to explain return values), the description is minimally adequate for a data retrieval tool. However, with no annotations and incomplete parameter documentation (0% schema coverage), the description should provide more context about behavioral aspects and usage scenarios to be truly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides parameter documentation in the Args section, explaining that 'region' is a region ID like cn-beijing and 'instance_ids' is a list of ECS instance IDs. However, with 0% schema description coverage, the description compensates somewhat but doesn't provide complete parameter semantics - it doesn't explain format requirements, constraints, or provide examples beyond a single region example.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取ECS实例内存使用率数据' (Get ECS instance memory usage data). This specifies both the verb (get) and resource (ECS instance memory usage data). However, it doesn't differentiate from sibling tools like 'get_cpu_usage_data' or 'get_disk_usage_data' beyond mentioning memory specifically.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 doesn't mention sibling tools like 'get_cpu_usage_data' or 'describe_ecs_instances', nor does it provide context about prerequisites, timing considerations, or appropriate use cases for memory usage data versus other metrics.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_oss_bucketsC

列出OSS存储桶

Args:
    region: 区域ID
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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 states the tool lists OSS buckets but doesn't disclose behavioral traits like whether it requires authentication, returns all buckets or paginated results, error conditions, or rate limits. This is a significant gap for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief but lacks front-loading of critical information. It starts with the purpose, then lists parameters in a separate section, which is structured but could be more efficient. The two-sentence format is concise but under-specified, not earning full marks for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one parameter with 0% schema coverage and an output schema exists, the description is minimally complete. It covers the purpose and parameter basics but lacks behavioral details and usage guidelines. The output schema reduces the need to explain return values, but overall completeness is adequate with clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds the parameter 'region' with a brief explanation ('区域ID' meaning 'region ID'), which provides basic semantics beyond the schema's title 'Region'. However, it doesn't explain format, constraints, or default values, leaving gaps in parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('列出' meaning 'list') and resource ('OSS存储桶' meaning 'OSS buckets'). It distinguishes itself from siblings like create_oss_bucket and delete_oss_bucket by focusing on listing rather than creating or deleting. However, it doesn't specify scope (e.g., all buckets vs. filtered) 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.

Usage Guidelines2/5

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 doesn't mention prerequisites, context for listing buckets, or differentiate from other listing tools (though none exist among siblings). Usage is implied by the name but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

prompt_understandingA

阿里云专家提示词理解 - 总是首先使用此工具来理解针对阿里云的用户查询并转换为阿里云专家建议

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior3/5

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 states the tool analyzes queries and converts them to expert recommendations, which implies it's a read-only analysis tool. However, it doesn't disclose behavioral details like response format, error conditions, or processing limitations. The description adds basic context about its analytical purpose but lacks depth about how it behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is perfectly concise with two clear components: the tool's purpose (understanding and converting queries) and explicit usage guidance (always use first). Every word serves a purpose, and the most important information (that this is the first tool to use) is front-loaded in the instruction.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that the tool has no parameters, has an output schema (which handles return values), and performs a specific analytical function, the description provides adequate context. It clearly explains when and why to use this tool versus the operational sibling tools. The main gap is lack of detail about what kind of analysis or recommendations it produces, but the output schema should cover this.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the parameter situation. The description appropriately doesn't discuss parameters since none exist. It focuses on the tool's purpose and usage context, which is the right approach for a parameterless tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '阿里云专家提示词理解' (Alibaba Cloud expert prompt understanding) with the specific action '理解针对阿里云的用户查询并转换为阿里云专家建议' (understand user queries about Alibaba Cloud and convert them into expert recommendations). It explicitly distinguishes itself from all sibling tools by being the first tool to use for query analysis rather than direct resource operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage guidance: '总是首先使用此工具' (always use this tool first) for understanding Alibaba Cloud user queries. This creates a clear workflow hierarchy where this tool precedes all other sibling tools that perform specific operations like creating/deleting resources or describing instances.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reboot_ecs_instancesC

重启ECS实例

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden for behavioral disclosure. It states the action (restart) but doesn't describe critical behaviors: whether this requires specific permissions, if it's destructive (e.g., data loss risk), expected downtime, rate limits, or what happens if instances are already stopped. For a mutation tool with zero annotation coverage, 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded with the purpose in the first line, followed by parameter explanations. It avoids unnecessary details, though the structure could be slightly improved by separating purpose from args more clearly. Every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (mutation with 2 parameters), no annotations, and an output schema (which reduces need to describe returns), the description is minimally adequate. It covers the action and parameters but lacks behavioral context, usage guidelines, and deeper parameter semantics. It's incomplete for safe and effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds basic semantics: 'region' as region ID with an example (cn-beijing) and 'instance_ids' as a list of ECS instance IDs. However, it doesn't explain format constraints, validation rules, or optionality (both parameters have defaults but no required status). The description provides minimal value beyond the schema's structure.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states '重启ECS实例' (Restart ECS instances), which clearly indicates the verb (restart) and resource (ECS instances). It distinguishes from siblings like start_ecs_instances and stop_ecs_instances by specifying the restart action, though it doesn't explicitly contrast them. The purpose 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.

Usage Guidelines2/5

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 like start_ecs_instances or stop_ecs_instances. It lacks context about prerequisites (e.g., instance state), exclusions, or typical scenarios for restarting versus other operations. Usage is implied only by the action name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

run_ecs_commandC

在ECS实例上运行命令

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
    command: 要执行的命令
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo
commandNoecho 'Hello World'

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool runs commands but doesn't describe critical behaviors: whether it requires specific permissions, if commands run as root or a user, timeout limits, output handling, or error conditions. For a command execution tool with zero annotation coverage, this leaves significant gaps in understanding its operational traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded: the first sentence states the purpose clearly, followed by a structured 'Args' section listing parameters with brief explanations. There's no wasted text, though it could be more polished (e.g., using bullet points instead of plain text). Every sentence adds value, making it efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (command execution on cloud instances), no annotations, and an output schema exists (which covers return values), the description is minimally complete. It explains what the tool does and parameters but lacks behavioral context (e.g., security implications, execution environment). With the output schema handling returns, it's adequate but has clear gaps in safety and operational guidance.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds basic semantics for all 3 parameters (region, instance_ids, command) with examples like 'cn-beijing' for region and '要执行的命令' (command to execute). However, schema description coverage is 0%, so the schema provides no additional documentation. The description compensates somewhat but lacks details on parameter constraints (e.g., region format, instance ID validation, command length limits), keeping it at a baseline level.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '在ECS实例上运行命令' (run commands on ECS instances). It specifies the verb '运行' (run) and resource 'ECS实例' (ECS instances), making the action clear. However, it doesn't explicitly differentiate from sibling tools like 'reboot_ecs_instances' or 'start_ecs_instances', which are also ECS-related operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 doesn't mention prerequisites (e.g., instance must be running), exclusions (e.g., commands that require sudo), or compare it to sibling tools like 'describe_ecs_instances' for checking instance status before running commands. Usage is implied but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

start_ecs_instancesC

启动ECS实例

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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 states the action ('启动') but lacks details on permissions required, rate limits, whether it's idempotent, what happens if instances are already running, or error conditions. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded, with the purpose stated first followed by parameter details. Every sentence adds value: the first defines the action, and the second explains parameters. However, the structure could be improved by separating purpose and parameters more clearly, and it's slightly verbose in the parameter explanations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (mutation with 2 parameters), no annotations, and an output schema (which reduces need to describe returns), the description is minimally adequate. It covers the basic action and parameters but lacks behavioral context, usage guidelines, and detailed parameter semantics, making it incomplete for safe and effective use by an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It adds basic semantics by explaining 'region' as a region ID with an example ('cn-beijing') and 'instance_ids' as a list of ECS instance IDs. However, it doesn't clarify format constraints (e.g., ID patterns), optionality, or interactions between parameters, leaving gaps despite the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('启动' meaning 'start') and resource ('ECS实例' meaning 'ECS instances'), making the purpose immediately understandable. It distinguishes from siblings like 'stop_ecs_instances' and 'reboot_ecs_instances' by specifying the start action. However, it doesn't explicitly mention what 'start' entails (e.g., powering on virtual machines), keeping it from 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.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., instances must be stopped), compare to siblings like 'reboot_ecs_instances' or 'describe_ecs_instances', or specify use cases (e.g., resuming workloads). The absence of such context leaves the agent without direction on appropriate usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

stop_ecs_instancesC

停止ECS实例

Args:
    region: 区域ID,如cn-beijing
    instance_ids: ECS实例ID列表
ParametersJSON Schema
NameRequiredDescriptionDefault
regionNocn-beijing
instance_idsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It only states the action ('停止') without explaining what 'stop' entails (e.g., graceful shutdown vs. forced stop, state changes, billing implications, or permissions required). This is inadequate for a destructive operation with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief and structured with a title and parameter list, but it's under-specified for a destructive tool. The two sentences earn their place by stating purpose and parameters, but more context is needed for safe usage, making it feel incomplete rather than optimally concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given this is a destructive tool with no annotations, 2 parameters, 0% schema coverage, and an output schema (which helps), the description is incomplete. It covers basic purpose and parameters but misses critical behavioral details like effects, permissions, or error handling, leaving gaps for safe agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description provides meaningful parameter semantics: 'region' is explained as '区域ID,如cn-beijing' (region ID, e.g., cn-beijing), and 'instance_ids' as 'ECS实例ID列表' (ECS instance ID list). With 0% schema description coverage, this compensates well by clarifying what each parameter represents, though it lacks format details like ID patterns or list constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('停止' meaning 'stop') and resource ('ECS实例' meaning 'ECS instances'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'reboot_ecs_instances' or 'start_ecs_instances' beyond the basic verb difference, missing explicit scope or behavioral distinctions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like 'reboot_ecs_instances' or 'start_ecs_instances'. The description lacks context about prerequisites, consequences, or typical use cases, offering only basic parameter documentation without usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

test_alibaba_connectionB

测试阿里云连接状态

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior2/5

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 only states what the tool does (test connection status) without explaining what 'connection status' entails (e.g., network connectivity, API availability, authentication validity), what the output might include, or any side effects (e.g., rate limits, logging). For a diagnostic tool with zero annotation coverage, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence ('测试阿里云连接状态') that directly states the tool's purpose without any fluff or redundancy. It is appropriately sized and front-loaded, making it highly efficient for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (0 parameters, no annotations, but with an output schema), the description is minimally complete. It states the basic purpose, but lacks details on behavior, output interpretation, or usage context. The presence of an output schema means the description doesn't need to explain return values, but it should still cover more operational aspects to be fully helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and the input schema has 100% description coverage (though empty). The description doesn't need to add parameter semantics, so it meets the baseline expectation. A score of 4 reflects that the description is adequate for a parameterless tool, though it could theoretically mention why no parameters are needed (e.g., uses default configurations).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as '测试阿里云连接状态' (test Alibaba Cloud connection status), which is a specific verb ('test') + resource ('Alibaba Cloud connection'). However, it doesn't distinguish this from potential sibling tools that might also test connections or verify cloud service availability, so it falls short of 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.

Usage Guidelines2/5

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 doesn't mention prerequisites (e.g., authentication setup), scenarios where connection testing is needed, or how it differs from other diagnostic tools in the sibling list like those for monitoring CPU/disk usage. This leaves the agent with minimal context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.2/5.0
Disambiguation4/5

Most tools have distinct purposes targeting specific Alibaba Cloud services and operations, with clear boundaries between resource management (OSS, ECS, RDS, VPC) and monitoring/operations. However, the 'prompt_understanding' tool overlaps conceptually with the agent's own reasoning capabilities, potentially causing confusion about when to use it versus other tools for query interpretation.

Naming Consistency4/5

The naming follows consistent snake_case patterns with clear verb_noun conventions for most tools (e.g., create_oss_bucket, describe_ecs_instances, get_cpu_usage_data). The only deviation is 'prompt_understanding' which uses a different verb style, but this is a single exception among otherwise uniform naming.

Tool Count4/5

With 18 tools, the count is slightly high but reasonable for covering multiple Alibaba Cloud services (OSS, ECS, RDS, VPC) with basic operations. It provides a balanced scope without being overwhelming, though some services have more comprehensive coverage than others.

Completeness3/5

The toolset covers basic operations for OSS (CRUD), ECS (describe, monitor, control), and other services, but has notable gaps. There's no update operations for most resources, limited monitoring beyond ECS, and missing lifecycle management for RDS/VPC. The 'prompt_understanding' tool doesn't fill these functional gaps.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    A server that provides management and connectivity for Alibaba Cloud RDS database services via OpenAPI, enabling users to create, query, and modify RDS instances through MCP integration.
    36
    55
    Apache 2.0
  • A
    license
    B
    quality
    B
    maintenance
    A server that provides access to Alibaba Cloud resources including ECS, VPC, and CloudMonitor through API and OOS implementations, enabling resource management and monitoring via a unified interface.
    34
    128
    Apache 2.0
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    An MCP server that enables Amazon Q CLI users to create, query, and manage Maverick sites through natural language commands.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RadiumGu/alicloud-ops-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server