dpanel-mcp
Provides tools for managing Docker through DPanel, including containers, images, networks, volumes, compose projects, backups, image builds, cron tasks, registries, and related lifecycle operations.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@dpanel-mcplist my running docker containers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
dpanel-mcp
DPanel 的 MCP (Model Context Protocol) 服务器。将 DPanel 的 Docker 管理能力暴露为 MCP 工具,供 AI Agent 调用。
独立项目,按 DPanel 版本对齐发布:dpanel-mcp 1.11.0 ↔ DPanel 1.11.x。仓库地址:GitHub leavrcn/dpanel-mcp。
参考 portainer/portainer-mcp 的架构设计(能力分级、脱敏、fail-closed 破坏性操作确认)。
架构
MCP Client (Claude/Cursor/Hermes...)
│ stdio 或 streamable-http
▼
dpanel-mcp (Python + FastMCP)
├─ profiles.py 能力分级 read-only / read-write / admin
├─ redaction.py 敏感值脱敏(密码/token/secret)
├─ tools.py 80+ MCP 工具 → DPanel API
└─ client.py JWT 登录 + 自动续期
│ HTTP POST /dpanel/api/* (Authorization: Bearer JWT)
▼
DPanel (donknap/dpanel)
│
▼
Docker Engine (docker.sock)Related MCP server: EasyPanel MCP Server
快速开始
1. 环境变量
export DPANEL_HOST=http://127.0.0.1:8807 # DPanel 访问地址
export DPANEL_USERNAME=admin # DPanel 管理员用户名
export DPANEL_PASSWORD=your-password # DPanel 密码
export DPANEL_MCP_PROFILE=read-write # read-only | read-write | admin2. stdio 模式(本地单用户)
uvx --from git+https://github.com/leavrcn/dpanel-mcp dpanel-mcpClaude Desktop / Cursor 配置:
{
"mcpServers": {
"dpanel": {
"command": "uvx",
"args": ["--from", "git+https://github.com/leavrcn/dpanel-mcp", "dpanel-mcp"],
"env": {
"DPANEL_HOST": "http://127.0.0.1:8807",
"DPANEL_USERNAME": "admin",
"DPANEL_PASSWORD": "your-password"
}
}
}
}3. streamable-http 模式(容器/团队部署)
export DPANEL_MCP_TRANSPORT=streamable-http
export DPANEL_MCP_HTTP_HOST=0.0.0.0
export DPANEL_MCP_HTTP_PORT=8090
export DPANEL_MCP_AUTH_TOKEN=shared-secret # 可选,门禁
uvx --from git+https://github.com/leavrcn/dpanel-mcp dpanel-mcp客户端配置:{"url": "http://host:8090/mcp", "headers": {"Authorization": "Bearer shared-secret"}}
4. Docker 联合部署(推荐生产方式)
DPanel 与 dpanel-mcp 作为两个容器在同一网络运行,MCP 只通过 HTTP 访问 DPanel,无需挂载 docker.sock。
仓库根目录已提供联合部署示例 docker-compose.example.yml(内含 DPanel 1.11.x + dpanel-mcp 完整编排):
# 1. 拷贝并按需修改密码/token
cp docker-compose.example.yml docker-compose.yml
# 编辑 docker-compose.yml,替换所有 CHANGE_ME 占位符
# 2. 启动
docker compose up -d
# 3. 首次启动需创建 DPanel founder 账号(免鉴权接口)
curl -s http://127.0.0.1:8807/dpanel/api/common/user/create-founder \
-H 'Content-Type: application/json' \
-d '{"username":"admin","password":"你的强密码","confirmPassword":"你的强密码"}'单独构建 MCP 镜像:docker build -t dpanel-mcp:latest .
要点:
DPANEL_HOST填 DPanel 的服务名 + 容器内部端口(如http://dpanel:8080),不是宿主机映射端口compose 里固定
DP_JWT_SECRET,DPanel 重启后 MCP 会话不失效(未固定时 DPanel 每次启动随机生成 secret,旧 token 全部作废;MCP 客户端有 401 自动重登兜底)镜像以非 root 用户(uid 10001)运行,内置 TCP 健康检查
DPANEL_MCP_AUTH_TOKEN是 MCP 端点的访问门禁,务必换成强随机值
工具分组
分组 | 工具数 | 说明 |
system | 5 | 系统信息、资源使用、配置、日志 |
env | 5 | Docker 环境(多主机) |
container | 14 | 容器列表/详情/统计/生命周期/删除 |
upgrade | 4 | 容器升级检查/升级/忽略 |
backup | 5 | 容器备份/恢复 |
compose | 10 | 项目列表/部署/控制/日志/销毁 |
image | 11 | 镜像列表/tag/删除/清理 |
image-build | 6 | 镜像构建任务 |
network | 8 | 网络列表/创建/连接/删除 |
volume | 5 | 卷列表/创建/删除 |
explorer | 10 | 文件管理(volume/container/docker 挂载点) |
cron | 8 | 计划任务(含模板) |
store | 5 | 应用商店 |
registry | 4 | 镜像仓库 |
notice | 3 | 通知(操作事件流水) |
共 99 个工具。
能力分级
read-only:仅查询类工具(列表/详情/统计/日志)
read-write:+ 生命周期与创建(start/stop/restart/deploy/create)
admin:+ 破坏性操作(delete/prune/restore/kill),且必须显式传
confirm=true
破坏性操作 fail-closed:不传 confirm 直接拒绝,不执行。
脱敏
所有工具返回值经递归脱敏:键名命中 password/token/secret/key/credential 等 → ******;字符串中的 JWT 与 SECRET=value 形式的环境变量同样脱敏。
鉴权链
MCP server 启动后用 DPanel 管理员账号登录(
/common/user/login,autoLogin=true → 30 天 JWT)JWT 缓存,过期前 5 分钟自动重登
401 时透明重登一次
streamable-http 模式下可加
DPANEL_MCP_AUTH_TOKEN门禁(客户端需带 Bearer)
版本与兼容性
对齐 DPanel 1.11.x(版本号与 DPanel 一致)。所有路由与参数结构均已在真实 DPanel 1.11.0 容器上逐一验证(126 条路由探测 + compose 全生命周期端到端测试)。
DPanel 版本 | 兼容性 |
1.11.x | ✅ 完全兼容(本版本目标) |
1.9.x–1.10.x | ⚠️ 部分路由已重命名(image-delete→delete、explorer 迁移至 common/、container-upgrade 独立模块),约 20 个工具不可用 |
≤1.8.x | ❌ 未验证 |
DPanel API 变更时同步升版本。遇到 endpoint not found on DPanel 错误时,说明 DPanel 版本与本 MCP 不匹配。
Available Tools
99 toolsdpanel_compose_container_ctrlDpanel Compose Container CtrlC
Compose 项目控制:op ∈ start|stop|restart|pause|unpause|ls。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| op | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It does reveal the mutation verbs (start/stop/restart/pause/unpause) versus the read op (ls), which is useful, but it says nothing about permissions required, whether stop/restart disrupt running containers, side effects, or reversibility.
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 short sentence with zero filler and the operation vocabulary front-loaded. It is efficient, though arguably so terse that it omits necessary context rather than being ideally sized.
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?
An output schema exists, so return values need no explanation, and the op set is documented. However, the meaning of 'id' is missing and there is no routing guidance against the many overlapping compose siblings, leaving the definition only minimally viable for a 2-parameter lifecycle-control tool.
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 0% and there are no enums in the schema, so the description must compensate. It fully enumerates the valid op values, which is real added meaning, but the required 'id' parameter is never explained — an agent must guess whether it is a project name, project ID, or container ID.
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?
States a specific verb and resource (Compose project control) and enumerates the exact operations, so an agent knows this operates on a Compose project's containers. It does not, however, distinguish itself from siblings like dpanel_compose_list, dpanel_compose_deploy, or dpanel_compose_destroy, which overlap in scope.
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?
No when-to-use or when-not-to-use guidance is given. The op list implies usage (lifecycle control vs. inspection), but nothing tells the agent how this differs from dpanel_compose_list for listing or dpanel_compose_destroy for teardown, nor what preconditions apply (e.g., the project must exist/deployed).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_createDpanel Compose CreateA
创建/更新 compose 项目。compose_type ∈ text|remoteUrl|outPath(storagePath/store 不可手动建)。 yaml 为完整 docker-compose 内容(text 类型)。传 id 为更新。返回项目 id。
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | ||
| name | Yes | ||
| yaml | Yes | ||
| title | No | ||
| environment | No | ||
| compose_type | No | text |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does add real behavioral context: id triggers update mode and the tool returns the project id. However, it does not disclose side effects (whether creating/updating a project also deploys or starts containers), permission requirements, or what happens to existing containers on update — notable gaps for a mutation 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?
Four short clauses, front-loaded with the create/update purpose and then the parameter rules, with essentially no filler. Dense and efficient, though the parenthetical constraint is somewhat compressed.
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?
An output schema exists, and the description still notes the returned project id, so return values are covered. The main remaining gap is that environment and title have no semantics anywhere, and side effects of a mutation tool with no annotations are not described.
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 0%, so the description must compensate. It does document yaml semantics, the id-update rule, and supplies the compose_type enum values (text|remoteUrl|outPath) that the schema itself lacks — genuinely valuable. But title and environment remain completely undocumented, so coverage is partial.
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?
States a specific verb+resource ('创建/更新 compose 项目') and clarifies that it both creates and updates depending on the id parameter, which distinguishes it from siblings like dpanel_compose_deploy or dpanel_compose_destroy. It does not explicitly name those siblings, but the create/update scope 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?
Gives concrete selection logic: pass id to update, omit it to create, and compose_type must be one of text|remoteUrl|outPath while storagePath/store cannot be created manually. No explicit 'use X instead' routing against dpanel_compose_deploy/get_from_git/get_from_uri, but the when-to-use conditions are clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_deployDpanel Compose DeployC
部署/更新 compose 项目。id 为项目 id。deploy_service_name 可指定只部署部分服务。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| environment | No | ||
| remove_orphans | No | ||
| deploy_service_name | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It says 'deploy/update' but does not disclose what gets replaced/destroyed, whether existing containers are recreated, what remove_orphans does, or any permission/auth requirements. This is thin for a mutating 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short clauses, no waste, with the core action front-loaded before the parameter clarifications. Efficiently structured, though it trades brevity against completeness.
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?
An output schema exists so return values need not be explained, but for a four-parameter mutation tool with 0% schema coverage and no annotations, the description omits environment and remove_orphans semantics and any behavioral detail. It is under-specified for the tool's 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?
Schema description coverage is 0%, so the description must compensate. It explains id ('项目 id') and deploy_service_name (partial-service deployment), but leaves environment and remove_orphans completely undocumented in both schema and description. Two of four parameters gain meaning, so it only partially fills the gap.
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?
States a specific verb+resource combination ('部署/更新 compose 项目' - deploy/update compose project), which an agent can distinguish from siblings like dpanel_compose_create and dpanel_compose_destroy. It does not, however, explicitly contrast itself with those siblings the way a 5 would.
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 notes that deploy_service_name can deploy only part of the services, which is a useful usage hint, but it gives no explicit when-to-use-vs-alternatives guidance or preconditions relative to dpanel_compose_create or dpanel_compose_container_ctrl. Usage is only weakly implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_destroyDpanel Compose DestroyA
销毁 compose 项目(破坏性,需 confirm=true)。delete_data=true 同时删除项目记录; delete_path=true 删除 compose 文件目录。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No | ||
| delete_data | No | ||
| delete_path | No | ||
| delete_image | No | ||
| delete_volume | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full disclosure burden; it does flag the operation as destructive and mandates confirm=true. But it omits two of the most dangerous switches present in the schema (delete_image, delete_volume), so an agent cannot learn the full destructive surface from the description.
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, front-loaded with the destructive warning and the required confirm flag, followed by the flag semantics. No 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?
An output schema exists, so return values need no explanation, and the core confirm/delete_data/delete_path semantics are covered. Still, for a maximally destructive tool the unexplained delete_image and delete_volume flags leave an agent without enough information to call it safely.
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 0%, so the description must document all 6 parameters; it only explains confirm, delete_data, and delete_path. delete_image, delete_volume (both destructive) and the id parameter are left unexplained, so half the parameter semantics are missing.
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?
States a specific verb (销毁/destroy) and resource (compose 项目) and immediately tags it as destructive, which cleanly separates it from siblings like dpanel_compose_create, dpanel_compose_deploy, and dpanel_compose_container_ctrl. An agent can identify the operation without opening the schema.
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 a hard precondition (confirm=true) and explains the effect of two flags, which is real usage guidance. However, it never says when to prefer this over alternatives such as stopping containers via dpanel_compose_container_ctrl, or that the project must exist first, so routing guidance is only partial.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_get_from_gitDpanel Compose Get From GitC
从 Git 仓库拉取 compose 文件。
| Name | Required | Description | Default |
|---|---|---|---|
| uri | Yes | ||
| name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It states that the tool pulls a compose file from Git but does not disclose authentication requirements, whether it writes/overwrites local compose data, what 'name' controls, or any side effects.
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 wasted words. It is structurally clean, though the extreme brevity borders on under-specification for a tool with two undocumented required parameters.
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?
An output schema exists, so return values need not be described. But with no annotations, no schema parameter descriptions, and no sibling differentiation, the one-line description leaves key invocation details missing for a two-required-parameter tool.
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 0%, so the description must compensate for both required parameters 'uri' and 'name'. It supplies no meaning for either parameter, leaving the agent unable to determine expected formats or the role of 'name' beyond guesswork.
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 gives a specific verb (拉取/pull) and resource (compose 文件) and names the source (Git 仓库), so the basic operation is clear. It does not mention the sibling dpanel_compose_get_from_uri, so an agent must infer the contrast from the source wording rather than being explicitly routed.
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 source phrase '从 Git 仓库' implies when this tool is applicable: when the compose file should come from a Git repository. However, there is no explicit when-not guidance and no named alternative such as dpanel_compose_get_from_uri.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_get_from_uriDpanel Compose Get From UriC
从 URL 拉取 compose 文件内容。
| Name | Required | Description | Default |
|---|---|---|---|
| uri | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It implies a read, but says nothing about whether the URL is fetched server-side, whether authentication or network egress restrictions apply, or what happens on an unreachable URL.
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 short sentence that is appropriately sized and front-loads the action. Nothing extraneous, though it is arguably too terse to be useful.
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?
An output schema exists, so return values need not be explained. However, for a network-fetch tool with no annotations and an undocumented parameter, the description leaves key operational context missing.
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 0%, so the single 'uri' parameter is undocumented in the schema. The description compensates only partially by implying the input is a URL; it gives no format, scheme, or accepted-location guidance.
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?
States a specific verb and resource: fetching compose file content from a URL. It is discernible from the sibling dpanel_compose_get_from_git by its URL source, though the description never names that alternative.
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 when-to-use guidance, no prerequisites, and no comparison against dpanel_compose_get_from_git, which is the obvious alternative source for a compose file. The agent must infer the choice purely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_listDpanel Compose ListA
Compose 项目列表(含运行容器概览)。注意:dangling 项目 id=0,仅可查看。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. '仅可查看' signals read-only behavior and the dangling id=0 caveat warns about a pseudo-project that cannot be operated on, which is genuinely useful. However, nothing is said about scope (all projects vs. current environment) or pagination/result limits.
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 compact clauses, purpose first, caveat second — nothing wasted. It is arguably too terse for a non-Chinese-speaking agent, but the structure is front-loaded and efficient.
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?
With zero parameters and an output schema already defined, the description only needs to cover purpose and any special semantics; it does both, including the dangling-project quirk. A short note on when to prefer this over compose_task/compose_log would make it fully 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?
The tool takes zero parameters, so the baseline is 4; there are no argument semantics to clarify beyond the implicit 'returns everything' behavior.
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?
States a specific verb+resource: listing Compose projects, plus the extra detail that each entry includes a running-container overview. This distinguishes it from compose_task/compose_log/compose_deploy siblings, though it never names those alternatives explicitly.
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 is only implied — read the list before acting on a compose project. The note that the dangling project (id=0) is view-only is a useful constraint, but there is no stated when-to-use vs. sibling compose tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_logDpanel Compose LogB
Compose 项目日志。line_total ∈ 50|100|200|500|1000|5000|-1。download=true 返回全量文本。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| download | No | ||
| line_total | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so the description carries the full burden. It does disclose two meaningful behaviors: the accepted line_total values and that download=true returns the full text (implying it supersedes line_total). It omits auth requirements, pagination/tailing semantics, and error behavior for an unknown id.
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 tight sentences with no filler; the constraint list and the download flag are front-loaded. The telegraphic style is efficient, though the line_total set could read more clearly as an enumeration.
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?
An output schema exists, so return-shape explanation is unnecessary, and the description covers the two non-obvious parameters. However, with no annotations and no parameter descriptions in the schema, the required id, permission requirements, and the relationship to sibling log tools remain unaddressed.
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 0% across three params, so the description must compensate. It documents line_total's enum-like set (50|100|200|500|1000|5000|-1) and download's effect, but leaves the required id param entirely unexplained and does not say whether -1 means unlimited.
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?
States a clear verb+resource: retrieving logs for a Compose project. It is distinguishable from dpanel_compose_list and dpanel_compose_task by the log resource, though it never contrasts itself with the sibling dpanel_log_list or dpanel_cron_log_list, which likely serve overlapping logging needs.
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?
No when-to-use, when-not-to-use, or alternative-selection guidance is given. The agent must infer that this is the Compose-scoped log reader and guess how it differs from dpanel_log_list; nothing states the condition that selects this tool over that one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_compose_taskDpanel Compose TaskB
Compose 项目详情与任务状态。id 为项目 id(数字字符串,列表返回)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden, and it does convey that this is a detail/status read rather than a mutation. It says nothing about permissions, error behavior for an unknown id, or side effects. Since an output schema exists, the returned payload itself need not be re-explained.
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, front-loaded sentences with zero filler; the resource is stated first and the parameter clarification second. It is efficiently sized, though borderline terse for a tool whose schema documents nothing.
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 (one required string param, output schema present), and the description covers the key ambiguity of where the id comes from. What is missing is routing guidance against the many sibling compose tools and any note on empty/invalid id handling, leaving it adequate but not fully 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 coverage is 0%, but the description compensates well for the single parameter: it identifies it as the project id, specifies the format (numeric string), and states where it comes from (the list response). This is meaningfully more than the bare 'string' type in 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 names the resource in Chinese ('Compose 项目详情与任务状态'), so an agent learns this returns compose project details plus task status. However it is a noun phrase with no verb, and it blurs project details with task status (name says 'compose_task'), making it only partly distinguishable from siblings like compose_list and compose_log.
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 implies use by telling the agent that the id is a numeric string obtained from the list ('列表返回'), which is a useful prerequisite pointer. There is no explicit statement of when to pick this over dpanel_compose_list, dpanel_compose_log, or dpanel_compose_deploy.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_backup_createDpanel Container Backup CreateB
创建容器备份快照。id 为容器 ID。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It says nothing about whether the backup requires the container to be stopped, whether the operation blocks, where the snapshot is stored, what permissions are needed, or whether it is reversible — significant gaps for a mutating operation.
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, front-loaded with the action then the parameter clarification. Nothing is redundant and nothing could be trimmed.
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?
An output schema exists, so return values need not be described, but for a mutation tool with no annotations the description is too thin: it omits preconditions (e.g. container state), side effects, and when this is preferable to commit/export. It is not complete enough for confident 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 coverage is 0% (the 'id' property has no description), so the description must compensate — and it does by clarifying that 'id' means the container ID. With only one parameter fully explained, this is adequate, though it adds no format or validity hints.
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?
Names a specific verb and resource (create a container backup snapshot), which is easily distinguishable from sibling backup operations like dpanel_container_backup_list, backup_detail, backup_delete and backup_restore. However, it does not explicitly differentiate itself from related snapshot-creating siblings such as dpanel_container_commit or dpanel_container_export.
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 indication of when to use this tool versus alternatives such as dpanel_container_export or dpanel_container_commit, nor any prerequisites or exclusions. Usage is only implied by the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_backup_deleteDpanel Container Backup DeleteA
删除备份(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the safety burden. It discloses that the operation is destructive ('破坏性') and requires confirm=true, which are important behavioral traits beyond the schema. It does not mention irreversibility, permissions, or what happens to the backup data afterward.
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 short sentence front-loads the action, flags destructiveness, and states the required confirmation. 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?
The description covers the core destructive nature and confirmation requirement, and an output schema exists so return values need no explanation. It is nearly complete for a simple delete operation, though it could clarify the id parameter and irreversibility.
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 0%, so the description must compensate. It adds crucial meaning for the confirm parameter (must be true to proceed), but the id parameter remains undocumented beyond its type. Partial compensation justifies a middle score.
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?
States a specific verb and resource: '删除备份' (delete backup). This clearly distinguishes it from sibling backup tools like backup_create, backup_restore, backup_list, and backup_detail. No explicit sibling naming, but the action 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 implies use for deleting a backup and adds the critical requirement '需 confirm=true' (requires confirm=true). However, it does not state when to choose this over alternatives or any exclusions, leaving context to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_backup_detailDpanel Container Backup DetailC
备份详情。id 为备份记录 id。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 says nothing about read-only nature, required permissions, or error behavior for a missing id. Since an output schema exists, the return shape need not be described, but the complete absence of behavioral context is a real 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?
Two short sentences with no filler, and the purpose is front-loaded. It is efficient but borders on under-specification rather than tight conciseness.
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 read tool with an output schema, this is the minimum viable: purpose plus parameter meaning. It omits any read-only assurance or guidance on obtaining a valid id, which would round it out.
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 0% and the schema only declares id as a string, so the description's note that id is the backup record id does add meaning. However, it does not clarify format, source (e.g. from backup_list), or whether it is numeric, leaving the agent to guess.
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?
States a specific resource (备份记录/backup record) and operation (详情/detail), which distinguishes it from the sibling backup_list, backup_create, backup_delete and backup_restore tools. It is clear but does not explicitly name what it is not, so it falls short of a 5.
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 indication of when to call this tool versus the backup list, restore, or delete siblings. The agent must infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_backup_listDpanel Container Backup ListC
容器备份列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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, and it discloses nothing beyond the bare noun phrase. It does not mention pagination, ordering, or what fields a backup entry contains, though 'list' weakly implies a read-only retrieval.
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?
It is a single short phrase with no waste, but it is under-specified rather than concise — brevity here comes at the cost of any informative content.
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?
An output schema exists so return values needn't be explained, and the tool takes no parameters, which lowers the burden. Still, with no annotations and no sibling differentiation, an agent has almost nothing to decide when to call this versus the other backup tools.
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 has zero parameters, so there is nothing for the description to clarify; the baseline of 4 applies for a no-argument tool.
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 '容器备份列表' is essentially a restatement of the tool name and title ('Dpanel Container Backup List'), with no verb or added scope. It does not distinguish this list tool from siblings such as dpanel_container_backup_detail or dpanel_container_backup_restore.
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?
No when-to-use guidance is given. Among a dense sibling set (backup_detail, backup_create, backup_delete, backup_restore), the description never states that this is the enumeration entry point versus the detail or mutation tools, leaving routing entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_backup_restoreDpanel Container Backup RestoreB
从备份恢复容器(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the most important trait: this is destructive and requires confirm=true. It does not say what gets overwritten (container config, volumes, existing data) or whether the container must be stopped, so significant behavioral context is still missing.
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 with no filler; the destructive warning and the confirm requirement are packed in efficiently. It is terse rather than padded, though it borders on under-specified.
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 destructive mutation with no annotations and 0% parameter coverage, the description leaves key gaps: the meaning of 'id', what state is destroyed or overwritten, and whether the container is stopped or replaced. The existing output schema covers return values, so that omission is acceptable, but the input semantics are not.
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 0%, so the description must compensate. It partially clarifies 'confirm' (must be true, beyond the schema's default=false), but leaves 'id' ambiguous — it is unclear whether id identifies the backup to restore from or the container to restore into.
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?
States a specific verb and resource combination ('restore container from backup') that is clearly distinct from the sibling backup_list/detail/create/delete tools. It stops short of naming the target object of 'id' or the source backup, so the exact operation is slightly under-specified.
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?
Gives one concrete usage precondition ('需 confirm=true') and flags the operation as destructive, which tells the agent to be cautious. It offers no guidance on when to restore versus inspect a backup first, nor any prerequisite like stopping the container.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_check_portDpanel Container Check PortC
检查主机端口占用情况。
| Name | Required | Description | Default |
|---|---|---|---|
| port | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 of behavioral disclosure. The verb '检查' implies a read-only check, but the description does not state permissions, side effects, or whether any state is changed.
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 wasted words. However, its extreme brevity leaves essential usage and parameter details unstated.
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?
Given the tool has one undocumented parameter, no annotations, and many sibling tools, the description is too thin. The output schema covers return values, but usage context and parameter meaning remain 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 has one port parameter with no description and a default of 0, and schema coverage is 0%. The description mentions '端口' generally but does not explain what the parameter accepts or what default 0 means.
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: checking host port occupancy. It is clear enough to distinguish from most container lifecycle siblings, though it does not explicitly connect the tool to the container management context implied by its name.
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 on when to use this tool, when not to use it, or which alternatives exist. The description only states what the tool does, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_commitDpanel Container CommitC
将容器提交为新镜像。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| option | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing beyond the bare purpose. It does not say whether this mutates state, what permissions are required, whether the source container keeps running, or where the resulting image lands.
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 single sentence is front-loaded and free of padding, but its brevity reflects under-specification rather than conciseness. There is no structural content that earns its place beyond the bare purpose.
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?
An output schema exists so return values need not be described, but for a mutation tool with no annotations and two fully undocumented parameters, the description is far too thin. It omits the container identifier semantics of 'md5' and the payload shape of 'option'.
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 0% and both parameters are opaque: 'md5' is undocumented and 'option' is a free-form object with no explanation. The description adds no meaning to either parameter, leaving the agent unable to construct a valid call.
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: committing a container into a new image. An agent can understand the basic operation, though it does not distinguish this from nearby siblings like dpanel_container_copy, dpanel_container_export, or the dpanel_image_build_* 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?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as dpanel_container_copy or export. The agent is left to infer usage entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_copyDpanel Container CopyC
复制容器。copy_name 为新容器名。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| copy_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing beyond the mutation itself. It does not say whether the source container must be stopped, whether volumes/network config are duplicated, what permissions are required, or that a new container ID results.
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 the key parameter fact front-loaded, so there is no waste. However, the brevity reflects under-specification rather than disciplined conciseness, given a mutation tool with no annotations.
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 an output schema, so return values need not be described. Still, for an unannotated, destructive/mutating tool with two required opaque parameters and 0% schema coverage, the description leaves too much unsaid for reliable 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 0%, so the description must compensate. It usefully clarifies that copy_name is the new container's name, but leaves md5 completely unexplained — an agent cannot tell whether it identifies the source container or is a hash of something else.
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?
States a specific verb and resource ('复制容器' / copy container), so the agent knows this duplicates a container. It does not differentiate from nearby siblings such as dpanel_container_commit or dpanel_container_export, which also produce derived artifacts from a container.
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?
No when-to-use guidance, no prerequisites, and no mention of alternatives (commit, export, create). The agent must infer that this duplicates an existing container rather than creating one from an image.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_deleteDpanel Container DeleteB
删除容器(破坏性,需 confirm=true)。可选同时删除镜像/卷/链接。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| confirm | No | ||
| delete_link | No | ||
| delete_image | No | ||
| delete_volume | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that the operation is destructive, requires confirm=true, and can optionally cascade to image, volume, and link deletion. However, it omits permission requirements, whether running containers can be deleted, irreversibility details, and failure behavior when confirm is false.
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 zero waste. The destructive nature and confirm requirement are front-loaded before optional cascading deletions, making the risk profile immediately clear.
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?
An output schema exists, so return values need not be explained. For a destructive 5-parameter delete tool with no annotations and 0% schema coverage, the description covers the key risk warning and most optional flags but leaves the required md5 identifier and operational preconditions unclear.
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 0%, so the description must compensate. It meaningfully explains confirm=true and maps the optional delete flags to image/volume/link deletion, covering 4 of 5 parameters. The required md5 parameter remains unexplained, which is a notable gap for a required identifier.
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: deleting a dpanel container, and flags it as destructive. It does not explicitly distinguish this tool from close siblings such as dpanel_container_prune or dpanel_compose_destroy, so sibling differentiation is missing.
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 implies the obvious use case (delete a container) but gives no explicit guidance on when to choose this over prune, compose destroy, or other container lifecycle tools. No prerequisites or exclusions are stated beyond the required confirm=true.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_detailDpanel Container DetailB
容器详情。md5 为容器 ID(完整或前缀)。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral burden, yet it discloses nothing about permissions, whether the call is a safe read, failure behavior for unknown IDs, or rate limits. The only behavioral hint is implicit in the word 'detail' (a non-mutating lookup).
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, front-loaded with the purpose and then the parameter clarification. No filler or redundancy; every clause carries 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?
An output schema exists, so return values need not be explained, and the single parameter is covered. However, with no annotations and no usage guidance, the definition is minimally sufficient rather than complete for a tool embedded in a large container tool family.
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 0% (the schema only declares md5 as a bare string), so the description is the sole source of semantics. It usefully explains that md5 is the container ID and that either the full ID or a prefix is accepted, which is real information 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 clear resource (container) and operation (fetch details), so an agent can tell this is a read of a single container. It does not, however, distinguish itself from close siblings like dpanel_container_stat, dpanel_container_status, or dpanel_container_process, so the reader must infer the boundary.
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 explicit when-to-use statement and no mention of alternatives. The reader is left to infer that this is the lookup tool for a single container, but no condition or exclusion routes the agent between this and the many other container_* siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_exportDpanel Container ExportC
导出容器为镜像 tar。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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, but it only says the output is an image tar. It does not state whether the operation is read-only or writes to disk, where the tar is saved, permission requirements, or any side effects.
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 short, front-loaded sentence with no wasted words. However, it is arguably too terse for a tool with an undocumented parameter, missing essential context that would make the brevity appropriately sized.
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?
An output schema exists, so return values need not be explained. But the description fails to cover the critical 'md5' parameter and provides no usage context, leaving significant gaps for an agent to 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 single required parameter 'md5' has 0% schema description coverage and is not mentioned in the description at all. The agent cannot know what value to supply for 'md5', making correct invocation impossible without guesswork.
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: 'export container as image tar'. This is clear and distinguishable from generic container operations, though it does not explicitly differentiate from siblings like dpanel_container_commit or dpanel_container_backup_create that also produce artifacts.
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 on when to use this tool versus alternatives such as dpanel_container_commit or dpanel_container_backup_create. The description only states what it does, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_listDpanel Container ListA
容器列表(含状态、镜像、名称、网络)。可按 md5(容器ID)或站点名过滤。注意:API 不分页,返回全量。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | No | ||
| site_title | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full disclosure burden. It does add a genuinely useful trait — the API is unpaginated and returns the full set — but omits anything about read-only safety, permissions, or result size implications for large hosts.
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?
Three short sentences, each earning its place: what is returned, how to filter, and the pagination caveat. Front-loaded and free of padding.
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?
An output schema exists, so return-value detail is not strictly required, and the description still summarizes returned fields. The combination of the pagination note and filter semantics makes it largely sufficient for a read-only list tool, with minor gaps around filter interaction.
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 0%, so the description must compensate, and it does: it explains that md5 is the container ID and site_title is a site-name filter. It still doesn't clarify defaults, requiredness, or filter combination behavior, but the core semantics of both params are conveyed.
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?
States a specific verb+resource (container list) and enumerates the fields returned (status, image, name, network), which cleanly separates it from dpanel_container_detail and dpanel_container_stat. It does not name those siblings explicitly, so it falls just short of full sibling differentiation.
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 filter conditions (by md5/container ID or site name) and a behavioral caveat about pagination, which implies how to call it. However, it never states when to prefer this over dpanel_container_detail or dpanel_network_container_list, nor what happens when both filters are supplied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_processDpanel Container ProcessB
容器内进程列表。id 为容器 ID。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. '列表' implies a read-only operation, but nothing is said about required permissions, whether the container must be running, pagination, or failure modes for a nonexistent container ID.
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, front-loaded with the purpose and then the parameter meaning. No filler, though it is arguably terse to the point of under-specification rather than optimally concise.
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?
An output schema exists, so return values need not be explained, and the single parameter is documented. What remains missing for a container-scoped tool is any note about container state requirements or how the process data is scoped.
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 0% and the schema only names a bare string 'id', so the description's clarification that id is the container ID is genuinely additive. With a single parameter this fully compensates for the missing schema 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?
States a specific verb+resource: it lists processes running inside a container, and it identifies the target via the container ID. This is distinguishable from sibling tools like dpanel_container_stat or dpanel_container_status, though it never explicitly contrasts itself with 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 description gives no when-to-use guidance, no prerequisites (e.g. container must be running), and never names an alternative among the many container siblings. The agent must infer the trigger condition entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_pruneDpanel Container PruneA
清理停止的容器(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it does disclose the two most important traits: '破坏性' (destructive/irreversible) and the heavy precondition '需 confirm=true'. It stops short of saying whether all stopped containers are affected (e.g. dangling-only filtering) or what happens if confirm is false.
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 sentence, front-loaded with the action, then the risk, then the precondition. Nothing is padded and no clause is redundant.
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?
An output schema exists, so return values need not be described, and the terse form covers the essentials for a destructive operation. The remaining gap is scope precision (which stopped containers, whether recovery is possible), but it is minor for a pruning tool.
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 single boolean parameter 'confirm' has 0% schema description coverage and a default of false, and the description supplies the missing semantics: it must be true for the operation to proceed. That is real added meaning, though the default/omission behavior is left unexplained.
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?
States a specific verb and resource with a scope qualifier: 清理 (prune) 停止的容器 (stopped containers). An agent can immediately tell this removes stopped containers rather than running ones. It does not, however, differentiate itself from other destructive siblings such as dpanel_container_delete.
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 is only implied by the scope phrase 'stopped containers', which does distinguish it from volume/image/network prune siblings by resource. It names no alternative and gives no explicit when-not-to-use guidance, so it stays at the minimum-viable level.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_statDpanel Container StatC
容器资源统计(CPU/内存/网络 IO)。id 为容器 ID。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. Calling it 'statistics' implies a read-only operation, but the description never confirms read-only semantics, says whether it works on running vs stopped containers, or notes any permission requirements. It discloses almost nothing beyond the metric names.
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 the purpose and the metric list front-loaded, and the parameter meaning appended. No wasted words; it is terse but appropriately so for a simple read 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?
An output schema exists, so return values need not be described, and the one parameter is explained. What remains missing is the routing information an agent needs to choose this tool over the near-identical dpanel_container_status/detail 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 coverage is 0% and the schema only types 'id' as a string. The description compensates by clarifying that id is the container ID, which is meaningful disambiguation (container vs compose vs image id) for a single-parameter tool, though it adds no format or lookup guidance.
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?
States a specific verb-resource pair — container resource statistics — and even enumerates the metrics returned (CPU/memory/network IO). However, it offers no differentiation from the very similarly named siblings dpanel_container_status and dpanel_container_detail, so an agent must guess which of the three returns live resource usage.
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 when-to-use guidance at all and no mention of alternatives such as dpanel_container_status or dpanel_container_process. Usage must be inferred entirely from the name, which is risky given the overlapping sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_statusDpanel Container StatusC
容器生命周期控制:operate ∈ start|stop|restart|pause|unpause。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| operate | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 does not disclose that these are mutating operations, whether they are reversible, what happens to a paused container, permission requirements, or what the output schema reports. The lifecycle verbs hint at mutation but nothing 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?
A single short sentence with no filler, and the operation set is front-loaded. It is efficient, though it omits any mention of the container identifier the caller must supply.
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?
An output schema exists, so return values need not be explained. But for a mutating tool with zero annotations and an undocumented required identifier, the definition leaves the agent without enough to invoke it confidently against the many sibling container tools.
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 0% and the schema declares no enum for 'operate', so the description's enumeration of start|stop|restart|pause|unpause is a real and necessary addition. The required 'md5' parameter (the container identifier) is left entirely undocumented in both schema and description, so coverage is only partial.
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 (lifecycle control) and resource (container) and enumerates the operations, which is genuinely informative. However it conflicts with the tool name and title 'container_status', which implies a read-only status query — an agent scanning names would not expect start/stop/restart semantics here. It also does not differentiate from sibling dpanel_compose_container_ctrl.
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 statement of when to use this tool, no prerequisites, and no routing away from the closely related dpanel_compose_container_ctrl sibling. The operate enum implies context but the agent is left to infer that this is the single-container control path.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_updateDpanel Container UpdateC
更新容器配置(重启策略/环境变量/端口等,option 结构与面板一致)。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| option | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it does not state whether the change requires a container restart, whether it is reversible, what permissions are needed, or how existing config not mentioned in 'option' is treated. The note that 'option 结构与面板一致' hints at the payload shape but discloses nothing about runtime 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?
A single tight sentence that front-loads the verb and resource before listing affected fields. Nothing is padded, though it is under-specified rather than truly concise in the informative sense.
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 mutation tool with no annotations, a free-form nested 'option' object, 0% schema coverage, and 2 required params, the description should do far more. An output schema exists so return values need not be described, but the missing semantics for 'md5' and 'option', plus the absence of any behavioral or safety context, leave the definition materially 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?
Schema description coverage is 0%, so the description must compensate. It only clarifies that 'option' mirrors the panel's structure — a hint, but not a usable spec for a free-form object with additionalProperties:true. The required 'md5' parameter is never explained at all, leaving the agent to guess it identifies the container.
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?
States a specific verb (更新) and resource (容器配置) and enumerates the updatable areas (重启策略/环境变量/端口等), so the agent knows exactly what operation is performed. It does not, however, contrast itself with near-siblings such as dpanel_container_commit or dpanel_compose_container_ctrl, so it falls short of full differentiation.
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 statement of when to use this tool versus alternatives, no prerequisite conditions, and no warning about side effects. The only guidance is implicit in the name and the field list. An agent must infer that this is the tool for modifying an existing container's runtime configuration.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_upgradeDpanel Container UpgradeB
升级容器(拉新镜像并重建,保留配置)。image_tag 留空用原镜像。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| image_tag | No | ||
| enable_bak | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the core mechanic: a new image is pulled and the container is rebuilt while configuration is preserved. Missing is any statement about downtime/recreation impact, irreversibility, or what the default-true enable_bak actually backs up — meaningful gaps for a mutating, rebuild-style operation.
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, front-loaded sentences with no filler; the core operation is stated first and the parameter hint second. Efficient, though extremely terse for the operation's weight.
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?
An output schema exists, so return values need not be explained. Nonetheless, for a container-rebuild tool with an undocumented required md5 and an undocumented enable_bak flag, the definition leaves an agent without enough to call it confidently; it is minimally viable rather than 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 0% across 3 parameters. The description explains only image_tag semantics (empty = original image) and says nothing about the required md5 identifier or the enable_bak default-true backup flag, so two of three parameters remain undocumented in both schema and 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 names a specific verb+resource with a clear mechanic: '升级容器(拉新镜像并重建,保留配置)' — pull the new image and rebuild while keeping config. This distinguishes it from a config-level sibling like dpanel_container_update, though it never explicitly names that sibling or the upgrade_list/upgrade_check pair.
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 one genuine usage rule — 'image_tag 留空用原镜像' (leave image_tag empty to reuse the existing image) — which tells an agent how to call it in the default case. However, it offers no guidance on when to choose this over dpanel_container_update or the upgrade_check sibling, and no prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_upgrade_checkDpanel Container Upgrade CheckC
检查单个容器镜像更新。container_id 为容器 ID。
| Name | Required | Description | Default |
|---|---|---|---|
| container_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It implies a non-mutating check, but says nothing about required permissions, whether it contacts a registry, latency, or rate limits. An output schema exists, which covers return values, but the operational profile is 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?
Very short and front-loaded, which is good, but the second sentence is a near-tautology that consumes half the description without adding information. Every sentence should earn its place; this one does not.
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?
An output schema exists so return values need not be explained, and the tool is a simple one-parameter read. However, the description leaves usage context, the sibling relationship, and parameter format entirely uncovered, which is thin even for a simple tool.
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 0% and the single parameter is undocumented in the schema. The description's 'container_id 为容器 ID' merely restates the parameter name and adds no format, source, or accepted-value information (e.g., ID vs. name). It does not compensate for the coverage gap.
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?
States a specific verb and resource: check whether a single container's image has an update. The word '单个' (single) implicitly distinguishes it from the sibling dpanel_container_upgrade_list, though it never names that alternative. Clear enough for an agent to identify the action.
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?
No when-to-use guidance, no prerequisites, and no mention of the closely related siblings dpanel_container_upgrade_list (list all) or dpanel_container_upgrade (perform the upgrade). The agent must infer the position of this tool in the upgrade workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_upgrade_ignoreDpanel Container Upgrade IgnoreC
忽略容器升级(加入忽略清单)。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| image_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it only restates the mutation. It does not say whether the ignore entry is reversible or how to remove it, what permission/scope is needed, whether it affects only the local node, or what the response contains beyond the existing output schema.
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 short sentence, front-loaded with the verb and resource, and nothing is padded. It is efficient but so terse that brevity comes at the cost of content rather than through it.
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 mutation tool with no annotations, two undocumented parameters, and no explanation of the md5/image_id distinction, the description is not sufficient to call the tool correctly. Only the existence of an output schema relieves it of describing return values.
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?
Both parameters have 0% schema description coverage and the description adds nothing. The required 'md5' is genuinely ambiguous (md5 of an image? of a container? of an upgrade plan?) and 'image_id' is never mentioned, so an agent cannot confidently populate either field.
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 gives a clear verb+resource ('ignore container upgrade') and adds the state change (added to the ignore list), which an agent can distinguish from siblings like dpanel_container_upgrade_check or dpanel_container_upgrade_list. It does not, however, contrast itself against those siblings explicitly.
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 on when to use this instead of the other upgrade tools (upgrade, upgrade_check, upgrade_list), nor any stated precondition such as having run a check first. The 'adds to ignore list' phrasing implies a follow-up action but leaves the triggering context to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_container_upgrade_listDpanel Container Upgrade ListB
容器升级检查列表(含可升级镜像 digest 对比)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It implies a read/list operation and mentions digest comparison, but discloses nothing about permissions, whether it scans remote registries, latency, or how it relates to upgrade_check. For a zero-annotation tool this is thin.
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 that front-loads the resource and adds the digest-comparison detail without filler. Terse but not under-specified relative to its low complexity.
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?
An output schema exists, so return values need not be described, and the zero-parameter schema is trivial. However, given the dense cluster of upgrade-related siblings, the description is not complete enough to route an agent reliably among them.
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 takes zero parameters, so the baseline is 4. There is nothing for the description to clarify beyond the schema, which is empty.
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?
States a specific resource and verb: a list of container upgrade checks with upgradable image digest comparison. The purpose is clear on its own, but it does not distinguish itself from the near-identical siblings dpanel_container_upgrade_check, dpanel_container_upgrade, and dpanel_container_upgrade_ignore, so an agent cannot tell which of the upgrade-family tools to pick from the description alone.
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?
No when-to-use or when-not-to-use guidance is given. With three closely named upgrade siblings (upgrade_check, upgrade, upgrade_ignore), the absence of routing guidance is a real gap, though the 'list' framing weakly implies a read-only inspection step.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_createDpanel Cron CreateA
创建计划任务。trigger_type ∈ cron|event|manual。spec 为 cron 表达式(trigger=cron 时)。 option 结构参考 dpanel_cron_template 返回的模板。
| Name | Required | Description | Default |
|---|---|---|---|
| spec | Yes | ||
| title | Yes | ||
| option | Yes | ||
| trigger_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It does disclose useful constraints beyond schema: trigger_type is limited to cron|event|manual and spec is a cron expression only when trigger=cron. It says nothing about required permissions, side effects, or failure modes for this mutation 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?
Three short sentences with zero filler, and the core action plus the trigger_type constraint are front-loaded. Terse but every sentence carries 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?
For a create/mutation tool with a nested 'option' object and no annotations, the description covers the key conditional logic and defers option details to a sibling (dpanel_cron_template). Output schema exists so return values need not be explained, but permissions, error handling, and the option fields themselves remain unaddressed.
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 0%, so the description must compensate, and it meaningfully explains three of four params: trigger_type's enum values, spec's meaning and conditional applicability, and where to find the option structure. Only 'title' is left unexplained, which is self-evident.
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?
States a specific verb+resource ('创建计划任务' / create a scheduled task), which clearly distinguishes it from read-oriented cron siblings like dpanel_cron_list and dpanel_cron_detail. It does not explicitly name an alternative, but the operation 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?
Implicitly routes the agent to dpanel_cron_template to learn the 'option' structure, which is a useful pointer. However, it gives no when-to-use vs. when-not guidance and no prerequisites, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_deleteDpanel Cron DeleteA
删除计划任务(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that the operation is destructive and requires confirm=true, which is essential for safe invocation. However, it omits other relevant traits such as permissions required, irreversibility beyond the word 'destructive', and whether logs or related data are also removed.
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 containing the operation, its destructive nature, and the confirm requirement. There is no wasted text. The structure puts the most important safety guidance immediately after the action.
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 delete tool with an output schema, return values do not need explanation. The description covers the critical destructive warning and confirm gate, but with no annotations it should ideally say more about permissions, side effects, or what exactly is deleted. It is minimally 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?
Schema description coverage is 0%, and the description adds meaning for only one of the two parameters: confirm must be true despite the schema defaulting it to false. The required id parameter is not described beyond the operation name implying it identifies the scheduled task. This is partial compensation for the low schema 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 states a specific verb and resource: '删除计划任务' (delete scheduled task). It clearly distinguishes this from sibling tools like dpanel_cron_list, dpanel_cron_create, or dpanel_cron_prune_log. An agent can identify the operation without opening the schema.
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 used for deletion and adds a critical condition: '需 confirm=true'. However, it does not compare with alternatives such as dpanel_cron_prune_log or explain when deletion is appropriate versus other cron management actions. The guidance is implied but not explicitly framed around alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_detailDpanel Cron DetailC
计划任务详情。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden and it provides none. It does not state it is a read-only lookup, whether the id must exist, or what happens for missing tasks.
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?
Extremely short, which is efficient, but it is under-specified rather than concise-and-complete. The single sentence is front-loaded but carries almost no 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?
An output schema exists, so return values need not be explained, but for a detail-fetch tool with no annotations and an undocumented id, the description leaves the agent guessing about prerequisites and lookup behavior.
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?
Single required 'id' parameter with 0% schema description coverage, so the description must compensate and does not — it says nothing about the id's format or source. Baseline of 3 applies for the trivial single-param case, but no added meaning is given.
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?
States a specific verb-noun ('计划任务详情' / Cron task detail), which is a clear resource reference. However, it is boilerplate across the many '_detail' siblings (env_detail, container_detail, image_detail, network_detail, volume_detail), offering no distinction from those beyond the entity name embedded in the tool name itself.
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?
No guidance on when to use this versus dpanel_cron_list or the other cron siblings. The agent must infer that 'detail' means fetching a single record's full information by id, but nothing is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_listDpanel Cron ListC
计划任务列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 implies a read-only listing but says nothing about auth requirements, pagination, filtering behavior, or scope (all tasks vs. project-scoped). For a zero-annotation tool this is thin, though the low-risk nature of a list limits the harm.
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?
It is a single short phrase with no waste and the purpose is front-loaded, but this is under-specification rather than effective conciseness — the brevity leaves real gaps an agent must guess at.
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?
An output schema exists so return values need not be explained, and there are no parameters to document. However, with eight sibling cron tools, the description gives no scope, ordering, or relationship context, leaving the agent unable to confidently route between this and dpanel_cron_detail.
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 takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies; no parameter semantics are missing.
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?
"计划任务列表" states a resource (scheduled tasks) and implies the list operation, but it essentially restates the tool name (dpanel_cron_list) without distinguishing it from siblings like dpanel_cron_detail or dpanel_cron_log_list. An agent can infer the basic purpose but gets no scope detail.
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?
No when-to-use guidance, no exclusions, and no mention of alternatives such as dpanel_cron_detail for a single task. The agent must infer that this is the browse-all entry point purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_log_listDpanel Cron Log ListD
计划任务执行日志。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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, yet it discloses nothing about read-only vs mutating behavior, pagination, ordering, result limits, or required permissions. It is silent on every behavioral trait an agent would need.
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?
It is a single short sentence, but that brevity reflects under-specification rather than conciseness. Nothing is front-loaded or elaborated because nothing of substance is said.
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?
Although an output schema exists (so return values needn't be described), the definition omits the one thing that matters: what the required 'id' identifies and what the tool does with it. For a required-parameter lookup tool, this is inadequate.
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?
There is one required parameter, 'id', with 0% schema description coverage, and the description says nothing about it. Whether it is a cron job id or a log entry id, and its format, is entirely unstated, so the description fails to compensate for the coverage gap.
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 '计划任务执行日志。' essentially restates the tool name/title (Cron Log List) without adding a verb or scope. It tells the agent the resource is a scheduled-task execution log but not that the tool lists or retrieves those logs, nor how it differs from dpanel_cron_list, dpanel_log_list, or dpanel_cron_prune_log.
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?
No when-to-use guidance, no prerequisites, and no mention of any alternative tool. With siblings like dpanel_cron_list and dpanel_log_list in the set, the agent is given nothing to disambiguate when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_prune_logDpanel Cron Prune LogB
清理计划任务日志(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It does the important work of flagging the operation as destructive and requiring an explicit confirm=true gate, but it does not disclose the scope of destruction (all logs for the task? older than a threshold?), reversibility, or any permission requirements.
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 with the destructive warning and confirmation gate front-loaded via parenthetical. No filler, though the parenthetical format is slightly dense for the amount of information conveyed.
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 output schema exists, so return values need no explanation. However, with no annotations and 0% schema coverage on a 2-parameter mutation tool, the description leaves the meaning of the required id and the precise scope of the pruning undefined, which is a meaningful gap for a destructive operation.
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 0%, so the description must compensate for both parameters. It clarifies the confirm parameter's required value (true), but the required id parameter is left completely unexplained — the agent cannot tell whether it is a task ID, a log ID, or something else.
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?
States a specific verb+resource ("清理计划任务日志" = prune/clean cron task logs), which distinguishes it from the read-only cron siblings like dpanel_cron_log_list and dpanel_cron_detail. It does not, however, explicitly name those siblings or clarify how pruning differs from deleting a task (dpanel_cron_delete).
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 states a prerequisite ("需 confirm=true") rather than when-to-use guidance. It implies this is the tool for removing cron logs but never contrasts it with dpanel_cron_log_list (view logs) or dpanel_cron_delete (remove the task itself), leaving the agent to infer the selection boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_run_onceDpanel Cron Run OnceB
立即执行一次计划任务。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
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 load. Since an output schema exists, return values needn't be explained, but the description doesn't state whether this requires specific permissions, what happens if the task is already running, or any side effects.
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 short sentence that is front-loaded and efficient. It could be slightly more informative without being verbose, but it is appropriately concise.
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?
With no annotations, an output schema, and a single undocumented parameter, the description is minimally adequate. It lacks details on behavior, permissions, and the meaning of the 'id' parameter, which would help an agent 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?
Schema description coverage is 0%, so the description should compensate for the undocumented 'id' parameter. The description provides no information about the parameter, leaving the agent without guidance on what 'id' refers to or its format.
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 action (run once immediately) and resource (scheduled task), distinguishing it from sibling dpanel_cron_list and dpanel_cron_detail. However, it doesn't name the alternative or clarify scope beyond the action itself.
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 immediate execution as opposed to scheduled, which hints at when to use it, but there are no explicit when-to-use statements, exclusions, or references to alternatives like dpanel_cron_list or dpanel_cron_detail.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_cron_templateDpanel Cron TemplateB
计划任务模板列表(10 个官方模板)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 disclosure burden. The word '列表' implies a non-destructive read, and the fixed count of 10 hints at a static, cacheable catalog, but the description never states read-only behavior, pagination, or where these templates come from. Adequate but thin for a zero-annotation 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?
A single short sentence with the resource front-loaded and no filler. It is efficiently sized, though so terse that it leaves the other dimensions under-served.
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?
An output schema exists, so return values need not be described, and a zero-parameter tool has little to specify. However, the description omits the one thing that would complete it for an agent: what these templates are for and how they relate to dpanel_cron_create.
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 takes zero parameters, so per the baseline there is no parameter semantics to explain and the schema cannot be deficient. Nothing in the description misrepresents the empty input contract.
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?
States a specific resource and verb ('计划任务模板列表' = scheduled-task template list) and even quantifies the payload (10 official templates), which distinguishes it from dpanel_cron_list, dpanel_cron_detail and dpanel_cron_create. It stops short of explicitly naming those siblings, so an agent must infer the difference between 'templates' and 'actual cron jobs'.
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?
No when-to-use or when-not-to-use guidance is given, and no alternative is named. An agent cannot tell from the text whether this is a static catalog to read before calling dpanel_cron_create or something refreshed dynamically. Usage is only implied by the word 'list'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_env_createDpanel Env CreateC
创建 Docker 环境(连接远程 Docker host)。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| title | Yes | ||
| address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 for a mutation tool. It implies a write operation and a remote connection but says nothing about authentication needs, connection validation, failure behavior, or whether creating an env affects the currently active environment.
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 short sentence with the key scope detail front-loaded in the parenthetical. No wasted words, though it is arguably under-specified rather than truly concise.
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 mutation tool with no annotations, three undocumented required parameters, and 0% schema coverage, the description is far too thin. The output schema exists so return values need not be covered, but input and behavioral gaps remain significant.
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 0% for three required parameters, so the description must compensate. It only partially clarifies 'address' as a remote Docker host; 'name' and 'title' are entirely unexplained, and no format or uniqueness constraints are given.
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?
States a specific verb+resource: creating a Docker environment, with the parenthetical clarifying it connects to a remote Docker host. It is distinguishable from siblings like dpanel_env_list, dpanel_env_detail, and dpanel_env_delete, though it does not explicitly contrast with 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?
No guidance on when to use this versus dpanel_env_switch or dpanel_env_detail, nor any prerequisites (e.g., whether the remote host must be reachable first). Usage is only implied by the verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_env_deleteDpanel Env DeleteA
删除 Docker 环境(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | ||
| env_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral burden. It discloses the key traits: the operation is destructive and a confirmation flag is required. It does not state what exactly is deleted (e.g., containers, volumes, configuration), whether the action is reversible, or what permissions are needed. Useful but incomplete safety context.
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, tightly constructed sentence with no filler. The destructive nature and confirmation requirement are front-loaded, so the most important risk information is seen immediately.
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 destructive deletion tool with no annotations, the description provides only minimal safety context (destructive + confirm gate) and omits consequences, scope of deletion, and prerequisites. Output schema exists so return values need not be explained. Adequate but thin for the risk level of the operation.
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 0% and there are two parameters. The description adds critical semantic value for 'confirm' by stating it must be true, which is essential given its default of false. However, 'env_name' is not described at all, leaving half the parameters undocumented beyond the raw 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+resource ('删除 Docker 环境'), immediately distinguishing it from sibling tools like dpanel_env_create, dpanel_env_list, and dpanel_env_switch. An agent can tell exactly what the tool does without needing to infer from the name alone.
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 an important invocation condition (requires confirm=true) and labels the action as destructive, which helps an agent decide whether to proceed. However, it does not say when to use this tool versus alternatives, nor does it describe prerequisites beyond the confirmation flag. Usage is implied by the resource name, not explained.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_env_detailDpanel Env DetailD
Docker 环境详情。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing about read-only nature, required permissions, error behavior, or what happens for a missing environment. It is a bare restatement of the title.
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?
It is a single short sentence with no wasted words, but it is under-specified rather than concise — brevity here costs the agent needed information instead of earning 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?
An output schema exists, which relieves the description of explaining return values, but with no annotations and 0% parameter coverage the definition leaves the agent without the environment-scoping or name-format context needed 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 0% for the single required 'name' parameter. The description does not clarify whether 'name' is an environment name, ID, or slug, nor its format. Only the tool name weakly implies the parameter refers to an environment identifier.
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 "Docker 环境详情" essentially restates the tool title (Dpanel Env Detail) and its name (dpanel_env_detail). It implies a read of environment details but names no distinguishing scope or verb beyond what the name already conveys, and gives no contrast with siblings like dpanel_env_list or dpanel_env_switch.
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 on when to use this tool versus the other env tools (dpanel_env_list, dpanel_env_switch, dpanel_env_create, dpanel_env_delete). No prerequisites, exclusions, or alternative routes are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_env_listDpanel Env ListA
列出 Docker 环境(多主机),含当前环境。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 adds one useful behavioral fact (the result includes the current environment), but does not state that this is a read-only operation, nor anything about ordering or result size — though the presence of an output schema softens the return-value 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?
A single short sentence with the scope parenthetical front-loaded. Zero waste, though it is arguably terse enough that a bit more context would still have earned 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 zero-parameter list tool with an output schema that defines return values, the description covers what the tool returns (the set of Docker environments) clearly enough to call it correctly. The only omission is a declaration of read-only safety, which no annotation supplies.
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 takes zero parameters, so there is nothing for the description to document and the baseline is 4. No parameter semantics are missing or misrepresented.
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?
States a specific verb (列出/list) and resource (Docker 环境), and adds scope detail that the current environment is included. The plural/list framing distinguishes it from dpanel_env_detail, but no sibling is named explicitly.
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 is implied — enumerate environments — but there is no explicit when-to-use or when-not guidance. It does not point to dpanel_env_detail for inspection or dpanel_env_switch for changing the current env, leaving routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_env_switchDpanel Env SwitchC
切换当前 Docker 环境(多主机)。
| Name | Required | Description | Default |
|---|---|---|---|
| env_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 implies a state mutation (switching the active environment) but says nothing about scope or persistence — whether the change applies to subsequent calls, whether it is session- or server-global, or whether it can be reverted. For a context-mutating 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the action front-loaded and no filler. It is efficient, though the brevity comes at the cost of the missing detail noted in other dimensions.
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?
An output schema exists, so return-value explanation is not required. However, for a one-parameter tool that silently mutates the agent's operating environment, the definition omits the side effect, the source of valid env_name values, and any reversal path — leaving the agent under-informed about the call's consequences.
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 0% for the single parameter env_name, so the description must compensate and does not. It never states that env_name is an identifier string that must match an existing environment, nor where to obtain valid values.
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?
States a concrete verb ('切换' / switch) and resource ('当前 Docker 环境') with a scoping qualifier ('多主机' / multi-host). It is easy to distinguish from siblings like dpanel_env_list or dpanel_env_delete, but it never names those siblings explicitly to reinforce the distinction.
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 when-to-use or when-not-to-use guidance, and no prerequisite such as 'call dpanel_env_list first to obtain a valid env_name'. The agent must infer that this tool targets the session's active environment rather than any per-call override.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_contentDpanel Explorer ContentC
读取文件内容。
| Name | Required | Description | Default |
|---|---|---|---|
| file | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it discloses nothing about permissions required, behavior on binary/large files, directory paths, or error conditions. 'Read' weakly implies non-destructive access, which is the only behavioral signal present.
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 single sentence is short, but this is under-specification rather than conciseness. Nothing is front-loaded beyond the bare verb because there is nothing else, and the description fails to earn its place relative to the schema name.
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?
An output schema exists, so return values need not be explained, but for a two-required-parameter path tool with no annotations and 0% parameter coverage the description is far too thin. It leaves the agent unable to determine path semantics or any access constraints.
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 0% for both required parameters, and the description adds no meaning at all for 'file' or 'mount_point'. An agent cannot tell whether file is an absolute path, relative to mount_point, or whether mount_point is required for every call.
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 clear verb+resource (read file contents), which distinguishes it from listing/delete/mkdir siblings. However it omits any scope qualifiers (path form, mount_point meaning) and does not name or contrast any sibling, so an agent gets only a generic read action.
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 when-to-use guidance, no prerequisites, and no mention of alternatives such as dpanel_explorer_list (for directories) or dpanel_explorer_stat. The agent must infer that this tool is for files only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_deleteDpanel Explorer DeleteC
删除文件(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | ||
| file_list | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose two important traits: the operation is destructive and requires confirm=true. However it omits whether deletion is recursive for directories, whether it is recoverable, and what permission level is needed.
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 short sentence with the destructive warning and confirm requirement front-loaded; there is no wasted text. Its brevity reflects under-specification rather than tight writing, but structurally it is well organized.
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 destructive three-parameter tool with no annotations and no schema descriptions, the definition is too thin. An output schema exists so return values need not be explained, but mount_point/file_list semantics and the scope of the deletion are left entirely to inference.
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 0%, so the description must compensate for three undocumented parameters, yet it only mentions confirm. Neither mount_point (what it scopes to) nor file_list (format/relative vs absolute paths, directory handling) is explained.
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 (删除/delete) and resource (文件/files) and adds a critical qualifier about destructiveness. It does not distinguish itself from other delete tools in the wider set, but within the explorer family the intent 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?
There is no guidance on when to use this versus alternatives (e.g. dpanel_explorer_export/import, dpanel_volume_delete) and no mention of prerequisites such as required permissions or which mounts are valid. The only 'condition' given is the confirm flag, which is a runtime requirement rather than usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_exportDpanel Explorer ExportD
导出文件(打包)。
| Name | Required | Description | Default |
|---|---|---|---|
| file_list | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 of behavioral disclosure. It only says '导出文件(打包)' and gives no information about permissions required, whether the operation is synchronous or asynchronous, what happens to the files, or any side effects. This is a serious gap for a tool with no structured hints.
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 extremely short (one sentence fragment) with no wasted words, but it is under-specified rather than appropriately concise. For a tool with two required parameters and no annotations, a single terse phrase does not earn its place by conveying necessary 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?
Although an output schema exists (so return values need not be explained), the description is completely inadequate for the tool's complexity. With no annotations, 0% schema description coverage, and two required parameters, it fails to explain what mount_point means, what file_list contains, or what packaging entails. An agent cannot call this tool correctly based 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?
Schema description coverage is 0%, and the description does not mention either parameter ('mount_point' or 'file_list'). It adds no meaning beyond the bare parameter names in the schema. With two required parameters and no schema descriptions, the description should compensate but does not.
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 verb ('导出' / export) and resource ('文件' / files) with the added note that it packages them ('打包'). However, it does not differentiate this tool from siblings like dpanel_explorer_import or dpanel_explorer_unzip, and it omits what exactly is being exported or from where. It is more than a tautology but remains vague.
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 on when to use this tool versus alternatives. It does not mention prerequisites, context, or any of the many sibling explorer tools (e.g., import, unzip). The agent is left to infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_importDpanel Explorer ImportC
导入文件。file_list: [{name, path}]。
| Name | Required | Description | Default |
|---|---|---|---|
| dst_path | Yes | ||
| file_list | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 discloses only that files are imported, a mutation implied by the verb; it says nothing about overwrite/merge behavior on existing destination files, permission requirements, size limits, or whether the operation is reversible.
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 fragments with zero padding, and the action is front-loaded. The brevity is under-specification rather than genuine conciseness, but nothing is wasted or buried.
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 3-required-parameter mutation tool with no annotations, the description is too thin: destination and mount semantics are undocumented. The existence of an output schema relieves it of explaining return values, but the input-side gaps remain significant.
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 0% across all three required parameters, so the description must compensate. It helpfully reveals the item shape of file_list as [{name, path}], but mount_point and dst_path are left completely unexplained, leaving the agent unable to determine their expected format or relationship.
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 verb+resource ('导入文件' / import files), which is enough to know it moves files into the explorer. However it never says where files are imported to or from, nor how it differs from the closely named sibling dpanel_explorer_export or dpanel_explorer_unzip, so the purpose is only minimally differentiated.
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 when-to-use guidance, no prerequisites (e.g. required mount point validity), and no mention of alternatives such as dpanel_explorer_unzip for archives or dpanel_explorer_export for the reverse direction. The agent is left to infer usage entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_listDpanel Explorer ListC
文件列表。mount_point ∈ volume:<卷名> | container:<容器ID> | docker:<环境名>。
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | / | |
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 implies a read (listing) but never states whether the operation is read-only, whether it requires elevated permissions, what happens on a nonexistent mount_point, or how errors surface. Only the minimum is conveyed.
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 zero filler and the mount_point grammar front-loaded after the purpose. It is terse rather than bloated, though the terseness borders on under-specification rather than genuine conciseness.
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?
An output schema exists so return values need not be explained, but with 0% schema coverage and no annotations the description should cover the 'path' parameter, the read-only nature, and how it differs from sibling explorer reads. It covers only the mount_point syntax, leaving substantial gaps.
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 0%, so the description must compensate, and it partially does: it documents the critical mount_point value grammar (volume:<name> | container:<id> | docker:<env>). However the 'path' parameter and its '/' default are left completely undocumented in both schema and 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?
States a clear verb+resource ('文件列表' = file listing) and the tool name corroborates it, but gives no differentiation from close siblings like dpanel_explorer_content, dpanel_explorer_stat, or dpanel_explorer_path_size, all of which also read from the explorer filesystem.
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?
No indication of when to use this tool versus dpanel_explorer_content or the other explorer read tools, no prerequisites, and no exclusions. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_mkdirDpanel Explorer MkdirC
新建目录。
| Name | Required | Description | Default |
|---|---|---|---|
| dst_path | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing: not that this is a mutating/write operation, not whether it fails or succeeds when the directory already exists (idempotency), not whether parent directories are created, and not what permissions are required. For a state-changing filesystem tool this is a serious omission.
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 short sentence is technically concise, but at this length the problem is under-specification rather than efficiency; there is no front-loaded scope or key constraint to anchor the call.
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?
With two undocumented required parameters, no annotations, and a mutation that affects the filesystem, the definition is not complete enough for an agent to invoke it safely or correctly. The presence of an output schema covers return values but does not compensate for the missing input and behavioral 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 0% and both required parameters (mount_point, dst_path) are bare strings with no further documentation. The description does not explain what a 'mount_point' is, the expected path format, or whether paths are relative or absolute, leaving an agent unable to fill the parameters confidently.
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 ('新建目录' = create a directory), which maps cleanly onto the tool name and distinguishes it from read-oriented siblings like dpanel_explorer_list or dpanel_explorer_stat. It offers no scope detail (e.g., single-level vs recursive, which filesystem) or explicit differentiation from other explorer mutation tools such as dpanel_explorer_import or dpanel_explorer_unzip.
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 when-to-use guidance, no stated prerequisites, and no reference to alternative explorer tools for adjacent operations. An agent must infer everything about applicability from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_path_sizeDpanel Explorer Path SizeC
目录大小统计。
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses almost nothing. It does not state that the operation is read-only, whether traversal is recursive, whether it can be slow or expensive on large trees, what permissions are required, or what happens when the path does not exist.
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 single phrase is maximally concise with zero waste and is front-loaded by default. However, this is brevity born of under-specification rather than disciplined editing, so it should not be rewarded as strong conciseness.
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?
An output schema exists, so return-value explanation is not required. Still, for a two-required-parameter tool with 0% schema coverage, no annotations, and no usage guidance, the description is far too thin for an agent to call it confidently in the right situations.
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 0% and the description adds no meaning for either required parameter. It never explains that mount_point selects the underlying mount/volume and path is resolved relative to it, nor the expected path format (absolute, relative, trailing slash).
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 recognizable purpose (directory size statistics) for the dpanel_explorer_path_size tool, so an agent can infer it computes the size of a directory. However it is a bare noun phrase with no scope or differentiation from siblings such as dpanel_explorer_stat or dpanel_explorer_content, which plausibly also report on paths.
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 on when to use this tool versus dpanel_explorer_stat or dpanel_explorer_content, no prerequisites, and no exclusions. The description is purely a purpose label, so the agent must infer the usage context entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_permissionDpanel Explorer PermissionC
修改文件权限/所有者。mod 如 644;owner 为用户名。
| Name | Required | Description | Default |
|---|---|---|---|
| mod | No | ||
| owner | No | ||
| file_list | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral disclosure burden. It indicates a mutation ('修改') but does not mention required permissions, whether changes are recursive, failure behavior, or any side effects. It adds only the bare minimum beyond the tool name.
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 extremely concise (two short sentences) and front-loads the core action before adding parameter hints. Every phrase serves a purpose, 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?
Despite an output schema that removes the need to describe return values, the description is incomplete for a mutation tool with no annotations. It omits critical context such as the meaning of mount_point, how file_list is interpreted, and any safety or permission requirements, leaving an agent with significant gaps.
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 0%, so the description must compensate for all four parameters. It partially explains 'mod' (e.g., 644) and 'owner' (username), but says nothing about the required parameters 'mount_point' and 'file_list', leaving their meaning and interplay unclear.
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+resource: '修改文件权限/所有者' (modify file permissions/owner). It clearly distinguishes this tool from other explorer siblings (e.g., listing, deleting) by focusing on permission/ownership changes, though it does not explicitly name an alternative tool.
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 guidance on when to use this tool versus alternatives. It only states what it does, with no conditions, prerequisites, or exclusions. Usage is implied by the action but not explicitly addressed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_statDpanel Explorer StatD
文件 stat 信息。
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses nothing. It does not say whether this is a read-only operation, what stat fields are returned, whether it follows symlinks, or how it behaves on missing paths.
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?
It is a single short sentence with no filler and the topic is front-loaded, so it is efficient. However, brevity here reflects under-specification rather than disciplined concision.
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?
Although an output schema exists (so return values need not be described), the description omits the mount_point/path semantics, any usage context, and any behavioral traits for a tool with zero annotations. It is not sufficient for an agent to call this confidently.
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 0% for two required parameters (mount_point, path), and the description compensates with nothing. There is no hint about the relationship between the mount point and the path, or what format either expects.
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 '文件 stat 信息。' essentially restates the tool name (dpanel_explorer_stat) as 'file stat info'. It hints at reading filesystem metadata but names no specific operation outcome and gives no way to distinguish it from siblings like dpanel_explorer_path_size or dpanel_system_stat_list.
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 on when to use this tool versus alternatives. With siblings such as dpanel_explorer_list, dpanel_explorer_content, and dpanel_explorer_path_size operating on the same explorer resource, the absence of any routing guidance is a real gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_explorer_unzipDpanel Explorer UnzipD
解压压缩文件。
| Name | Required | Description | Default |
|---|---|---|---|
| file | Yes | ||
| path | Yes | ||
| mount_point | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 says nothing about overwrite behavior for existing files, supported archive formats, required permissions, or whether the source archive is removed — all critical for a write operation.
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 single sentence is short but that is under-specification rather than conciseness. There is no front-loaded scope or actionable detail to begin with.
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 mutation tool with a three-parameter required schema, zero parameter documentation, and no annotations, the description is far too thin. The output schema existing relieves some return-value burden, but nothing about invocation semantics is covered.
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 three parameters (file, path, mount_point) have 0% schema description coverage, and the description supplies no meaning for any of them. The agent cannot tell the relationship between 'file' and 'path', nor what mount_point refers to.
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 "解压压缩文件" (decompress a compressed file) essentially restates the tool name "unzip". It names a resource type but adds no scope, format support, or distinction from sibling explorer operations such as dpanel_explorer_import or dpanel_explorer_export.
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 on when to use this tool versus alternatives, nor any prerequisites (e.g., archive must already exist at the given path). The agent must infer everything from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_build_createDpanel Image Build CreateC
创建镜像构建任务(从 Dockerfile)。tags 为目标镜像 tag。
| Name | Required | Description | Default |
|---|---|---|---|
| tags | Yes | ||
| option | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 says a task is created from a Dockerfile but does not state whether the build starts immediately, what permissions are needed, what the option field controls, or whether the task is reversible/deletable.
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 wasted words, and the core action is front-loaded. Slightly terse for the amount of behavioral context needed.
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?
An output schema exists, so return values need not be described. However, for a mutation tool with no annotations and an opaque option parameter, the description omits critical context about permissions, build execution, and the option field.
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 0%, so the description must compensate for both parameters. It explains only that tags is the target image tag; the option parameter (an arbitrary object) is left completely unexplained, leaving half the parameters undocumented.
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?
States a specific verb and resource: creating an image build task from a Dockerfile. This distinguishes it from sibling build operations like dpanel_image_build_run, dpanel_image_build_list, and dpanel_image_build_delete, though it does not name those siblings explicitly.
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?
No guidance on when to use this tool versus alternatives such as dpanel_image_build_run or other image build siblings. The reader can infer it creates a task, but there are no preconditions or exclusions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_build_deleteDpanel Image Build DeleteB
删除镜像构建任务(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden; it usefully discloses that the operation is destructive and needs confirm=true, which is behavior beyond the bare schema. However it says nothing about permissions, whether the deletion is reversible, or side effects on running builds.
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 short sentence with the critical destructive/confirm warning front-loaded after the verb. Efficient, though the brevity leaves gaps given zero schema coverage.
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?
An output schema exists so return values need not be described, which helps. But for a destructive tool with no annotations and 0% schema coverage, the description is thinner than ideal, notably omitting any meaning for the id parameter.
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 0%, so the schema provides no parameter meaning. The description adds value by tying confirm=true to the destructive nature, but the required id parameter is left entirely unexplained.
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?
States a specific verb (删除) and resource (镜像构建任务), clearly distinguishing it from dpanel_image_delete and dpanel_image_build_prune. It is unambiguous what the tool acts on, though it does not explicitly name its siblings.
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 notes the operation is destructive and requires confirm=true, but gives no guidance on when to use this over alternatives such as dpanel_image_build_prune, nor any prerequisites. Usage context is only loosely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_build_detailDpanel Image Build DetailD
镜像构建任务详情。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing about authentication, permissions, pagination, or failure behavior. The only hint that this is a read is the word 'detail,' which is not enough for a tool 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but the brevity comes from under-specification rather than efficiency. A single fragment that repeats the title earns no credit for conciseness.
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 presence means return values need not be described, but the definition still fails to explain the id's meaning or when to prefer this over the many sibling detail/list tools. For a build-task detail endpoint it is minimally inadequate.
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 0% for the single required 'id' parameter, so the schema does not explain what the id refers to. The description likewise says nothing about the id, leaving the caller to guess whether it is a build id, image id, or task id.
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 is a bare noun phrase, '镜像构建任务详情,' that essentially restates the tool title 'Dpanel Image Build Detail'. It conveys the resource (image build task) but no verb or scope, and does not distinguish itself from near-siblings like dpanel_image_build_list or dpanel_image_detail.
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 whatsoever on when to call this tool, what prerequisites exist, or how it differs from dpanel_image_build_list or dpanel_image_detail. An agent gets no routing signal from the text.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_build_listDpanel Image Build ListC
镜像构建任务列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 of behavioral disclosure and delivers almost none. It does not state that this is a read-only operation, whether results are paginated or ordered, how many entries are returned, or what fields each entry contains. Only the single fact that a list exists is conveyed.
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 short sentence with zero filler, so it is concise and front-loaded. But at this length it is under-specified rather than efficient – the brevity reflects absent information rather than tight editing.
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 (no parameters, output schema present), so the description need not explain return values. Still, for a list endpoint an agent would benefit from knowing about ordering or whether it needs any prerequisite state, none of which is mentioned. Adequate but with clear gaps.
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 takes zero parameters, and the rule sets a baseline of 4 for parameterless tools. There is nothing for the description to clarify, and the schema is complete (100% 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 phrase '镜像构建任务列表' (image build task list) names the resource clearly enough that an agent can tell it returns build tasks. However it is a bare noun phrase with no verb or scope, and it does nothing to distinguish itself from siblings like dpanel_image_build_detail, dpanel_image_build_create, or dpanel_image_build_run. Purpose is inferable but minimally stated.
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 on when to call this versus dpanel_image_build_detail or the other build-task tools. No prerequisites, no mention of filters or when the list would be empty. The agent must infer purely from the name that this is the enumeration entry point.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_build_pruneDpanel Image Build PruneB
清理构建缓存(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the two most decision-critical traits: the operation is destructive (破坏性) and requires confirm=true. It stops short of stating what exactly is removed (build cache only vs. dangling artifacts), whether the effect is reversible, or what the response reports.
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 sentence with the destructive warning front-loaded and the confirmation requirement packed into a short parenthetical. Nothing is wasted, though a clause on scope would have justified slightly more length.
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?
An output schema exists, so return values need no explanation, and for a one-parameter tool the coverage is close to adequate. The remaining gap is that a destructive, annotation-free operation should define its blast radius (which caches, any workspace/image coupling), which is left unstated.
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 0% for the single parameter, so the schema documents only the default (false). The description compensates by naming the parameter and its required value (confirm=true), which is exactly the semantic an agent needs to avoid a failed or accidental call.
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?
States a specific verb and resource ("清理构建缓存" / prune build cache), which is a genuinely distinct target from dpanel_image_prune or dpanel_image_build_delete. However, it never names or contrasts those adjacent siblings, so the agent must infer the scope boundary itself.
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?
No when-to-use guidance beyond the destructive flag. It does not say when build-cache pruning is appropriate versus dpanel_image_prune or dpanel_image_build_delete, nor whether it is a routine maintenance operation or an escalation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_build_runDpanel Image Build RunD
执行镜像构建任务。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses nothing. It does not say whether the build runs synchronously or is queued, what permissions are required, how failures surface, or whether it is destructive/irreversible.
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?
It is a single short sentence with no waste, but the brevity comes from under-specification rather than disciplined concision. There is essentially nothing to front-load.
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?
An output schema exists, so return values need not be described, which slightly lowers the bar. Even so, for a build-triggering mutation with no annotations and an undocumented id parameter, the description leaves critical context missing.
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 has one required parameter ('id') with 0% description coverage, and the description never mentions it or explains what the identifier refers to (build record id vs image id). With a coverage gap on the only parameter, the description fully fails to compensate.
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 verb and resource ('执行镜像构建任务' = execute image build task), so the general purpose is identifiable. However, it does not distinguish this from siblings like dpanel_image_build_create or dpanel_image_build_list, and it never clarifies that an existing build is being triggered by id rather than a new build being defined.
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 when-to-use guidance, no prerequisites, and no mention of the alternative siblings (create/delete/prune/build_list). The verb 'execute' faintly implies running an existing build, but the agent is left to infer when this tool applies versus dpanel_image_build_create.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_deleteDpanel Image DeleteB
删除镜像(破坏性,需 confirm=true)。md5 为镜像 sha256 digest 数组。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden; it does disclose the two most important traits — the operation is destructive and gated behind confirm=true. It stops short of consequences: what happens if the image is in use, whether deletion is irreversible, or any auth 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?
Two tight sentences with no filler, and the destructive warning plus the confirm gate are front-loaded. Efficient and appropriately sized for a simple 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?
An output schema exists, so return values need no explanation. However, for a mutation tool with zero annotations the description leaves real gaps: no statement about images in use, irreversibility, or failure modes, which an agent would want before deleting.
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 0%, so the description must compensate, and it partially does: md5 is clarified as an array of image sha256 digests (a useful correction given the misleading name) and confirm is explained via the confirm=true requirement. It omits confirm's default of false and the behavior when confirm is absent or false.
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?
States a specific verb and resource (delete image) and flags it as destructive, which is clear on its own. It does not differentiate from the closely related sibling dpanel_image_prune, so an agent must infer which removal operation applies.
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 a precondition (confirm=true) but no when-to-use guidance or comparison to alternatives such as dpanel_image_prune or dpanel_image_tag_delete. Nothing tells the agent when deletion is the right call versus pruning dangling images.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_detailDpanel Image DetailB
镜像详情。md5 为镜像 sha256 digest(如 sha256:abc123...)。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses almost nothing: not that this is read-only, not that auth is required, not what happens if the digest doesn't exist. Only the digest format is clarified.
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, front-loaded with the purpose and then the parameter clarification. No waste, though the brevity comes at the cost of behavioral detail rather than being purely efficient.
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?
An output schema exists, so return-value explanation is correctly omitted, and the parameter is well covered. However, with zero annotations and no output-schema-adjacent behavioral notes, the definition leaves gaps about read-only nature and error conditions for a simple detail tool.
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 0% and the lone parameter is just typed as string, so the description is doing real work by explaining that md5 is actually an image sha256 digest and giving a concrete format example. This meaningfully compensates for the schema gap.
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?
States a specific verb+resource (镜像详情 = image detail) that cleanly distinguishes it from dpanel_image_list and dpanel_image_delete in the sibling set. It is terse but unambiguous about what the tool returns: details for one image.
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?
No when-to-use or when-not-to-use guidance. It never states that this should be used after obtaining a digest from dpanel_image_list, nor any prerequisites. Usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_import_by_image_tarDpanel Image Import By Image TarB
导入镜像 tar(从 DPanel 存储目录)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden and does not. It does not say whether this is an irreversible write, whether it overwrites existing images, what happens on conflicting tags, what errors can occur, or what the output (despite an output schema existing) represents at a high level.
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 short sentence with the action front-loaded and the source qualifier in parentheses. No filler, 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?
With an output schema present, return-value detail is not required, and a zero-parameter tool is simple. Still, a write operation with no annotations should disclose at least basic safety/reversibility context; the description leaves an agent unsure when this is appropriate versus other image-import routes.
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?
Zero parameters, so the schema needs no parameter documentation and the baseline is 4. The parenthetical 'from DPanel storage directory' usefully constrains the input source, which is the only semantic content an agent needs 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?
States a specific verb+resource: importing an image tar from the DPanel storage directory. Distinguishes from image-creation siblings like dpanel_image_build_* or dpanel_image_list by naming the tar-import path, though it does not explicitly name which sibling to use instead.
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?
No when-to-use or when-not-to-use guidance. It does not clarify how this differs from dpanel_explorer_import, dpanel_image_build_create, or where the tar must come from beyond 'DPanel storage directory'. An agent has to infer the invocation context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_listDpanel Image ListC
镜像列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. The verb 'list' implies a read-only operation, which gives some minimal transparency, but the definition says nothing about permissions, pagination, scope, or any side effects.
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 short fragment, which is concise but severely under-specified rather than appropriately sized. It is front-loaded only in the sense that it is the entire description; no useful structure or additional context is provided.
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?
Given the low complexity (zero parameters) and the presence of an output schema, the description does not need to explain return values. However, the total absence of annotations means the agent receives no behavioral or usage context, leaving the definition only minimally 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 there are no parameter semantics to document. Per the rubric, a zero-parameter tool receives a baseline of 4 for this dimension.
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 '镜像列表。' translates directly to 'Image list.', which merely restates the tool name and title. While it identifies the resource and an implicit list operation, it does not differentiate this tool from sibling image tools such as dpanel_image_detail or dpanel_image_tag_search.
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 on when or why to use this tool versus alternatives. It does not mention that it lists images without filtering, nor when an agent should choose it over dpanel_image_detail or other image-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_pruneDpanel Image PruneA
清理悬空镜像(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does flag the two things an agent most needs: this is destructive and it requires confirm=true (which the schema does not state, only a default of false). It doesn't define what counts as 'dangling' or whether the operation is irreversible.
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 sentence that front-loads the action, then the destructiveness warning and the required flag. Nothing extraneous.
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?
An output schema exists, so return values need not be described, and the destructive/confirm behavior is covered. Only the precise scope of 'dangling' images and any side effects remain 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?
The single parameter 'confirm' has 0% schema description coverage, so the description must compensate — and it does, stating '需 confirm=true' as the required value. It adds the actual semantic (a safety gate) that the bare boolean schema lacks.
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?
States a specific verb + resource + scope: pruning '悬空镜像' (dangling images). The 'dangling' qualifier distinguishes it from dpanel_image_delete, though no sibling is named explicitly.
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?
Conveys the operational context (destructive cleanup of dangling images) and the confirm gate, but gives no explicit guidance on when to prefer this over dpanel_image_delete or dpanel_image_build_prune.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_tag_addDpanel Image Tag AddB
为镜像添加 tag。md5 为镜像 digest,tag 形如 repo:tag。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| tag | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It never says whether this overwrites an existing tag, whether the image or registry must already exist, whether auth is required, or whether the operation is idempotent — real gaps for a mutating 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?
Two short sentences, purpose front-loaded, then parameter semantics. Nothing is padded or repeated.
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?
An output schema exists, so return values need not be described, and both input parameters are explained. However, with zero annotations, the description should have covered the mutation risks (overwrite behavior, dependency on existing image/registry) to be complete for this tool class.
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 0%, so the description must compensate, and it does: it explains that md5 is the image digest (clarifying a confusingly named field) and that tag follows the repo:tag form. Both of the two parameters get meaning beyond the bare schema types, though no edge cases (existing tag, missing repo) are covered.
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?
States a specific verb and resource: adding a tag to an image. The prefix pattern (dpanel_image_tag_*) plus the explicit 'add' distinguishes it from tag_delete, tag_search, and tag_sync, though it never names those siblings or contrasts with 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?
No when-to-use guidance, no prerequisites, and no mention of the alternatives (tag_push_batch, tag_sync, tag_delete) that share this prefix. The agent must infer the workflow context entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_tag_deleteDpanel Image Tag DeleteA
删除镜像 tag(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It discloses the destructive nature and required confirm=true flag, which is important, but omits permissions/auth requirements, irreversibility details, and any effect on underlying image layers or other tags.
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 with zero wasted words. The destructive warning and confirm requirement are packed in 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?
An output schema exists, so return values need not be described. However, for a destructive tag-delete tool with no annotations and 0% schema coverage, the description leaves important gaps: tag semantics, alternative tools, and side effects beyond the confirm flag.
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 0% for two parameters. The description documents the confirm=true requirement, which adds real meaning, but it gives no explanation of the required 'tag' parameter (format, source, or examples). Partial compensation only.
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?
States a specific verb ('删除') and resource ('镜像 tag'), and the 'tag' scope distinguishes it from sibling tools like dpanel_image_delete and dpanel_image_tag_add. The purpose is immediately 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?
Provides a clear prerequisite ('需 confirm=true') and flags the operation as destructive, which implies when to use it. However, it does not explicitly contrast with alternatives such as dpanel_image_delete, dpanel_image_tag_add, or dpanel_image_tag_sync.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_tag_push_batchDpanel Image Tag Push BatchC
批量推送镜像 tag 到远程仓库。
| Name | Required | Description | Default |
|---|---|---|---|
| md5 | Yes | ||
| registry_server_address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 implies a remote write operation, but does not disclose authentication needs, registry configuration, whether existing remote tags are overwritten, or what 'batch' means operationally.
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?
It is a single front-loaded sentence with no wasted words, but for a mutation tool with two opaque required parameters it is under-specified rather than appropriately concise. This mirrors the LOW calibration example where extreme brevity left invocation details missing.
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 presence of an output schema reduces the need to explain return values, but with no annotations and 0% parameter coverage the description still omits critical behavior and invocation context. It does not provide enough information for reliable use of a remote tag-push operation.
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 0% and the description does not mention either required parameter. It gives no meaning for 'md5' (which image or tag set?) or 'registry_server_address' (format, credentials, etc.), leaving the agent unable to invoke the tool correctly from the description alone.
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?
States a specific verb (批量推送) and resource (镜像 tag to remote repository), so an agent can tell it is a write operation targeting a remote registry rather than local tag management. It does not explicitly name sibling alternatives, but the batch-push scope is clear enough.
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?
No when-to-use context, no prerequisites, and no alternatives compared. The description only says what it does, leaving the agent to infer when this tool is preferred over dpanel_image_tag_add, dpanel_image_tag_sync, or dpanel_image_tag_delete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_tag_searchDpanel Image Tag SearchC
在 Docker Hub 搜索镜像。
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, but it discloses nothing beyond the fact that a search occurs. It does not mention network access, Docker Hub API rate limits, pagination, result limits, or whether the operation is read-only. The only behavioral hint is the implicit read-only nature of 'search'.
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 or repetition. However, it is under-specified for the task, which is a completeness issue rather than a conciseness one.
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?
Although an output schema exists, the description provides no context about the search source beyond 'Docker Hub', no auth/rate-limit considerations, and no keyword guidance. With no annotations and 0% parameter coverage, the definition leaves significant gaps for an agent invoking a remote search tool.
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 single parameter 'keyword' has 0% schema description coverage, and the description adds no meaning about what the keyword should contain, its format, or examples. The parameter name is largely self-explanatory, but the description does nothing to compensate for the missing schema documentation.
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 (搜索/search) and resource (镜像/images) plus the scope (Docker Hub), so an agent can tell it is a remote image search. It does not mention 'tag' despite the tool name, and it does not name or distinguish itself from sibling tools like dpanel_image_list or dpanel_image_tag_add.
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 explicit when-to-use guidance, no conditions under which to pick this over alternatives, and no mention of prerequisites such as Docker Hub authentication or rate limits. Usage is only implied by the word 'search'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_image_tag_syncDpanel Image Tag SyncB
同步镜像 tag。sync_type ∈ pull|push。tag 形如 repo:tag。
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | ||
| sync_type | No | pull |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It discloses the sync_type domain (pull|push), which the schema does not, but says nothing about whether the operation mutates local state, requires registry auth, or is reversible — significant for a clearly state-changing sync.
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?
Three short fragments, front-loaded with the core purpose followed by the two parameter constraints; no filler. It is arguably too terse, but nothing is wasted.
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?
An output schema exists so return values need not be described, but with no annotations and a state-changing operation, the absence of any auth, side-effect, or scope information leaves the definition materially incomplete 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 0%, so the description must compensate, and it does partially: it fixes sync_type to the pull|push domain and gives the tag format as repo:tag. It stops short of explaining what pull versus push actually do to state.
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?
States a concrete verb+resource combination ('sync image tag') that an agent can act on, and the enum fragment clarifies the two operating directions. However, it never distinguishes this from close siblings such as dpanel_image_tag_add, dpanel_image_tag_delete, or dpanel_image_tag_push_batch, so the exact intent of 'sync' remains inferable rather than stated.
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 when-to-use guidance, no prerequisites, and no mention of alternatives in a crowded image-tag sibling group. The reader must guess whether this is the right tool versus tag_add or push_batch.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_log_listDpanel Log ListD
DPanel 系统日志列表。
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| page_size | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses nothing: no read-only confirmation, no pagination behavior, no permission requirements, no indication of log volume or retention. A two-word restatement of the name leaves an agent with zero 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but this is under-specification rather than conciseness. The single fragment carries no actionable information and is not front-loaded with anything useful.
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?
An output schema exists, so return-value explanation is not required, but for a paginated list tool with two undocumented parameters and no annotations, the definition leaves too much unspecified for an agent to invoke it confidently.
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 0% for both page and page_size, and the description adds nothing about them — no default values (1 and 50), no pagination semantics, no maximum page size. The description fails to compensate for the coverage gap.
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 'DPanel 系统日志列表' merely restates the tool name and title (log list) without specifying what a log entry contains, what the list covers, or how it differs from sibling list tools like dpanel_cron_log_list or dpanel_compose_log. It is essentially a tautology of the identifier.
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?
No guidance whatsoever on when to use this tool versus the many other list/log tools in the sibling set (dpanel_cron_log_list, dpanel_compose_log). No prerequisites, no scope conditions, no alternatives named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_connectDpanel Network ConnectC
将容器接入网络。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| container_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 of behavioral disclosure. It indicates a linking/mutation operation but says nothing about idempotency, required permissions, side effects, or what happens if the container is already connected to the network.
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 single short sentence is front-loaded and free of filler. However, it is under-specified for a two-required-parameter mutation operation, so it is concise but not appropriately sized for the information an agent needs.
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?
An output schema exists, so return values need not be described. But with no annotations and 0% parameter description coverage, the one-line description leaves key behavioral and parameter details missing for a tool that connects a container to a network.
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 0% and both parameters are required. The description only implies the roles of the two parameters (container and network) but never explicitly defines that 'name' is the network identifier or provides format or constraint details, so it does not compensate for the missing schema descriptions.
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?
States a specific verb (接入/connect) and resource (容器/container to 网络/network). It is clear what the tool does, but it does not explicitly differentiate itself from sibling tools such as dpanel_network_disconnect or dpanel_network_container_list.
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 when-to-use guidance, no prerequisites, and no mention of alternatives like dpanel_network_disconnect. Usage is only implied by the tool name, with no explicit context for selecting this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_container_listDpanel Network Container ListC
网络上的容器列表。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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, yet it discloses almost nothing: no read-only confirmation, no pagination or filtering behavior, no error conditions. It is a plain read implied by 'list', but the disclosure is minimal.
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 short, front-loaded sentence with no waste, but its brevity reflects under-specification rather than disciplined conciseness, so it is only moderately sized for the job.
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?
An output schema exists, so return values need not be explained. Still, with no annotations and an undocumented parameter, the description leaves the network scoping and the meaning of 'name' ambiguous, which is insufficient 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 coverage is 0% for the single required 'name' parameter, so the description must compensate. It only hints that 'name' refers to the network ('on the network'), giving marginal meaning; it never states the expected format (ID vs name) or whether it is the network or container identifier.
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 verb-ish action (list) and resource (containers on a network), so the basic purpose is inferable. However, it does not differentiate itself from the many sibling list tools, especially dpanel_container_list, so an agent cannot tell which list to pick from the description alone.
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 on when to use this tool versus dpanel_container_list or dpanel_network_detail. The only usage signal is the implicit 'network' scoping, which the agent must infer from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_createDpanel Network CreateC
创建网络。driver ∈ bridge|macvlan|ipvlan|overlay。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| driver | No | bridge |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It states that a network is created and lists supported drivers, but does not disclose permissions required, whether the operation is reversible, side effects, or conflict handling.
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 very short and front-loaded: the first sentence states the action, and the second gives a key enum constraint. It avoids waste, though the first sentence largely restates the tool title.
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?
Given no annotations and 0% schema description coverage, the description is incomplete. It does not explain the required 'name' parameter, default driver behavior, or any operational context. An output schema exists, so return values need not be described, but the input side is under-specified.
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 0%. The description compensates partially by listing the allowed driver values (bridge|macvlan|ipvlan|overlay), which the schema itself does not encode as an enum. However, the required 'name' parameter remains completely undocumented.
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 ('创建网络' = create network), which clearly identifies the operation. It does not explicitly differentiate from sibling network tools such as dpanel_network_delete or dpanel_network_list, but the name and description together are 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?
There is no guidance on when to use this tool versus alternatives like dpanel_network_connect or dpanel_network_prune. The purpose is implied by the verb, but no prerequisites, exclusions, or usage context are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_deleteDpanel Network DeleteA
删除网络(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It usefully discloses that the operation is destructive and requires explicit confirmation, but it omits other important behavioral details such as dependency handling, irreversibility, or permission requirements.
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 wasted words. It communicates the operation and key constraint 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?
Given the tool is a destructive delete operation with no annotations and a low schema coverage, the description is adequate but incomplete. It covers the confirmation requirement and destructive nature, but lacks details about side effects, dependencies, and error conditions.
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 0%, so the description must compensate. It explains the critical confirm parameter (must be true), but does not clarify the name parameter's format, whether it accepts IDs or names, or any constraints.
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 gives a clear verb ('删除') and resource ('网络'), making it immediately understandable. However, it does not explicitly differentiate from sibling operations such as dpanel_network_prune, which also removes networks.
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 states the operation is destructive and requires confirm=true, which implies usage context. It does not name alternatives (e.g., prune vs delete) or explain when not to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_detailDpanel Network DetailD
网络详情。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 disclosure burden, and it discloses nothing: no indication that this is a read-only lookup, no error behavior for a missing network, no auth or permission context. The four-character description adds zero behavioral information.
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?
It is short, but this is under-specification rather than conciseness. There is no front-loaded statement of what is retrieved or what the parameter means.
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?
An output schema exists, so return values need not be described, but the definition still omits the input semantics, usage context, and any behavioral notes for a tool with zero annotation coverage. It is not complete enough for reliable selection or 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 0%, so the description must compensate for the single 'name' parameter, and it does not. It never clarifies whether 'name' is a network name, an ID, or a partial match, nor whether it must correspond to an existing network.
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 '网络详情' merely restates the tool name and title, giving no verb or scope beyond the bare resource. It does not distinguish this from the sibling dpanel_network_list, which an agent would need in order to pick the right one.
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 when-to-use guidance, no mention of a prerequisite network existing, and no reference to the list tool as the alternative. Usage is only weakly implied by the word 'detail' in the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_disconnectDpanel Network DisconnectC
将容器从网络断开。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| container_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it only restates the action. It does not say whether the container must be running, whether the operation is idempotent, whether it fails if the container is not attached, or that it is reversible via connect.
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 that states the action without waste. It is efficient, though arguably too terse given the total absence of supporting context.
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?
An output schema exists so return values need not be explained, but for a mutation tool with no annotations and 0% param coverage, the description should supply prerequisites, failure conditions, and parameter roles. None are present.
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 0% and the description supplies no parameter meaning. While 'name' (network) and 'container_name' (container) are somewhat inferable from naming, the description does not clarify which identifier refers to which resource, leaving ambiguity.
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?
States a specific verb+resource: disconnecting a container from a network. An agent can identify the operation, though the description does not distinguish it explicitly from the sibling dpanel_network_connect that performs the inverse action.
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 when-to-use guidance, no mention of prerequisites (e.g., the container must currently be attached), and no reference to the alternative dpanel_network_connect. The agent must infer all routing decisions from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_listDpanel Network ListC
网络列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses almost nothing. "列表" loosely implies a read-only enumeration, but there is no mention of pagination, filtering, or whether the result is scoped to the current environment.
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 sentence is short but that brevity comes from under-specification rather than efficiency. A single vague noun phrase with a period earns no credit for being 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?
An output schema exists, so return values need not be explained, but the description still omits scope, environment context, and sibling differentiation for a tool sitting in a large family of network operations.
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 takes zero parameters, so there is nothing for the description to clarify; baseline 4 applies. Schema coverage is 100% and additionalProperties is false, leaving no ambiguity.
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 "网络列表。" merely restates the tool name and title (dpanel_network_list) without adding a verb-resource pairing or scope. It does not distinguish this from siblings such as dpanel_network_detail, dpanel_network_container_list, or dpanel_network_prune.
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?
No when-to-use guidance, no prerequisites, and no alternatives named. The agent must infer from the name alone that this is the unfiltered listing entry point versus dpanel_network_detail for a single network.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_network_pruneDpanel Network PruneA
清理未使用网络(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 disclosure burden, and it does flag the operation as destructive and gated by confirm=true. It does not clarify whether the action is reversible, what scope of networks is affected, or what permissions are required, so it is only partially sufficient for a destructive 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?
A single, front-loaded sentence that conveys purpose, destructiveness, and the required parameter with zero padding. Nothing is wasted or buried.
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?
An output schema exists, so return values need not be described. For a one-parameter prune tool the description covers the essentials (destructive, confirm-gated), though the lack of sibling differentiation and scope detail leaves a small gap.
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 0% with a single parameter, so the description must compensate, and it does by explaining that confirm must be set to true to proceed. It omits the default-false behavior, so it is not fully complete.
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 (清理/prune) and resource (未使用网络/unused networks), and the 'unused' qualifier implicitly separates it from dpanel_network_delete, which targets a specific network. It does not explicitly name the sibling, so it stops short of a 5.
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 destructive nature and the confirm=true prerequisite are stated, which gives an agent a usable operational cue. However, it never says when to choose prune over dpanel_network_delete or what conditions make a network 'unused', leaving usage to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_notice_deleteDpanel Notice DeleteB
删除通知(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose the two most important traits — destructiveness and the confirm=true gate — which is valuable. It stops short of saying whether deletion is permanent/irreversible, whether permissions are needed, or what happens to already-read notices.
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 short parenthetical sentence, front-loaded with the verb and resource, with the destructive warning immediately attached. No filler. It is arguably too terse for a destructive tool, but nothing is wasted.
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?
An output schema exists, so return values need not be explained. However, with no annotations, 0% schema coverage, and a destructive operation, the description is thin — it omits irreversibility, error/allowed conditions, and how 'id' is obtained. Adequate as a minimum but with clear gaps.
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 0%, so the description must compensate. It explains the confirm parameter's required value (confirm=true) for a destructive call, which is the highest-value semantic detail. The required 'id' parameter is left unexplained (no format, source, or where to obtain 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?
States a specific verb+resource (删除通知 / delete notification), which clearly identifies the operation. It does not, however, distinguish itself from the other notice tools (dpanel_notice_list, dpanel_notice_unread), though the verb 'delete' makes the intent 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 provides a precondition (confirm=true required) and flags the destructive nature, which implicitly signals 'only use when you really mean to remove a notice.' There is no explicit when-to-use vs when-not-to-use guidance or reference to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_notice_listDpanel Notice ListC
通知列表(操作事件流水)。
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| page_size | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 disclosure burden, and it offers almost nothing. It does not state that this is a read-only operation, how results are ordered, whether the list is paginated, or whose notices are returned.
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?
It is a single short sentence with the resource leading and the clarifying parenthetical second; nothing is wasted. The brevity is structural virtue even though the content is thin.
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?
An output schema exists so return values needn't be explained, but with zero annotation coverage and two undocumented parameters, the definition leaves an agent without enough to call it confidently — particularly around pagination and result scope.
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 0% for the two parameters (page, page_size), and the description adds no meaning at all — no default values, ranges, or pagination semantics beyond what the bare types imply. The description fails to compensate for the coverage gap.
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 names a verb+resource (notice list) and the parenthetical narrows it to operational event history, which is clear enough on its own. However, it does not distinguish this tool from sibling notice tools like dpanel_notice_unread or dpanel_notice_delete, so an agent must infer the distinction from the names alone.
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 on when to call this versus dpanel_notice_unread (unread notices) or when listing is appropriate at all. No prerequisites, no exclusions, no alternatives named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_notice_unreadDpanel Notice UnreadC
未读通知(action=new)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full behavioral burden, and it discloses essentially nothing. It does not clarify whether this is a pure read or whether it also marks notices as read, what the response contains, or any pagination/volume characteristics — the 'unread' wording is genuinely ambiguous about side effects.
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?
It is very short and not padded, but it is under-specified rather than concise: the parenthetical 'action=new' is cryptic internal jargon that most agents cannot interpret, and the phrase conveys no more information than the tool name.
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?
An output schema exists so return values need not be described, but with no annotations, no parameter docs, and an ambiguous verb, the description should at minimum state whether this is a read-only retrieval and how it relates to dpanel_notice_list. It does neither.
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 takes zero parameters, so there is nothing for the description to explain; baseline 4 applies. The 'action=new' parenthetical adds a small amount of meaning about the underlying call.
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 restates the tool name ('未读通知' = unread notifications) and adds a terse API hint ('action=new'). It identifies the resource but does not clearly distinguish this from the sibling dpanel_notice_list, so an agent cannot tell from the description alone whether this filters unread items or retrieves a count/list.
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 when-to-use guidance and no mention of the obvious alternative dpanel_notice_list. The agent is left to infer the relationship between listing notices and listing unread notices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_registry_createDpanel Registry CreateC
添加镜像仓库。
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | ||
| option | No | ||
| server_address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. '添加' implies a mutation, but there is no mention of permissions, duplicate handling, reversibility, or side effects, leaving significant behavioral 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 single sentence is front-loaded and free of waste, but it is drastically underspecified for a 3-parameter creation tool. This is under-specification rather than effective conciseness.
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?
An output schema exists, so return values need not be explained. However, with no annotations and 0% schema description coverage, the description omits required parameters, option semantics, and usage context, leaving the definition incomplete for a create operation.
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 0% and the description mentions no parameters. The roles of required fields 'title' and 'server_address', as well as the optional 'option' object, are completely undocumented.
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?
States a clear verb ('添加') and resource ('镜像仓库'), making it obvious this is a create operation for image registries. It does not explicitly differentiate from sibling tools like dpanel_registry_list or dpanel_registry_delete, but the name and verb provide reasonable separation.
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?
Provides no when-to-use guidance, prerequisites, or alternatives. It only states the action, leaving the agent to infer that this should be called instead of list/detail/delete when adding a new registry.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_registry_deleteDpanel Registry DeleteA
删除镜像仓库(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does disclose two important behavioral facts: the operation is destructive and requires confirm=true. However, it does not mention irreversibility, permission requirements, or failure modes beyond the confirmation gate.
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 sentence that front-loads the core action and then appends the destructive/confirmation constraint. No filler or repetition.
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?
An output schema exists, so return values need not be described. However, for a destructive two-parameter tool with 0% schema description coverage and no annotations, the description is missing parameter semantics for id and broader operational context, making it only minimally 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 0%, so the description must compensate for both parameters. It clarifies that confirm=true is required, but it says nothing about the required id parameter (e.g., whether it is a registry ID or name, or its format), leaving a significant semantic gap.
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?
States a specific action ('删除') and resource ('镜像仓库'), clearly distinguishing it from sibling registry operations such as dpanel_registry_create, dpanel_registry_list, and dpanel_registry_detail.
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 is implied by the delete action and the destructive warning, but the description does not explicitly say when to use this tool versus alternatives or when not to use it. The confirm=true prerequisite is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_registry_detailDpanel Registry DetailC
镜像仓库详情。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, and it discloses nothing: no indication of read-only nature, auth requirements, or what happens when the id is unknown. An output schema exists so return structure is covered, but the behavioral profile is effectively undocumented.
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 single sentence is not wasteful, but at four characters it is under-specified rather than concise. There is nothing to front-load because nothing is said.
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 (one required param, output schema present), which lowers the bar, but with zero annotations and zero parameter documentation the description leaves an agent guessing about identifier format and read semantics. It is not complete enough for confident 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 0% and the description never mentions the single required 'id' parameter. It is not documented whether this is a numeric registry id, a name, or a slug, so the description adds no meaning beyond the bare 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 phrase "镜像仓库详情" names the resource (registry) and the operation (detail/fetch), which does separate it from siblings like dpanel_registry_list, _create and _delete. However, it is a bare noun phrase with no verb, so the agent must infer that it retrieves a single registry's details. Minimum-viable rather than distinguishing.
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?
No guidance on when to use this versus dpanel_registry_list or any other sibling. The agent can only infer usage from the name. No prerequisites, no context about which id form is expected.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_registry_listDpanel Registry ListC
镜像仓库列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose whether the operation is read-only, whether pagination applies, or whether registries are scoped to a user/workspace. The minimal phrase '列表' implies a retrieval but adds no behavioral detail.
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, very short sentence. It is concise but so terse that it fails to add any informative content beyond the tool name. Still, from a purely structural standpoint it is front-loaded and waste-free.
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?
While an output schema exists (relieving the need to describe return values), the description remains critically incomplete. With no annotations and no parameter context, it should at minimum clarify that this returns a list of configured image registries and that it is a safe read. As written, an agent gains nothing beyond the tool name.
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?
There are zero parameters, and schema coverage is 100%. Per the rubric, 0 params yields a baseline of 4. The description does not need to explain parameters, and its brevity here does not hurt.
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 '镜像仓库列表。' (image registry list) essentially restates the tool name and title. It provides no verb or scope detail beyond what the name already conveys, and offers no distinction from the sibling dpanel_registry_detail.
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?
No guidance is given on when to use this tool or how it relates to siblings like dpanel_registry_detail, dpanel_registry_create, or dpanel_registry_delete. The description does not indicate it should be used to enumerate existing registries before selecting one.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_setting_getDpanel Setting GetC
读取 DPanel 配置项。group_name 如 setting;name 如 DPanelInfo/docker。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| group_name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. '读取' (read) weakly implies a safe read, but nothing is said about permissions, behavior when a key is missing, or value formats; the only added context is example parameter values.
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 compact sentences, front-loaded with the action and resource, then the parameter examples. No filler, though the parameter hint could be integrated more cleanly.
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?
An output schema exists, so return values need not be described. For a two-parameter getter the definition is serviceable, but with 0% schema coverage the lack of an explanation of key/group conventions leaves an agent guessing at valid inputs.
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 0%, so the description must compensate, and it partially does by giving a concrete example for each parameter (group_name='setting', name='DPanelInfo/docker'). However it never explains the valid domain of groups or the dotted/slash key structure, leaving the format largely inferable only from the examples.
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 (读取/read) and resource (DPanel 配置项/config item), so an agent immediately knows this fetches a config value rather than mutating or listing one. It does not explicitly differentiate itself from any sibling, though no other setting-read sibling exists in the list.
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 on when to use this tool versus alternatives, nor any prerequisites or context for the lookup. The example key values hint at the use case but stop short of stating a usage condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_store_createDpanel Store CreateC
添加应用商店源。
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| apps | Yes | ||
| name | Yes | ||
| title | Yes | ||
| store_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it only implies a mutation. It says nothing about permissions required, whether duplicate names are rejected, whether the source is validated against the url before persisting, or any confirmation/rollback 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?
A single short sentence with no padding or wasted words, front-loading the action. It is concise, but the brevity is achieved through under-specification rather than efficient communication.
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?
With an output schema present, return values need not be explained. However, a mutation tool with five fully undocumented required parameters and no annotations leaves an agent without enough context to construct a valid call, which the description should have compensated for.
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?
Five required parameters (name, title, store_type, url, apps) at 0% schema description coverage, and the description supplies zero information about any of them. An agent cannot tell what store_type values are valid or what shape each element of apps must take.
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?
States a specific verb and resource: 添加(add) + 应用商店源(app store source). An agent can distinguish it from dpanel_store_list, dpanel_store_sync, dpanel_store_deploy, and dpanel_store_delete by the create verb, though the description does not name those siblings or clarify the scope of what a 'store source' is.
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?
No indication of when to use this tool versus the other store tools, no prerequisites, and no mention of what identifying information is needed. Only the implied create-vs-other-CRUD reading from the name provides any guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_store_deleteDpanel Store DeleteB
删除应用商店源(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does flag the operation as destructive and states the confirm=true safety gate, which is the most important behavioral context for a delete. However, it omits consequences (whether deployed apps referencing the source are affected), auth/permission requirements, and irreversibility details.
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 that pairs the action with its destructive nature and the confirm requirement. No filler, 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?
An output schema exists so return values need no explanation, and the safety-relevant confirm gate is covered. But with no annotations and 0% parameter coverage, the missing description of 'id' and of what happens to dependents of the deleted source leaves gaps for a destructive tool.
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 0%, so the description must compensate. It clarifies that confirm acts as a required safety flag for this destructive operation (beyond the schema's default=false), which adds real meaning, but the required 'id' parameter is left completely undefined in both schema and 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 names a specific verb and resource ('删除应用商店源' / delete app store source), so an agent can tell it apart from dpanel_store_list, dpanel_store_sync, dpanel_store_deploy and dpanel_store_create by the delete action alone. It does not explicitly differentiate itself from siblings, 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?
There is no when-to-use or when-not-to-use guidance and no alternatives are named. The only hint is the confirm=true prerequisite, which is a usage constraint but not routing guidance against the many other delete/prune siblings in this namespace.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_store_deployDpanel Store DeployC
从应用商店部署应用。store_id 为商店应用 id。
| Name | Required | Description | Default |
|---|---|---|---|
| option | Yes | ||
| store_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It implies a mutating 'deploy' action but says nothing about permissions, side effects, reversibility, or what the required option object affects.
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 terse and front-loaded, with no filler. The store_id clarification earns its place, though the extreme brevity is better characterized as under-specification than strong structure.
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 deploy tool with a required nested option object, no annotations, and many deployment-related siblings, the description is far too thin. An output schema exists, so return values need not be explained, but key deployment behavior and parameter semantics are missing.
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 0%, so the description must compensate, but it only explains store_id as the store app id. The required nested option object is completely undocumented in both the schema and description, leaving its expected contents unclear.
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?
States a specific verb and resource: deploying an application from the app store, and clarifies that store_id identifies the store app. It does not explicitly differentiate itself from siblings like dpanel_compose_deploy, but the store context 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?
Provides no guidance on when to use this tool versus alternatives such as dpanel_store_create, dpanel_store_sync, or dpanel_compose_deploy. The only usage implication is that it deploys from the app store, which is insufficient routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_store_listDpanel Store ListC
应用商店应用列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it states nothing about read-only semantics, pagination, result size, or what 'list' returns. A one-line restatement leaves the agent to guess whether this is a safe read and how results are bounded.
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?
It is a single short sentence with zero waste, but the brevity reflects under-specification rather than crispness. There is nothing to front-load because nothing of substance is said.
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?
An output schema exists, so return values need not be described, and the tool is parameterless, keeping complexity low. However, for a list tool in a large store/cron/container family, the description gives no scope, ordering, or filtering context, leaving a minor but real gap.
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 takes zero parameters, so there is nothing for the description to clarify; baseline 4 applies. No parameter-related information is missing that the description could have supplied.
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 '应用商店应用列表。' merely restates the tool name and title (dpanel_store_list / Dpanel Store List) in Chinese, doing nothing to distinguish it from siblings like dpanel_store_sync, dpanel_store_deploy, dpanel_store_create, or dpanel_store_delete. It identifies the resource but conveys no verb or scope beyond the name itself.
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 on when to use this tool versus the other store-related siblings (sync/deploy/create/delete) or when not to. The agent must infer usage from the name alone; no alternatives or preconditions are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_store_syncDpanel Store SyncD
同步应用商店数据。
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| name | Yes | ||
| store_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden. It says only 'sync app store data' without disclosing direction, side effects, permissions required, idempotency, or whether existing data is overwritten. This is inadequate for a mutation-like operation with three required parameters.
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 short sentence, but it is under-specified rather than concise. It lacks the structure needed to front-load key information, offering no actionable detail.
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?
Given three required parameters, 0% schema description coverage, no annotations, and no output explanation needed (output schema exists), the description is completely inadequate. It does not explain what data is synced, what store_type values are valid, or what the url represents.
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 0% and the description does not mention any of the three required parameters (name, store_type, url). It provides no meaning, format, or expected values beyond the bare parameter names, leaving the agent unable to interpret them correctly.
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 '同步应用商店数据' essentially restates the tool name and title ('Store Sync'), adding no detail about what syncing entails or how it differs from siblings like dpanel_store_list, dpanel_store_deploy, dpanel_store_create, or dpanel_store_delete.
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?
No guidance is provided on when to use this tool versus alternatives, what prerequisites exist, or what context triggers a sync operation. The agent is left to infer usage entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_system_infoDpanel System InfoA
DPanel 系统信息:版本、运行环境、Docker 环境状态、数据挂载。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the behavioral burden. It is a zero-parameter lookup, and the enumerated fields imply a read-only, side-effect-free operation, but the description never states that it is read-only or whether any authentication/permission context is required.
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 with the resource front-loaded and the covered facets listed as a colon-delimited set. Nothing is wasted, though the list-style fragment is terse rather than maximally 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?
An output schema exists, so return values need not be explained, and the zero-parameter signature means no invocation details are missing. For a simple system-info getter, the description is sufficient, with only the safety/read-only framing left implicit.
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 takes zero parameters, so there are no parameter semantics to document; the baseline for a parameterless tool is 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?
Names the resource (DPanel system) and enumerates the specific facets covered: version, runtime environment, Docker environment status, and data mounts. This separates it from siblings like dpanel_system_usage and dpanel_system_stat_list, which cover usage metrics and statistics rather than static environment facts.
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 scope of the tool implies when it applies (a general environment/version lookup), but there is no explicit when-to-use, when-not-to-use, or named alternative. An agent can infer the fit, but must make the routing decision itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_system_stat_listDpanel System Stat ListC
DPanel 多主机统计列表。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing about access requirements, scope, pagination, or whether the data is aggregate vs per-host. 'List' weakly implies a read, but that is inferential rather than 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?
A single short sentence with no filler, and the key noun (multi-host stats) is front-loaded. It is efficient, though its brevity reflects under-specification rather than deliberate economy.
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?
An output schema exists and there are no parameters, so the description does not need to explain return values or arguments. Still, it leaves open whether results cover all hosts or a fixed scope, and gives no basis for preferring it over sibling system tools, so it is only minimally 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?
The tool takes zero parameters, so there is no per-parameter semantics to explain and the baseline of 4 applies. The description adds nothing beyond that, which is acceptable given the empty 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 resource (multi-host statistics) and implies a listing operation, which is enough to know the tool returns a collection of host stats. However, it never distinguishes itself from close siblings such as dpanel_system_usage or dpanel_system_info, so an agent cannot confidently choose it over 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?
There is no guidance on when to use this tool, when not to, or which alternatives exist. The only signal is the word 'list' and the absence of parameters, leaving routing decisions entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_system_usageDpanel System UsageB
DPanel 所在主机资源使用情况(CPU/内存/磁盘/面板占用)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden, but for a zero-argument host-metrics read the burden is small. It conveys that this is a read of host resources, yet it never states that the call has no side effects, is non-destructive, or what freshness/scope of the metrics (live snapshot vs. history) the caller should expect.
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 with no filler; the resource scope is stated immediately and nothing is redundant.
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?
An output schema exists, so return values need not be described, and the description covers what the call is. However, in a namespace with dpanel_system_info and dpanel_system_stat_list, it leaves the boundary between these tools unresolved, which is the main completeness gap.
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 takes zero parameters, so the schema has nothing to disambiguate and the baseline of 4 applies. The parenthetical listing of CPU/memory/disk/panel adds some framing about which metrics are covered.
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+resource: reading the resource usage (CPU/memory/disk/panel usage) of the host where DPanel runs. This clearly separates it from a plain 'info' call at a conceptual level, but it does not name or contrast with the near-identical siblings dpanel_system_info and dpanel_system_stat_list.
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 on when to call this tool versus dpanel_system_info or dpanel_system_stat_list, which sit in the same namespace and are easily confused. Usage is only implied by the noun 'usage'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_volume_createDpanel Volume CreateD
创建卷。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| driver | No | local |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing: not whether the operation is idempotent, what happens if a volume with the same name already exists, whether creation requires elevated privileges, or what the driver selection implies. A single four-character sentence is inadequate for a mutation 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?
It is short, but this is under-specification rather than conciseness: the sentence conveys no actionable content beyond the tool name. Nothing is front-loaded because there is nothing to front-load.
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?
Although an output schema exists (so return values need not be described), the definition is still incomplete for a two-parameter mutation tool: no annotations, no parameter meaning, and no behavioral or usage context. An agent cannot reliably invoke this tool from the description alone.
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 0% for both parameters, and the description mentions neither the required "name" nor the "driver" option (which silently defaults to "local"). The agent gets no semantics for any parameter, so this is a clear gap.
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?
"创建卷" (create volume) is a direct restatement of the tool name dpanel_volume_create and its title, adding no information an agent did not already have. It does not distinguish this tool from siblings such as dpanel_volume_delete or dpanel_volume_prune beyond what the name itself conveys.
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 on when to create a volume versus reusing an existing one, no mention of prerequisites (e.g. required permissions, uniqueness of the name), and no reference to alternative tools. The agent is left to infer all usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_volume_deleteDpanel Volume DeleteA
删除卷(破坏性,需 confirm=true)。name 为卷名数组。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden; it does flag the operation as destructive and mandates confirm=true, which is useful. However, it omits reversibility, whether in-use volumes are rejected, and any auth/permission requirements, leaving notable gaps for a destructive 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?
Two compact sentences with zero waste; the destructive warning and confirm requirement are front-loaded before the parameter note.
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?
An output schema exists, so return values need no explanation, and the destructive/confirm facts are covered. For a destructive multi-name deletion with no annotations, missing details on irreversibility and in-use volume handling leave it only 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?
Schema description coverage is 0%, so the description must carry parameter meaning; it clarifies that name is an array of volume names and that confirm must be true. Both parameters are covered, though the boolean default of false and the confirm semantics beyond the requirement are not elaborated.
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?
States a specific verb+resource (delete volume) and distinguishes it from siblings like dpanel_volume_prune, dpanel_volume_create, and dpanel_volume_list by naming the destructive deletion action. It does not explicitly contrast with prune, but the operation 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?
Provides a prerequisite (confirm=true required) but offers no explicit when/when-not guidance relative to the sibling dpanel_volume_prune, nor any precondition such as the volume being unused. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_volume_detailDpanel Volume DetailD
卷详情。
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 behavioral burden, yet it discloses nothing about what 'detail' returns, permissions required, or any side effects. It supplies zero behavioral context for an undocumented read 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?
It is terse, but this is under-specification rather than earned conciseness. The single fragment conveys almost nothing and leaves the agent without actionable 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?
An output schema exists, so return values need not be explained, but with no annotations, an undocumented parameter, and no usage context, the definition is far from complete for a tool an agent must invoke 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 single required parameter 'name' has 0% schema description coverage, so the schema does not explain it. The description makes no attempt to compensate, never mentioning the name parameter, its expected format, or what it identifies.
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 "卷详情。" (Volume detail) essentially restates the tool name and title without adding a distinct verb+resource statement. It implies a read/detail operation but does not distinguish itself from siblings like dpanel_volume_list or dpanel_volume_create beyond the naming convention.
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 on when to use this tool versus alternatives such as dpanel_volume_list (which likely enumerates volumes) or dpanel_volume_create/delete. No prerequisites, no context, no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_volume_listDpanel Volume ListB
卷列表(含使用状态)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | 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 implies a read-only enumeration and notes that usage status is included, but says nothing about scope, pagination, or whether the listing is filtered by host/environment. That is thin for a tool 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded phrase with zero waste. It is terse rather than padded, though the brevity shades into under-specification given the total absence of usage context.
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 parameterless read tool with an output schema, the return-shape burden is already handled structurally, so the description only needs to orient the agent. It does that minimally but never clarifies how it relates to dpanel_volume_detail or whether the listing is global.
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 takes zero parameters, so per the rubric the baseline is 4. The empty schema with additionalProperties:false leaves nothing for the description to clarify.
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?
States a clear verb+resource (list volumes) and adds a scope detail ('含使用状态' / includes usage status) that distinguishes it from dpanel_volume_detail. It does not explicitly name the sibling, but the list-vs-detail distinction is inferable from the name.
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 is a bare noun phrase with no when-to-use guidance, no prerequisites, and no reference to alternatives such as dpanel_volume_detail or the volume mutation tools. The agent must infer that this is the entry-point enumeration call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
dpanel_volume_pruneDpanel Volume PruneA
清理未使用卷(破坏性,需 confirm=true)。
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the two critical traits: the operation is destructive and requires an explicit confirm=true gate. It stops short of defining what qualifies as 'unused' or stating irreversibility/scope of removal, so a slight gap remains.
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 with no filler. The destructive warning and the confirm requirement are both packed into minimal text with zero 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?
An output schema exists, so return values need not be explained, and the one-parameter schema is fully covered by the confirm note. For a destructive prune tool the safety profile is adequately conveyed, though eligibility criteria for 'unused' volumes remain unstated.
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 single parameter (confirm) has 0% schema description coverage and only a default of false, so the description must supply its meaning. It does exactly that by stating confirm=true is required, which is the essential semantic for this gate.
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 gives a specific verb (清理/prune) and resource (未使用卷/unused volumes), so an agent can distinguish it from generic volume operations like dpanel_volume_delete. It does not explicitly name the sibling it contrasts with, but the 'unused' qualifier carries the distinction.
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 states the destructive condition that gates use (confirm=true), which is implied guidance about caution. However, it never says when to prefer this over dpanel_volume_delete (targeted removal) or lists any prerequisite/alternative, leaving the routing inference to the reader.
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.
99 tool updates
v1.11.0- First observed
dpanel_compose_container_ctrl - First observed
dpanel_compose_create - First observed
dpanel_compose_deploy - First observed
dpanel_compose_destroy - First observed
dpanel_compose_get_from_git - First observed
dpanel_compose_get_from_uri - First observed
dpanel_compose_list - First observed
dpanel_compose_log - First observed
dpanel_compose_task - First observed
dpanel_container_backup_create - First observed
dpanel_container_backup_delete - First observed
dpanel_container_backup_detail - First observed
dpanel_container_backup_list - First observed
dpanel_container_backup_restore - First observed
dpanel_container_check_port - First observed
dpanel_container_commit - First observed
dpanel_container_copy - First observed
dpanel_container_delete - First observed
dpanel_container_detail - First observed
dpanel_container_export - First observed
dpanel_container_list - First observed
dpanel_container_process - First observed
dpanel_container_prune - First observed
dpanel_container_stat - First observed
dpanel_container_status - First observed
dpanel_container_update - First observed
dpanel_container_upgrade - First observed
dpanel_container_upgrade_check - First observed
dpanel_container_upgrade_ignore - First observed
dpanel_container_upgrade_list - First observed
dpanel_cron_create - First observed
dpanel_cron_delete - First observed
dpanel_cron_detail - First observed
dpanel_cron_list - First observed
dpanel_cron_log_list - First observed
dpanel_cron_prune_log - First observed
dpanel_cron_run_once - First observed
dpanel_cron_template - First observed
dpanel_env_create - First observed
dpanel_env_delete - First observed
dpanel_env_detail - First observed
dpanel_env_list - First observed
dpanel_env_switch - First observed
dpanel_explorer_content - First observed
dpanel_explorer_delete - First observed
dpanel_explorer_export - First observed
dpanel_explorer_import - First observed
dpanel_explorer_list - First observed
dpanel_explorer_mkdir - First observed
dpanel_explorer_path_size - First observed
dpanel_explorer_permission - First observed
dpanel_explorer_stat - First observed
dpanel_explorer_unzip - First observed
dpanel_image_build_create - First observed
dpanel_image_build_delete - First observed
dpanel_image_build_detail - First observed
dpanel_image_build_list - First observed
dpanel_image_build_prune - First observed
dpanel_image_build_run - First observed
dpanel_image_delete - First observed
dpanel_image_detail - First observed
dpanel_image_import_by_image_tar - First observed
dpanel_image_list - First observed
dpanel_image_prune - First observed
dpanel_image_tag_add - First observed
dpanel_image_tag_delete - First observed
dpanel_image_tag_push_batch - First observed
dpanel_image_tag_search - First observed
dpanel_image_tag_sync - First observed
dpanel_log_list - First observed
dpanel_network_connect - First observed
dpanel_network_container_list - First observed
dpanel_network_create - First observed
dpanel_network_delete - First observed
dpanel_network_detail - First observed
dpanel_network_disconnect - First observed
dpanel_network_list - First observed
dpanel_network_prune - First observed
dpanel_notice_delete - First observed
dpanel_notice_list - First observed
dpanel_notice_unread - First observed
dpanel_registry_create - First observed
dpanel_registry_delete - First observed
dpanel_registry_detail - First observed
dpanel_registry_list - First observed
dpanel_setting_get - First observed
dpanel_store_create - First observed
dpanel_store_delete - First observed
dpanel_store_deploy - First observed
dpanel_store_list - First observed
dpanel_store_sync - First observed
dpanel_system_info - First observed
dpanel_system_stat_list - First observed
dpanel_system_usage - First observed
dpanel_volume_create - First observed
dpanel_volume_delete - First observed
dpanel_volume_detail - First observed
dpanel_volume_list - First observed
dpanel_volume_prune
TDQS
Scored across 99 tools
Tools are mostly separated by dpanel_<domain>_<action>, and descriptions make the intended operation clear. A few pairs still overlap, such as compose_create vs compose_deploy, image_tag_sync vs image_tag_push_batch, and container_upgrade_list/check/upgrade, so some care is needed during selection.
All names use the dpanel_ prefix and snake_case, with a predictable domain-action pattern. Minor deviations exist, including noun-only names like system_info and container_status, and varied action placement like get_from_uri, but there is no chaotic convention mixing.
99 tools far exceeds the 50+ extreme-mismatch threshold for an MCP tool set. Even for a broad Docker panel domain, this creates a very high selection and maintenance burden.
Coverage is broad across containers, compose, images, networks, volumes, files, cron, store, registry, system, and notices, including lifecycle, backup, and upgrade operations. However, common Docker operations like container logs and exec are absent, and settings/cron update operations are missing.
Maintenance
Related MCP Connectors
Hosting for AI agents: your AI client deploys Docker apps to live HTTPS URLs over MCP.
Your org's AI agents, tasks, runs, search, and brain files as MCP tools and resources.
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
Connect any AI agent to 1,000+ apps and 27,000+ actions through one remote MCP server (OAuth).
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to interact with Docker containers through safe, permission-controlled access to inspect, manage, and diagnose containers, images, and compose services with built-in timeouts and AI-powered analysis.-
- AlicenseBqualityAmaintenanceEnables AI agents to manage infrastructure and deploy Docker services through EasyPanel using natural language commands. It supports full lifecycle management of services, deployments, and networks while facilitating automated scaling and assisted debugging.295MIT
- AlicenseBqualityCmaintenanceEnables AI agents to manage Docker containers, images, Compose stacks, health checks, and logs through a unified MCP interface, ensuring containers stay running with self-healing capabilities.31102 npm5MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to manage Docker containers through a secure MCP interface, supporting container lifecycle operations, log inspection, resource monitoring, and system diagnostics with role-based access control.3MIT