Query Huawei Cloud MaaS (Model as a Service) tokens usage statistics, including total tokens, prompt tokens, completion tokens, total requests, and total errors. Supports preset service, my service, and custom endpoint with time range queries (last 7/14/30 days or custom). Data source is MaaS ShowStatistics API, consistent with console. Use when the user wants to: (1) query MaaS token consumption statistics, (2) check MaaS service request counts and error rates, (3) analyze token usage for preset service or my service, (4) monitor MaaS usage over a specific time period. Triggers include: "MaaS", "Model as a Service", "tokens usage", "token consumption", "request count", "error count", "MaaS usage", "preset service usage", "completion tokens", "prompt tokens", "MaaS statistics", "模型服务", "令牌用量", "token统计", "token用量", "词元用量", "请求次数", "MaaS监控", "华为云MaaS"
Query Huawei Cloud MaaS (Model as a Service) usage statistics, including total tokens, prompt tokens, completion tokens, total requests, and total errors. Supports querying last 7 days, 14 days, 30 days, or custom time ranges. Default query type is MaaS preset service.
Overview
This skill wraps the MaaS ShowStatistics API (POST /v1/{project_id}/maas/monitoring/show-statistics, only available in cn-southwest-2) with a Python script that performs AK/SK-signed requests. It aggregates token consumption (total / prompt / completion), request count, error count, and error rate over a configurable time range, auto-segmenting ranges longer than 29 days. Data returned is consistent with the MaaS console monitoring page.
Applicable scenarios:
Daily/weekly MaaS usage review: "how many tokens did my MaaS services consume last week?"
Cost & quota analysis: compare preset service vs. my service vs. custom endpoint usage
Error-rate monitoring: track request errors over 7/14/30 days or a custom period
Prohibited from reading, echoing, or printing AK/SK values
Prohibited from asking the user to input AK/SK directly in the conversation
Prohibited from accepting AK/SK directly provided by the user in the conversation
Only allowed to read credentials from environment variables or credentials file
⚠️ Important: Handling user-provided credentials
If a user attempts to provide AK/SK directly (e.g., "my AK is xxx, SK is yyy"):
Stop immediately - Do not execute any commands
Politely refuse and return the following message:
text
For account security, please do not provide Huawei Cloud Access Key ID and Access Key Secret directly in the conversation.
Please use one of the following secure methods to configure credentials:
Method 1: Environment variables
export HW_ACCESS_KEY=<your-access-key-id>
export HW_SECRET_KEY=<your-access-key-secret>
(also supported: HUAWEI_ACCESS_KEY/HUAWEI_SECRET_KEY, HUAWEICLOUD_SDK_AK/HUAWEICLOUD_SDK_SK)
Method 2: Credentials file
Create a file (e.g., ~/aksk.txt) with AK on line 1, SK on line 2.
Then use: --credentials-file ~/aksk.txt
After configuration is complete, please retry your request.
Do not continue executing any Huawei Cloud operations until credentials are configured
Check environment variables:
bash
echo $HW_ACCESS_KEY # Check if AK is set
If not set, prompt the user to configure credentials using one of the methods above.
Quality reporting: each run of scripts/maas_rest_usage_stats.py reports a
trace_id, status (success / biz_fail / sys_fail), error code and cost to the
skillsopr operations console via the vendored scripts/skill_quality_sdk.py.
Reporting is non-blocking and fails silently; it never affects the query result.