Skip to main content
Glama
animacaeli

agileconfig-mcp-server

by animacaeli

AgileConfig MCP Server

npm version License: MIT Node.js

基于 AgileConfig 的 MCP (Model Context Protocol) 服务器。将 AgileConfig 配置中心的 全部 RESTful API 暴露为 MCP 工具,让你在 AI 工具中直接用自然语言管理配置中心。


目录


Related MCP server: volcengine-mcp-server

功能概览

本 MCP 服务器完整覆盖了 AgileConfig 的 9 大功能模块、36 个 MCP 工具,对应 AgileConfig 的全部 RESTful API:

模块

工具数

涵盖能力

📱 应用管理

5

创建、查看、编辑、删除应用

⚙️ 配置管理

11

配置增删改查、发布/下线、历史查看、版本回滚

🖥️ 节点管理

3

集群节点查看、添加、移除

👤 用户管理

7

用户 CRUD、登录、密码修改

🔐 权限管理

2

查看和设置用户的细粒度 RBAC 权限

📋 系统日志

1

按应用/类型/时间范围查询操作日志

🔌 客户端管理

2

查看已连接客户端、强制断开

🔍 服务发现

3

服务注册、查询、注销

⚙️ 系统设置

2

查看和更新系统级配置

核心特性

  • 🚀 完整 API 覆盖 — 实现了 AgileConfig 所有 RESTful API,无遗漏

  • 🌍 多环境支持 — 按 env 参数隔离 DEV/PROD 等环境;不设 env 时操作所有环境

  • 🔐 双认证模式 — Admin Basic Auth(管理操作)和 App Secret Basic Auth(客户端拉取配置)

  • 配置实时生效 — 发布后 AgileConfig 通过 WebSocket 实时推送至所有客户端

  • 📦 npx 零安装 — 发布到 npm 后,一行配置即可使用,无需克隆和编译

  • 🛡️ 错误处理完善 — 所有 API 调用均包含超时控制、异常捕获和结构化错误返回


在 AI 工具中使用

前提条件:Node.js >= 18,且有一个运行中的 AgileConfig 服务端。

Claude Code

编辑 ~/.claude/settings.json(全局)或项目根目录的 .claude/settings.json(项目级):

{
  "mcpServers": {
    "agileconfig": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "agileconfig-mcp-server"],
      "env": {
        "AGILECONFIG_URL": "http://your-agileconfig-server:5000",
        "AGILECONFIG_ADMIN_USERNAME": "admin",
        "AGILECONFIG_ADMIN_PASSWORD": "your-password",
        "AGILECONFIG_ENV": "DEV"
      }
    }
  }
}

重启 Claude Code 后,用自然语言操作配置中心:

"帮我看下 AgileConfig 上有哪些应用" "给 my-app 添加一个数据库连接字符串配置" "查看 my-app 的配置发布历史" "创建用户 tester,角色 NormalUser" "检查所有服务节点的在线状态" "把 my-app 的配置回滚到上一个版本"

Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS):

{
  "mcpServers": {
    "agileconfig": {
      "command": "npx",
      "args": ["-y", "agileconfig-mcp-server"],
      "env": {
        "AGILECONFIG_URL": "http://your-agileconfig-server:5000",
        "AGILECONFIG_ADMIN_USERNAME": "admin",
        "AGILECONFIG_ADMIN_PASSWORD": "your-password",
        "AGILECONFIG_ENV": "DEV"
      }
    }
  }
}

VS Code / Cursor

在 VS Code 的 mcp.json 或 Cursor 的 .cursor/mcp.json 中配置:

{
  "mcpServers": {
    "agileconfig": {
      "command": "npx",
      "args": ["-y", "agileconfig-mcp-server"],
      "env": {
        "AGILECONFIG_URL": "http://your-agileconfig-server:5000",
        "AGILECONFIG_ADMIN_USERNAME": "admin",
        "AGILECONFIG_ADMIN_PASSWORD": "your-password",
        "AGILECONFIG_ENV": "DEV"
      }
    }
  }
}

Windsurf

编辑 ~/.codeium/windsurf/mcp.json

{
  "mcpServers": {
    "agileconfig": {
      "command": "npx",
      "args": ["-y", "agileconfig-mcp-server"],
      "env": {
        "AGILECONFIG_URL": "http://your-agileconfig-server:5000",
        "AGILECONFIG_ADMIN_USERNAME": "admin",
        "AGILECONFIG_ADMIN_PASSWORD": "your-password"
      }
    }
  }
}

Gemini CLI

gemini mcp add agileconfig -- npx -y agileconfig-mcp-server

执行后 Gemini CLI 会使用当前 shell 的环境变量,请确保已设置:

export AGILECONFIG_URL=http://your-agileconfig-server:5000
export AGILECONFIG_ADMIN_USERNAME=admin
export AGILECONFIG_ADMIN_PASSWORD=your-password

Codex CLI

codex mcp add agileconfig -- npx -y agileconfig-mcp-server

AI 工具配置速查表

AI 工具

配置文件位置

配置方式

Claude Code

~/.claude/settings.json

JSON 配置

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json

JSON 配置

VS Code

.vscode/mcp.json

JSON 配置

Cursor

.cursor/mcp.json

JSON 配置

Windsurf

~/.codeium/windsurf/mcp.json

JSON 配置

Gemini CLI

gemini mcp add 命令

Codex CLI

codex mcp add 命令


本地使用

如果你不想等待 npm 发布,或者需要二次开发,可以在本地克隆并使用。

环境准备

  • Node.js: >= 18(推荐 20+)

  • npm: >= 9

  • AgileConfig 服务端: 需要有一个运行中的 AgileConfig 实例

克隆 & 安装

# 进入你的工作目录
cd /path/to/your/workspace

# 克隆项目
git clone <repo-url> agile-confg-mcp
cd agile-confg-mcp

# 安装依赖
npm install

配置环境变量

# 从模板创建 .env
cp .env.example .env

编辑 .env 文件,填入你的 AgileConfig 服务端信息:

# AgileConfig 服务端地址
AGILECONFIG_URL=http://localhost:5000

# Admin 认证(用户名固定为 admin)
AGILECONFIG_ADMIN_USERNAME=admin
AGILECONFIG_ADMIN_PASSWORD=123456

# 请求超时(毫秒)
AGILECONFIG_TIMEOUT=30000

# 默认环境。留空或设为 "" 将操作所有环境
AGILECONFIG_ENV=DEV

编译 & 运行

# 编译 TypeScript → dist/
npm run build

# 直接启动服务器
npm start

启动后 MCP 服务器会通过 stdio(标准输入输出)与 AI 工具通信,日志输出到 stderr:

[AgileConfig MCP Server] 已启动
[AgileConfig MCP Server] 目标地址: http://localhost:5000
[AgileConfig MCP Server] 默认环境: DEV

使用 MCP Inspector 调试

MCP 官方提供了 Inspector 工具,可以直观地查看工具列表、测试工具调用、检查协议消息:

# 启动 Inspector(会自动打开浏览器)
npm run inspector

浏览器打开后:

  1. 左侧 Tools 面板 — 查看所有注册的 36 个工具及其参数 schema

  2. 点击工具名 — 在右侧填入参数,点击 "Run" 测试调用

  3. 底部 Console — 查看 JSON-RPC 请求和响应的原始报文

如果只想验证服务器能否正常启动(不打开浏览器):

# 直接经 stdio 启动,发送一个 list_tools 请求验证
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | node dist/index.js

在 AI 工具中连接本地 MCP

使用本地路径代替 npx,在 AI 工具的 MCP 配置中指定为 node + 本地 dist/index.js 路径:

{
  "mcpServers": {
    "agileconfig": {
      "type": "stdio",
      "command": "node",
      "args": ["/absolute/path/to/agile-confg-mcp/dist/index.js"],
      "env": {
        "AGILECONFIG_URL": "http://your-agileconfig-server:5000",
        "AGILECONFIG_ADMIN_USERNAME": "admin",
        "AGILECONFIG_ADMIN_PASSWORD": "your-password",
        "AGILECONFIG_ENV": "DEV"
      }
    }
  }
}

对比:npx 方式适合最终用户,无需克隆代码;本地 node 方式适合开发调试,修改代码后 npm run build 即可生效。


全部 MCP 工具列表

应用管理

工具名

说明

API

agileconfig_list_apps

获取所有应用列表

GET /api/app

agileconfig_get_app

根据 ID 获取单个应用详情

GET /api/app/{id}

agileconfig_create_app

创建新应用(名称/分组/密钥/继承等)

POST /api/app

agileconfig_update_app

编辑应用信息

PUT /api/app/{id}

agileconfig_delete_app

删除应用(不可逆)

DELETE /api/app/{id}

配置管理

工具名

说明

认证

API

agileconfig_get_published_configs

获取已发布配置(供客户端拉取)

App Secret

GET /api/config/app/{appId}

agileconfig_get_all_configs

获取所有配置(含编辑中未发布项)

Admin

GET /api/config

agileconfig_get_config

获取单个配置项详情

Admin

GET /api/config/{id}

agileconfig_create_config

添加新配置项(键值对)

Admin

POST /api/config

agileconfig_update_config

修改配置项的值/分组/描述

Admin

PUT /api/config/{id}

agileconfig_delete_config

删除配置项(软删除)

Admin

DELETE /api/config/{id}

agileconfig_publish_config

发布应用的全部待处理变更

Admin

POST /api/app/publish

agileconfig_publish_single_config

上线单个配置项

Admin

POST /api/config/publish/{id}

agileconfig_offline_config

下线单个配置项

Admin

POST /api/config/offline/{id}

agileconfig_get_publish_history

查看应用的发布历史记录

Admin

GET /api/app/Publish_History

agileconfig_rollback_config

回滚到指定历史版本

Admin

POST /api/app/rollback

节点管理

工具名

说明

API

agileconfig_list_nodes

获取集群所有节点(含在线状态/心跳时间)

GET /api/node

agileconfig_add_node

添加节点到集群

POST /api/node

agileconfig_delete_node

从集群移除节点

DELETE /api/node

用户管理

工具名

说明

API

agileconfig_list_users

获取所有用户列表

GET /api/user

agileconfig_get_user

获取单个用户详情

GET /api/user/{id}

agileconfig_create_user

创建用户(用户名/密码/角色/团队)

POST /api/user

agileconfig_update_user

编辑用户(含冻结/解冻)

PUT /api/user/{id}

agileconfig_delete_user

删除用户

DELETE /api/user/{id}

agileconfig_change_password

修改指定用户的密码

PUT /api/user/{id}/password

agileconfig_user_login

用户登录,返回 JWT Token

POST /api/user/login

权限管理

工具名

说明

API

agileconfig_get_user_permissions

查看用户的所有权限

GET /api/user/{id}/permissions

agileconfig_set_user_permissions

设置用户的 RBAC 权限

PUT /api/user/{id}/permissions

系统日志

工具名

说明

API

agileconfig_get_syslogs

按应用/类型/时间范围查询操作日志

GET /api/syslog

客户端管理

工具名

说明

API

agileconfig_list_clients

查看已连接客户端(地址/心跳/标签)

GET /api/client

agileconfig_disconnect_client

强制断开指定客户端

POST /api/client/disconnect

服务发现

工具名

说明

API

agileconfig_list_services

查看所有已注册服务及健康状态

GET /api/service

agileconfig_register_service

注册服务(含元数据)

POST /api/service

agileconfig_unregister_service

注销服务

DELETE /api/service

系统设置

工具名

说明

API

agileconfig_get_settings

查看系统设置(CORS/JWT 等)

GET /api/setting

agileconfig_update_settings

更新系统设置

PUT /api/setting


权限体系

AgileConfig 使用 RBAC(基于角色的访问控制),权限分为全局范围应用范围

权限 Key

说明

APP_ADD

添加应用

APP_EDIT

编辑应用

APP_DELETE

删除应用

APP_AUTH

应用授权管理

CONFIG_ADD

添加配置项

CONFIG_EDIT

编辑配置项

CONFIG_DELETE

删除配置项

CONFIG_PUBLISH

发布配置

CONFIG_OFFLINE

下线配置

NODE_ADD

添加节点

NODE_DELETE

移除节点

CLIENT_DISCONNECT

断开客户端连接

USER_ADD

创建用户

USER_EDIT

编辑用户

USER_DELETE

删除用户

权限范围:

  • GLOBAL — 全局权限,对所有资源生效

  • APP_{appId} — 仅对指定应用生效(例如 APP_my-app


使用示例

示例 1:配置管理全流程

用户: 帮我在 AgileConfig 中为 my-app 添加数据库连接配置

AI 执行流程:
──查看现有配置
  → agileconfig_get_all_configs(appId="my-app")
──添加配置项
  → agileconfig_create_config(
      appId="my-app",
      key="ConnectionStrings:Default",
      value="Server=prod-db;Database=main;User=sa",
      description="生产数据库连接字符串",
      env="DEV"
    )
──发布到客户端
  → agileconfig_publish_config(appId="my-app", env="DEV")

示例 2:运维排障

用户: 检查 AgileConfig 集群运行状态,看看有没有异常

AI 执行流程:
──检查节点健康
  → agileconfig_list_nodes()
──查看已连接客户端
  → agileconfig_list_clients()
──查看错误日志
  → agileconfig_get_syslogs(logType="Error", pageSize=20)
──汇总结果,告知用户节点/客户端/异常情况

示例 3:新成员入职 — 创建账号并授权

用户: 新同事 zhangsan 入职了,给他创建 AgileConfig 账号,让他管理 my-app 的配置

AI 执行流程:
──创建用户
  → agileconfig_create_user(
      userName="zhangsan",
      password="temp@123456",
      role="NormalUser"
    )
──分配权限(仅限 my-app 的配置管理权限)
  → agileconfig_set_user_permissions(
      userId="<返回的用户ID>",
      permissions='[
        {"functionKey":"CONFIG_ADD","appId":"my-app","enable":true},
        {"functionKey":"CONFIG_EDIT","appId":"my-app","enable":true},
        {"functionKey":"CONFIG_PUBLISH","appId":"my-app","enable":true}
      ]'
    )

示例 4:跨环境操作

用户: 把 DEV 环境的 my-app 配置复制到 PROD

AI 执行流程:
──读取 DEV 配置
  → agileconfig_get_published_configs(appId="my-app", appSecret="xxx", env="DEV")
──逐条在 PROD 创建
  → agileconfig_create_config(appId="my-app", key="...", value="...", env="PROD")
──发布 PROD 配置
  → agileconfig_publish_config(appId="my-app", env="PROD")

环境变量参考

变量名

必填

说明

默认值

AGILECONFIG_URL

AgileConfig 服务端地址

http://localhost:5000

AGILECONFIG_ADMIN_USERNAME

Admin 用户名

admin

AGILECONFIG_ADMIN_PASSWORD

Admin 密码

123456

AGILECONFIG_TIMEOUT

API 请求超时(毫秒)

30000

AGILECONFIG_ENV

默认操作环境,留空 = 操作所有环境

DEV


项目结构

agile-confg-mcp/
├── src/
│   ├── index.ts                  # MCP 服务器主入口(工具注册 + 调用分发,~1100 行)
│   ├── agileconfig-client.ts     # AgileConfig REST API 客户端(~450 行)
│   └── types.ts                  # 完整的 TypeScript 类型定义(~250 行)
├── dist/                         # 编译产物(发布到 npm)
├── package.json                  # 含 bin 入口,支持 npx
├── tsconfig.json
├── .env.example                  # 环境变量模板
├── .gitignore
└── README.md

发布到 npm

# 确保已登录 npm
npm login

# 发布(prepublishOnly 脚本会自动执行 npm run build 确保 dist/ 最新)
npm publish

发布后,任何人都可以通过 npx 零安装使用:

npx -y agileconfig-mcp-server

参考链接


MIT License


🤖 Generated with Claude Code

Available Tools

36 tools
agileconfig_add_nodeA

向 AgileConfig 集群添加一个新的服务节点。需要指定节点的访问地址。

ParametersJSON Schema
NameRequiredDescriptionDefault
remarkNo节点备注说明
addressYes节点地址,如 http://192.168.1.100:5000

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool adds a node and requires an address, but lacks details on side effects, idempotency, or error conditions.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no extraneous wording, earning its place by conveying the core functionality efficiently.

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

Completeness4/5

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

Given the simplicity (2 parameters, no output schema), the description adequately covers the essential information, though it could mention the result or state after addition.

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

Parameters3/5

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

With 100% schema coverage, the description adds minimal value beyond the schema. It reiterates the need for an address but does not enrich the understanding of the 'remark' parameter.

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

Purpose5/5

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

The description clearly states the verb 'add' and the resource 'a new service node to the AgileConfig cluster', distinguishing it from sibling tools like delete_node and list_nodes.

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

Usage Guidelines3/5

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

The description implies the tool is used when adding a node to the cluster, but it does not provide explicit guidance on prerequisites, when not to use it, or alternatives like register_service.

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

agileconfig_change_passwordA

修改指定用户的密码,需要提供旧密码和新密码。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes用户 ID
newPasswordYes新密码
oldPasswordYes旧密码

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It only states the password change operation, omitting details like validation of old password, side effects (e.g., token invalidation), or error handling. This is insufficient 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.

Conciseness5/5

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

The description is a single, front-loaded sentence with no extraneous words. Every word serves purpose.

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

Completeness3/5

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

For a simple password change tool with 3 params and no output schema, the description covers the basic operation. However, it lacks details on validation, constraints, and response, making it adequate but not comprehensive.

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

Parameters3/5

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

Schema coverage is 100% with basic descriptions. The tool description merely restates that old and new passwords are required, adding no extra meaning beyond the schema. Baseline score applies.

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

Purpose5/5

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

The description clearly states the action (change password) and the resource (specified user). It distinguishes from sibling tools like update_user, which may update other fields, making the purpose unambiguous.

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

Usage Guidelines3/5

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

The description explicitly requires old and new passwords, implying the user must know the current password. However, it lacks guidance on when to use this tool versus alternatives like update_user, and no prerequisites or exclusions are mentioned.

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

agileconfig_create_appB

创建一个新的应用。需要指定应用名称,可选设置分组、密钥、是否启用、是否继承、继承应用列表和管理员。

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes应用名称(必填)
groupNo应用分组
secretNo应用密钥(不填则自动生成)
enabledNo是否启用,默认 true
appAdminNo应用管理员用户名
inheritancedNo是否开启配置继承
inheritancedAppsNo继承的应用 ID 列表

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are present, so the description must carry the full burden. It only lists required and optional parameters, but fails to disclose any behavioral traits (e.g., side effects, permissions, return values, idempotency).

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

Conciseness4/5

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

The description is a single sentence, concise and front-loaded. However, it is a bit run-on and could be broken into clearer points. Still efficient overall.

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

Completeness2/5

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

Given no output schema and no annotations, the description is incomplete. It does not mention what the tool returns upon success, any prerequisites, or post-creation behavior. A creation tool should disclose expected outcomes.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description provides a high-level list of optional fields, but this largely repeats the schema's own descriptions. It adds minimal additional semantic meaning.

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

Purpose5/5

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

The description explicitly states '创建新的应用' (create a new app), which is a specific verb-resource combination. It clearly distinguishes from sibling tools like update_app or delete_app by focusing on creation.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives such as agileconfig_update_app or agileconfig_delete_app. The description only describes the tool itself without context for selection.

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

agileconfig_create_configA

为指定应用添加一个新的配置项(键值对)。创建后需要发布才能对客户端生效。

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo环境名称。留空将操作所有环境
keyYes配置键名
appIdYes应用 ID
groupNo配置分组
valueYes配置值
descriptionNo配置说明

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the config requires publishing to become active, which is key. However, it does not address behavior on duplicate keys, permission requirements, or response format.

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

Conciseness5/5

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

Two sentences with no redundancy. The first sentence states the core purpose, and the second adds an important operational detail about publishing. Every word earns its place.

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

Completeness3/5

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

No output schema exists, yet the description does not mention what the tool returns. It also omits behavior on errors or conflicting keys. Given the 6 parameters and the need for publishing, more completeness would be beneficial.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents all parameters. The description adds no additional parameter-level meaning beyond what the schema provides.

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

Purpose5/5

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

The description clearly states the tool adds a new config item (key-value pair) for a specified app, and it distinguishes from siblings like update_config and publish_config by mentioning that creation requires separate publishing to take effect.

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

Usage Guidelines3/5

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

The description does not explicitly guide when to use this tool versus other siblings (e.g., update_config, delete_config). It implies creation but lacks direct comparisons or exclusions.

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

agileconfig_create_userB

创建新用户。需要指定用户名和密码,可选设置团队归属和角色(SuperAdmin/Admin/NormalUser)。

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNo用户角色,默认为 NormalUser
teamNo所属团队
passwordYes用户密码
userNameYes用户名

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries full burden. It discloses the action (create) and required/optional parameters, but does not mention side effects, authentication needs, idempotency, or what happens on duplicate usernames.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no redundant information. Every word contributes to clarity.

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

Completeness3/5

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

For a creation tool with 4 parameters and no output schema, the description covers purpose and parameters but lacks details about return value, error handling, or post-creation behavior. It is adequate but not thorough.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description repeats some schema info (required fields, role enum) but adds context about defaults and optionality. It does not provide additional meaning beyond what the schema already offers.

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

Purpose4/5

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

The description explicitly states '创建新用户' (create new user), which is a specific verb-resource pair. It lists required and optional fields, helping distinguish from sibling tools like update or delete. However, it does not explicitly contrast with alternatives.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as update_user or delete_user. The agent is not told about prerequisites or scenarios where 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.

agileconfig_delete_appA

删除指定的应用。注意:此操作不可逆!

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes要删除的应用 ID

TDQS

A3.8/5.0
Behavior3/5

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

Discloses irreversibility, a key behavioral trait, but fails to mention potential side effects, permissions, or return value. Since no annotations exist, more detail would be beneficial.

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

Conciseness5/5

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

Two sentences with no waste, front-loaded with the action followed by a critical warning.

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

Completeness4/5

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

Adequate for a simple 1-parameter tool with no output schema, but could be improved by explaining what 'delete app' entails regarding associated data.

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

Parameters3/5

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

Schema coverage is 100%, and the description does not add meaning beyond the schema's 'id' parameter definition.

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

Purpose5/5

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

Description clearly states the verb 'delete' and resource 'app', distinguishing it from siblings like 'update_app', 'list_apps', etc.

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

Usage Guidelines3/5

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

Includes a warning about irreversibility, implying caution, but does not provide explicit when-to-use or alternatives.

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

agileconfig_delete_configB

删除指定的配置项(软删除)。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes要删除的配置项 ID
envNo环境名称。留空将操作所有环境

TDQS

B3.3/5.0
Behavior3/5

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

The description mentions '软删除' (soft delete), which adds behavioral context beyond the schema (which only says 'delete'), indicating the operation is reversible. However, with no annotations provided, the description does not disclose other important traits like required permissions, side effects, or return behavior, so it only partially meets the transparency burden.

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

Conciseness4/5

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

The description is extremely concise (one phrase), conveying the core purpose and a key behavioral trait ('soft delete') without unnecessary words. It is well front-loaded, though a slightly more structured sentence could improve readability without sacrificing brevity.

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

Completeness2/5

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

For a deletion tool with no output schema and no annotations, the description should cover more behavioral context, such as what the tool returns, whether cascading deletes occur, or the impact on dependent data. It only mentions 'soft delete', leaving significant gaps for the agent.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents both parameters. The description does not add any additional meaning or constraints beyond what the schema provides (e.g., id format, env behavior), so no value is added beyond the baseline.

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

Purpose5/5

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

The description clearly states the action ('delete') and the resource ('specified configuration item'), with the additional qualifier of 'soft delete' which distinguishes it from a hard delete. Among siblings like 'agileconfig_create_config' and 'agileconfig_update_config', this tool's 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.

Usage Guidelines2/5

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

No guidance is provided on when to use this tool versus alternatives, such as 'agileconfig_delete_app' or 'agileconfig_delete_node'. There is no mention of context, preconditions, or exclusions, leaving the agent to infer usage 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.

agileconfig_delete_nodeB

从 AgileConfig 集群中移除指定的服务节点。

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYes要删除的节点地址

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations, the description carries full burden but only states the basic action. Does not disclose whether deletion is irreversible, if it requires special permissions, or how it handles invalid addresses.

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

Conciseness5/5

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

Description is a single, concise sentence with no unnecessary words. Every word contributes to the purpose.

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

Completeness2/5

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

Given the simplicity of the schema (single required parameter) and lack of annotations or output schema, the description is too minimal. It omits behavioral details expected for a mutation tool, such as idempotency or error behavior.

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

Parameters3/5

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

Schema description coverage is 100% for the 'address' parameter, so the description adds no additional meaning beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

Description clearly states the action ('remove') and the resource ('specified service node from the AgileConfig cluster'). It distinguishes from sibling tools like agileconfig_add_node and agileconfig_delete_app.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, such as agileconfig_list_nodes to check node existence or agileconfig_unregister_service for soft removal. Lacks context for appropriate use.

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

agileconfig_delete_userC

删除指定的用户。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes要删除的用户 ID

TDQS

C2.4/5.0
Behavior2/5

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

No annotations are present, so the description must disclose behavioral traits. It only states the action (delete) without mentioning consequences (e.g., irreversibility, cascading effects on related data, required permissions, or error conditions).

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

Conciseness4/5

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

The description is a single concise sentence with no unnecessary wording. It is appropriately front-loaded, though it could benefit from additional context without sacrificing brevity.

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

Completeness2/5

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

Given the lack of output schema and annotations, the description is too minimal. It does not explain return values, error handling, or side effects. For a delete operation, agents need to know if it requires confirmation or what happens to dependent resources.

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

Parameters3/5

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

Schema coverage is 100% with one parameter 'id' described. The tool description adds no additional detail about the parameter beyond what the schema already provides, so the baseline score of 3 applies.

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

Purpose2/5

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

Description restates the name: 'Delete the specified user.' It is clear but adds no new insight beyond the name, making it nearly tautological. It does not distinguish from sibling deletion tools like agileconfig_delete_app or agileconfig_delete_config.

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

Usage Guidelines2/5

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

No usage guidance provided. The description does not indicate when to use this tool versus alternatives (e.g., update_user to deactivate, or get_user first to verify). No prerequisites or context for safe invocation.

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

agileconfig_disconnect_clientA

强制断开指定客户端的连接。被断开的客户端将自动尝试重连。

ParametersJSON Schema
NameRequiredDescriptionDefault
clientIdYes客户端 ID

TDQS

A4.1/5.0
Behavior4/5

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

Without annotations, the description fully discloses the behavior: forceful disconnection and automatic reconnection. It lacks details on permissions or side effects, but is sufficient for a simple action.

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

Conciseness5/5

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

The description is extremely concise with two sentences, front-loaded with the main action, and no unnecessary words. It earns its place.

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

Completeness5/5

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

For a tool with one parameter and no output schema, the description is complete: it explains what it does and what happens after disconnection. No gaps.

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

Parameters3/5

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

The input schema already describes the single parameter (clientId) with 100% coverage. The description adds no additional semantic value beyond 'client ID', so baseline score of 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action (forcefully disconnect) and the resource (specified client), and distinguishes from sibling tools like agileconfig_list_clients which only lists clients. The auto-reconnect note adds context.

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

Usage Guidelines3/5

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

The description does not explicitly state when to use this tool versus alternatives, but given its simple nature and no direct sibling for disconnection, it is adequate. It could mention prerequisites or scenarios.

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

agileconfig_get_all_configsA

获取某个应用的所有配置(含未发布项,需 Admin 认证)。管理员可用此接口查看编辑中的配置。

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo环境名称(如 DEV、PROD)。留空将操作所有环境
appIdYes应用 ID

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It discloses the admin authentication requirement and the inclusion of unpublished items, which are key behavioral traits. However, it does not mention potential side effects, idempotency, or response handling, leaving some gaps.

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

Conciseness5/5

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

The description is extremely concise with two sentences, each adding essential information. No unnecessary words or repetition. The structure is front-loaded with the core purpose and critical restriction.

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

Completeness4/5

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

Given the absence of an output schema, the description appropriately covers the core functionality, auth requirement, and parameter scope. It could be more complete by hinting at the structure of returned configs or pagination, but for a tool with only two parameters, it is sufficiently complete.

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

Parameters3/5

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

The input schema already has 100% description coverage for both parameters, so the description adds limited extra meaning. It mentions 'all environments' for the env parameter implicitly but does not provide additional syntax or constraints beyond what the schema offers. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool retrieves all configurations for an application, including unpublished items. It uses specific verbs ('获取') and resource ('所有配置'), and distinguishes from siblings like get_config and get_published_configs by mentioning the inclusion of unpublished items and admin requirement.

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

Usage Guidelines4/5

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

The description explicitly states it requires admin authentication and is for viewing editing configs, which provides clear context for when to use this tool. However, it does not explicitly mention alternatives or when to avoid it, though the sibling tools like 'get_published_configs' imply differentiation.

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

agileconfig_get_appB

根据应用 ID 获取单个应用的详细信息。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes应用 ID

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided. The description only states '获取详细信息' but does not disclose behavioral traits like whether it is read-only, what specific details are returned, authentication requirements, or rate limits. For a tool with no annotations, this is insufficient transparency.

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

Conciseness5/5

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

The description is a single, clear sentence with no unnecessary words. It efficiently communicates the tool's purpose without fluff.

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

Completeness4/5

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

Given the tool's low complexity (one parameter, read operation, no output schema), the description is nearly complete. However, it could explicitly state that the tool is read-only and outline the scope of '详细' (e.g., includes all app settings and permissions). Without annotations, a slightly richer description would be more robust.

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

Parameters3/5

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

Schema description coverage is 100% for the single parameter 'id', which has a description '应用 ID'. The description adds no additional meaning beyond the schema, as it merely restates that the tool retrieves an app by ID. Baseline 3 is appropriate given full coverage.

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

Purpose5/5

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

The description clearly states the verb '获取' (get) and the resource '单个应用的详细信息' (detailed information of a single application), and specifies the identifier '应用 ID' (application ID). This distinguishes it from sibling tools like list_apps (which returns all apps without details) and create/delete/update_app.

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

Usage Guidelines2/5

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

No guidance is provided on when to use this tool vs alternatives. For instance, it does not clarify that this tool is for fetching full details, while list_apps might be for an overview. No exclusions or prerequisites are mentioned.

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

agileconfig_get_configB

根据配置 ID 获取单个配置项的详细信息,包括键、值、状态等。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes配置项 ID
envNo环境名称。留空将操作所有环境

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided. Description implies read-only behavior ('get') but does not explicitly state safety, permissions, rate limits, or side effects. Minimal disclosure beyond the obvious.

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

Conciseness5/5

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

Single sentence, front-loaded, no extraneous information. Efficient and to the point.

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

Completeness3/5

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

No output schema exists, so description must clarify return structure; it mentions key, value, status partially. Lacks details on error handling, pagination, or behavior differences from siblings. Adequate but not comprehensive.

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

Parameters3/5

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

Schema coverage is 100%, both parameters have concise descriptions. The tool description adds no new parameter semantics; it only hints at return fields. Baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool retrieves details of a single configuration item by ID, including key, value, and status. It distinguishes from siblings like 'get_all_configs' by specifying 'single' vs. 'all'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as 'get_all_configs' or 'get_published_configs'. Also lacks prerequisites or context about required permissions.

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

agileconfig_get_published_configsA

获取某个应用的所有已发布配置(使用 App 认证方式,适合客户端拉取配置)。返回配置的键值对列表。

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo环境名称(如 DEV、PROD)。留空或不设 AGILECONFIG_ENV 时将操作所有环境
appIdYes应用 ID
appSecretYes应用的 Secret(用于认证)

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It states the return type (key-value list) and authentication method, but lacks details on error handling, side effects, or rate limits. Basic behavior is covered, but more transparency 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.

Conciseness5/5

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

The description is a single concise sentence covering purpose and return value without any wasted words. It is front-loaded with key information.

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

Completeness4/5

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

Given the system complexity and sibling tools, the description provides essential context about authentication and return format. It misses explicit differentiation from closely related tools like get_all_configs, but the name and description imply the distinction.

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

Parameters4/5

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

Schema description coverage is 100%, so parameters already have meaning. The description adds context by explaining the authentication method (App 认证) and purpose (client pull), reinforcing the parameters' roles in the workflow.

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

Purpose5/5

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

The description clearly states it gets all published configurations for a specific app using App authentication, suited for client pull. The verb 'get' and resource 'published configs' are specific, and the tool name distinguishes it from siblings like agileconfig_get_all_configs.

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

Usage Guidelines4/5

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

The description mentions '使用 App 认证方式,适合客户端拉取配置' (using App authentication, suitable for client pulling config), indicating when to use it. However, it does not explicitly state when not to use alternatives or provide exclusions.

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

agileconfig_get_publish_historyA

获取某个应用的配置发布历史记录,包含每次发布的时间、版本和操作人。

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo环境名称。留空将操作所有环境
appIdYes应用 ID

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description partially fills the gap by stating the tool returns history records with specific attributes. However, it does not disclose if the operation is read-only, any authorization needs, or behavior when no history exists.

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

Conciseness5/5

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

Single sentence, concise and front-loaded with the core purpose. No extraneous information.

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

Completeness4/5

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

Given the simplicity of retrieving history records, the description provides adequate context. Lacks output structure details (e.g., list format, ordering) but compensated partially by the listed fields.

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

Parameters3/5

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

Schema coverage is 100% as both parameters have descriptions. The tool description adds no additional parameter semantics beyond the schema, so baseline score of 3 applies.

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

Purpose5/5

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

The description clearly states the tool retrieves publish history for a specific application, listing the fields returned (time, version, operator). It differentiates from sibling tools like 'get_published_configs' which returns current configs, not history.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, nor any prerequisites or conditions. Agent is left to infer from the description alone.

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

agileconfig_get_settingsA

获取 AgileConfig 的系统设置,包括 CORS 配置、JWT 密钥设置等。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description must fully cover behavioral traits. It only states that settings are retrieved, with no information about side effects, authentication requirements, rate limits, or return structure.

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

Conciseness5/5

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

The description is a single sentence that efficiently conveys the purpose and key examples. No redundant or extraneous information.

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

Completeness4/5

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

Given the tool has no parameters and no output schema, the description provides sufficient context by listing example settings. It could be slightly improved by noting the return format (e.g., 'returns all system settings as JSON'), but it's largely complete.

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

Parameters4/5

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

With zero parameters and 100% schema coverage, the description adds no parameter-specific meaning beyond what the schema already indicates. Baseline 4 applies as per guidelines.

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

Purpose5/5

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

The description clearly states the tool retrieves AgileConfig system settings and provides concrete examples (CORS config, JWT keys). It distinguishes itself from sibling tools like agileconfig_update_settings by focusing on read-only retrieval.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs. alternatives such as agileconfig_update_settings or other config tools. The description does not mention when to prefer this tool over siblings.

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

agileconfig_get_syslogsA

查询系统操作日志。可按应用、日志类型(Normal/Warn/Error)、时间范围筛选,支持分页。

ParametersJSON Schema
NameRequiredDescriptionDefault
appIdNo按应用 ID 筛选(可选)
endTimeNo结束时间,ISO 8601 格式(可选)
logTypeNo日志类型筛选(可选)
pageSizeNo每页记录数,默认 50
pageIndexNo页码,从 1 开始
startTimeNo起始时间,ISO 8601 格式(可选)

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses the tool is a read operation ('查询') and mentions filtering/pagination, but does not elaborate on side effects, authentication, or rate limits. Adequate for a simple query tool.

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

Conciseness5/5

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

A single sentence that front-loads the core purpose and immediately lists key features. No unnecessary words.

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

Completeness4/5

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

The description covers the essential functionality: querying logs with filters and pagination. It does not describe the output format, but given the absence of an output schema, the agent can infer a list of log entries. Sufficient for a straightforward query tool.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description adds a high-level summary of filter types (application, log type, time range), which provides context beyond the schema definitions but does not detail each parameter separately.

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

Purpose5/5

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

The description clearly states the tool queries system operation logs (系统操作日志) and specifies filtering capabilities. It uses a specific verb ('查询') and resource, and is distinct from sibling tools like get_all_configs.

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

Usage Guidelines3/5

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

The description implies usage for querying logs with optional filters and pagination, but does not explicitly state when to use this over alternatives or provide exclusions. Guidance is adequate but minimal.

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

agileconfig_get_userB

根据用户 ID 获取单个用户的详细信息。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes用户 ID

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. Only states it gets details; no mention of read-only nature, auth requirements, error handling, or return format. Minimal transparency.

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

Conciseness4/5

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

Single sentence, efficient, front-loaded. Slightly more detail on return value would improve, but no waste.

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

Completeness3/5

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

Simple tool with one parameter; description adequate but lacks output details (no output schema). Could mention what 'detailed information' includes.

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

Parameters3/5

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

Schema coverage is 100%; parameter 'id' described as 'user ID'. Description adds no extra meaning beyond schema. Baseline 3.

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

Purpose5/5

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

Clearly states 'get detailed information of a single user based on user ID'. Distinguishes from siblings like list_users (multiple users) and create/update/delete users.

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

Usage Guidelines3/5

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

Implied usage: when you have a specific user ID and need details. But no explicit guidance on when to use this vs alternatives (e.g., list_users for all users, get_user_permissions for permissions).

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

agileconfig_get_user_permissionsB

获取指定用户的权限列表,包括各功能模块的操作权限和应用级权限。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes用户 ID

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It only states the action (get permissions) but does not disclose read-only nature, authentication requirements, rate limits, or any side effects. This is insufficient for a safe autonomous agent.

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

Conciseness4/5

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

The description is a single sentence that directly conveys the purpose. It is front-loaded and contains no extraneous information, though it could be slightly more structured (e.g., highlighting read-only nature).

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

Completeness3/5

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

Given low complexity (1 param, no output schema, no enums), the description is minimally complete. However, it lacks usage context and behavioral details that would help an agent use it correctly.

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

Parameters3/5

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

Schema coverage is 100% with a single parameter (`userId`) described. The description adds no additional meaning beyond the schema, so baseline score applies.

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

Purpose5/5

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

The description clearly states it retrieves the permission list for a specified user, including operation permissions and application-level permissions. It distinguishes from siblings like agileconfig_get_user (basic info) and agileconfig_set_user_permissions (modify permissions).

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives. The description implies a read operation for permissions, but does not mention when not to use it or direct to sibling tools for modifications.

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

agileconfig_list_appsA

获取 AgileConfig 中的所有应用列表。返回应用的 ID、名称、密钥、是否启用、分组等信息。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

No annotations provided, so description carries burden. It mentions return fields (ID, name, key, enabled, group), which adds transparency. However, it does not specify pagination, limits, or read-only nature, leaving some gaps.

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

Conciseness5/5

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

Two sentences: first clearly states purpose, second lists return fields. No redundant information, perfectly front-loaded.

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

Completeness4/5

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

For a simple list tool with no parameters and no output schema, the description is fairly complete. It explains action and return values. Could add detail on ordering or filtering, but not necessary.

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

Parameters4/5

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

Input schema has zero parameters with 100% coverage, so baseline is 4. Description adds meaning about return fields beyond the empty schema, but parameter semantics are not applicable.

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

Purpose5/5

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

Description clearly states the tool retrieves all apps from AgileConfig, with verb '获取' and resource '应用列表'. It distinguishes from sibling 'agileconfig_get_app' by specifying '所有' (all).

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives like 'agileconfig_get_app'. The description implies listing all apps, but lacks exclusions or context.

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

agileconfig_list_clientsA

获取当前连接到 AgileConfig 的所有客户端信息。可用于排查配置推送问题。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description must carry behavioral disclosure. It states the tool retrieves client information but does not mention whether the operation is read-only, whether it reflects real-time state, any authentication requirements, or performance considerations. While the purpose is clear, deeper behavioral traits are absent.

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

Conciseness5/5

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

The description is two sentences long: the first sentence states the primary action and resource, the second provides a practical use case. Every word earns its place; no redundancy or unnecessary detail.

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

Completeness4/5

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

Given no output schema or annotations, the description is adequate for a simple listing tool. It explains the what and the why. However, it could briefly indicate the type of information returned (e.g., client IDs, connection status) to enhance completeness.

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

Parameters4/5

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

The input schema has zero parameters and 100% coverage, so the description adds no parameter details. With no parameters, a baseline score of 4 is appropriate—the description does not need to expand on parameter semantics.

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

Purpose5/5

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

The description clearly specifies the verb '获取' (get/list), the resource '所有客户端信息' (all client info) and context '当前连接到 AgileConfig' (currently connected to AgileConfig), and provides a use case for troubleshooting configuration push issues. It effectively distinguishes from sibling tools that handle apps, users, configs, nodes, etc.

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

Usage Guidelines3/5

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

The description states when to use this tool—'可用于排查配置推送问题' (for troubleshooting config push issues)—but lacks guidance on when not to use it, nor does it mention alternatives like 'agileconfig_disconnect_client' as a follow-up. Usage context is implied rather than explicitly qualified.

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

agileconfig_list_nodesA

获取 AgileConfig 集群中所有服务节点的信息,包括节点地址、在线状态、最后心跳时间等。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior4/5

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

No annotations provided, so the description carries the full burden. It correctly implies a read-only operation and lists the types of data returned. However, it does not explicitly state that it is safe or non-destructive.

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

Conciseness5/5

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

A single sentence that is concise and front-loaded with the main action ('获取所有服务节点'). No extraneous information.

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

Completeness3/5

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

For a simple list tool with no parameters or output schema, the description provides the main items returned but is vague with '等' (etc.). It lacks explicit structure or completeness about the exact output format.

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

Parameters4/5

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

Schema coverage is 100% (no parameters), baseline 3. The description adds no parameter info but provides context about the output, which is relevant for understanding the tool's function.

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

Purpose5/5

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

The description clearly states it lists all service nodes in the AgileConfig cluster and provides specific examples of the information included (node address, online status, last heartbeat time). This distinguishes it from sibling tools like add_node and delete_node.

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

Usage Guidelines3/5

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

The description implies usage for viewing cluster nodes but does not explicitly state when to use or avoid this tool compared to alternatives. No mention of prerequisites or exclusions.

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

agileconfig_list_servicesA

获取所有已注册的服务信息,包括健康状态、IP、端口等。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are provided, so the description takes full burden. It discloses that it returns health status, IP, and port for all registered services, which is sufficient for a read-only list operation. However, it does not mention any potential side effects or limitations like pagination.

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

Conciseness5/5

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

The description is a single sentence that directly states what the tool does and what information it provides. It is concise and front-loaded with the core purpose.

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

Completeness4/5

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

The description provides essential information about the output (health status, IP, port) but uses 'etc.' which is vague. Given no output schema, more specific field names would improve completeness. However, for a list tool, it is adequate.

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

Parameters4/5

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

The tool has no parameters, and schema coverage is 100%. The description adds no parameter-specific details, which is appropriate. Baseline score of 4 is given as the description covers the tool's function without needing parameter info.

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

Purpose5/5

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

The description clearly states the tool retrieves all registered services and lists included fields like health status, IP, and port. It distinguishes itself from sibling tools like list_nodes and list_apps by specifying 'services'.

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

Usage Guidelines3/5

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

The description implies this tool is for listing services, but no explicit guidance is given on when to use it versus alternatives or any prerequisites. For a simple listing tool without parameters, this is acceptable but lacks clarity.

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

agileconfig_list_usersA

获取系统中所有用户的列表,包括用户名、角色、状态、团队等信息。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided. Description accurately describes a read-only list operation but does not disclose authentication requirements, potential pagination, or performance implications for large datasets. Adequate but minimal.

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

Conciseness5/5

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

Single, clear sentence in natural language. No wasted words. Front-loaded with the main action and resource.

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

Completeness4/5

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

Given zero parameters and no output schema, the description adequately explains the return fields. Could mention if results are sorted or paginated, but not essential for a simple list tool.

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

Parameters4/5

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

No parameters exist. Baseline is 4 since schema coverage is 100% and description does not need to add parameter details. However, it does not explicitly note the absence of parameters.

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

Purpose5/5

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

Clearly states the action (获取/Get), resource (所有用户的列表/list of all users), and included fields (用户名、角色、状态、团队). Distinguishes from sibling 'agileconfig_get_user' which retrieves a single user.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like 'agileconfig_get_user' or 'agileconfig_create_user'. Does not mention prerequisites or context.

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

agileconfig_offline_configB

下线单个配置项,使其对客户端暂不可见。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes配置项 ID
envNo环境名称。留空将操作所有环境

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden for behavioral disclosure. It states 'temporarily invisible' but does not explain if this is reversible, what happens to active clients, or any side effects. Important behavioral traits like whether the config is still queryable or if only new clients are affected are omitted.

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

Conciseness4/5

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

The description is a single sentence that is concise and front-loaded with the main action. It could include more behavioral context without becoming overly long, but currently it efficiently communicates the core purpose.

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

Completeness3/5

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

Given no output schema and two parameters (one optional), the description provides the basic function but lacks details on reversibility, error states, and how this tool fits into the larger config lifecycle (e.g., relationship to publish_config). It is adequate but not comprehensive.

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

Parameters3/5

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

Schema coverage is 100% with both parameters having descriptive comments in the schema (id and env). The tool description adds no extra meaning beyond what the schema already provides. Baseline 3 is appropriate as the description does not hinder understanding but also does not enhance it.

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

Purpose5/5

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

The description clearly states the tool's action: taking a single configuration item offline, making it temporarily invisible to clients. It distinguishes itself from sibling tools like publish_config (which makes configs visible) and delete_config (permanent removal). The verb and resource are specific and unambiguous.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like publish_config or delete_config. There is no mention of prerequisites, context, or exclusions. This forces the agent to infer usage without explicit direction.

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

agileconfig_publish_configA

发布某个应用的所有待发布配置变更。发布后,所有连接到该应用的客户端将通过 WebSocket 实时收到更新通知。

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo环境名称。留空将操作所有环境
appIdYes应用 ID

TDQS

A3.8/5.0
Behavior3/5

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

The description discloses a key behavioral effect: clients will receive real-time updates via WebSocket after publishing. However, it does not mention whether the operation is destructive, reversible, or requires specific permissions. It also omits details about how the env parameter affects behavior (schema covers this). With no annotations, more behavioral context would be helpful.

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

Conciseness5/5

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

Two sentences, no fluff. First sentence states the action clearly, second adds a key behavioral effect. Every word earns its place.

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

Completeness4/5

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

Given no output schema and moderate complexity, the description covers the core purpose and an important side effect (WebSocket notification). It could be improved by mentioning what happens on success/failure, error cases, or clarifying the env behavior. But it is fairly complete for a straightforward publication tool.

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

Parameters3/5

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

Schema coverage is 100% (both parameters have descriptions). The description adds minimal value beyond schema: it mentions '某个应用' (a specific application) aligning with appId, but does not elaborate on env. Baseline 3 is appropriate since schema already documents parameters well.

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

Purpose5/5

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

The description clearly states the tool publishes all pending configuration changes for a specific application. It uses a specific verb ('发布', publish) and resource ('所有待发布配置变更', all pending config changes). This distinguishes it from the sibling tool 'publish_single_config' which publishes only a single config.

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

Usage Guidelines3/5

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

The description tells when to use (when wanting to publish all pending changes for an app) but lacks explicit guidance on when not to use or alternatives. It does not mention that publishing a single config can be done with the sibling tool, nor does it clarify prerequisites (e.g., must have pending changes).

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

agileconfig_publish_single_configB

上线单个配置项,使其对客户端生效。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes配置项 ID
envNo环境名称。留空将操作所有环境

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the basic effect (makes config effective) but omits critical details such as whether it overwrites existing published configs, side effects, authentication requirements, or typical response behavior.

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

Conciseness5/5

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

The description is a single, concise sentence with no wasted words. It delivers the core purpose efficiently, adhering to the front-loading principle.

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

Completeness2/5

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

Given the absence of annotations and output schema, the description is too brief. It does not explain return values, confirmations, error states, or any post-publish behavior. A publication action typically requires more context to be fully complete for an AI agent.

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

Parameters3/5

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

Schema coverage is 100%, with descriptions for both 'id' and 'env'. However, the tool description adds no additional parameter semantics beyond what the schema provides. Baseline score of 3 is appropriate as the schema already documents the parameters adequately.

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

Purpose5/5

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

The description clearly states the action (publish/上线) and resource (single configuration item/单个配置项), and the effect (make effective for clients). It distinguishes from the sibling 'agileconfig_publish_config' by specifying 'single', making the purpose unambiguous.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives like 'agileconfig_publish_config' or 'agileconfig_offline_config'. There is no context on prerequisites, exclusions, or situational advice, leaving the agent to infer usage.

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

agileconfig_register_serviceA

在 AgileConfig 中注册一个新服务。用于服务发现场景,支持设置元数据。

ParametersJSON Schema
NameRequiredDescriptionDefault
ipYes服务 IP 地址
portYes服务端口
metaDataNo元数据 JSON,如 {"version":"1.0.0"}
serviceIdYes服务唯一标识
serviceNameYes服务名称

TDQS

A3.7/5.0
Behavior2/5

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

With no annotations provided, the description bears full responsibility for behavioral disclosure. It fails to state whether the operation is idempotent, the behavior on duplicate serviceId, or required permissions. This omission is significant 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.

Conciseness5/5

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

The description is a single concise sentence that front-loads the main action and relevant context. Every word contributes information without redundancy.

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

Completeness3/5

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

The description covers the basic purpose and metadata support, but lacks details on uniqueness constraints, response behavior, or how to verify the registration (e.g., via list_services). With no output schema and no annotations, this is an average completeness score.

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

Parameters3/5

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

The schema has 100% coverage, so the baseline is 3. The description adds context about metadata ('支持设置元数据') but does not provide extra meaning beyond the schema descriptions for ip, port, serviceId, and serviceName.

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

Purpose5/5

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

The description clearly states the verb 'register' and the resource 'new service in AgileConfig'. It specifies the use case (service discovery) and mentions metadata support, effectively distinguishing it from siblings like unregister_service and list_services.

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

Usage Guidelines4/5

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

The description explicitly says '用于服务发现场景' (used for service discovery scenarios), providing clear context for when to use the tool. However, it does not mention when not to use it or explicitly suggest alternatives like unregister_service.

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

agileconfig_rollback_configA

将应用配置回滚到指定的历史版本。需要提供发布历史 ID。此操作会撤销该版本之后的所有变更。

ParametersJSON Schema
NameRequiredDescriptionDefault
envNo环境名称。留空将操作所有环境
historyIdYes发布历史的 ID

TDQS

A3.9/5.0
Behavior4/5

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

The description reveals a key behavioral trait: 'this operation will undo all changes after that version', indicating a destructive rollback. No annotations are present, so the description carries the full burden; it adequately discloses the main effect.

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

Conciseness5/5

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

The description is extremely concise with two sentences, no unnecessary words, and front-loaded purpose. Every sentence adds value.

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

Completeness3/5

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

For a simple rollback tool with 2 params, the description covers the basic purpose and effect, but it lacks any mention of return values or confirmation of success. Given no output schema, this is a gap that reduces completeness.

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

Parameters3/5

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

Schema coverage is 100%, so the baseline is 3. The description does not add significant meaning beyond what the schema provides; it merely restates the requirement for historyId and duplication of env's description.

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

Purpose5/5

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

The description clearly states the action: 'roll back application configuration to a specified historical version'. It uses a specific verb (rollback) and resource (application configuration), distinguishing it from siblings like publish_config or delete_config.

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

Usage Guidelines3/5

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

The description mentions the required parameter (history ID) but does not explicitly state when to use this tool versus alternatives like publishing a new config or deleting configurations. Usage context is implied rather than explicit.

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

agileconfig_set_user_permissionsA

设置用户的权限。权限包含:APP_ADD、CONFIG_ADD/EDIT/DELETE/PUBLISH、NODE_ADD/DELETE、USER_ADD/EDIT/DELETE 等。每个权限可针对全局(appId="GLOBAL")或指定应用(appId="my-app")。

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYes用户 ID
permissionsYes权限 JSON 数组,格式:[{"functionKey":"APP_ADD","appId":"GLOBAL","enable":true}]

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It does not mention whether setting permissions overwrites existing ones, if any authentication is required, or side effects. The description only lists available permissions without behavioral details.

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

Conciseness4/5

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

The description is concise with two sentences, front-loading the purpose. However, it could benefit from a more structured breakdown of permissions and scope.

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

Completeness2/5

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

The description lacks essential context for a mutation tool with no annotations and no output schema. It does not explain whether the operation is additive or destructive, or provide expected outcomes, leaving significant gaps for an agent.

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

Parameters4/5

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

The schema covers both parameters (userId, permissions) with descriptions, but the tool description adds significant value by explaining the permissions JSON format and the meaning of 'GLOBAL' vs specific 'appId'. This clarifies the structure beyond the schema's generic description.

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

Purpose5/5

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

The description states the tool sets user permissions and lists the specific permissions (e.g., APP_ADD, CONFIG_ADD/EDIT/DELETE/PUBLISH), clearly distinguishing it from sibling tools like 'agileconfig_create_user' which creates users, and 'agileconfig_get_user_permissions' which retrieves permissions.

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

Usage Guidelines3/5

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

The description explains the permissions scope (global vs per-app) but does not provide explicit guidance on when to use this tool over alternatives, such as when to update permissions versus when to create a user or get permissions. The usage context is implied but not directly stated.

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

agileconfig_unregister_serviceB

从 AgileConfig 注销一个已注册的服务。

ParametersJSON Schema
NameRequiredDescriptionDefault
serviceIdYes要注销的服务 ID

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description bears full responsibility for behavioral disclosure. It only mentions 'unregister' but does not indicate whether this is destructive, what permissions are needed, or any side effects. The agent is left to infer the behavior from the tool name alone.

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

Conciseness5/5

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

The description is a single, short sentence that is efficient and to the point. Every word carries meaning, and it is front-loaded with the primary action. No wasted text.

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

Completeness2/5

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

Given the absence of an output schema and the simplicity of the tool (one parameter), the description is still incomplete. It lacks information on return values, error conditions, prerequisites (e.g., does the service need to exist?), and behavioral consequences. The agent would need to guess or rely on external knowledge.

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

Parameters3/5

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

Schema coverage is 100% for the single parameter 'serviceId'. The description essentially restates the schema parameter description ('the ID of the service to unregister') without adding new meaning or constraints. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('unregister') and the resource ('a registered service') in Chinese, directly distinguishing it from sibling tools like 'agileconfig_register_service'. The verb and resource are specific and unambiguous.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, no prerequisites, and no exclusions. It merely states the action without context about appropriate scenarios.

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

agileconfig_update_appB

编辑已有应用的信息,可修改名称、分组、密钥、启用状态、继承设置等。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes应用 ID
nameNo应用名称
groupNo应用分组
secretNo应用密钥
enabledNo是否启用
appAdminNo应用管理员用户名
inheritancedNo是否开启配置继承
inheritancedAppsNo继承的应用 ID 列表

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It mentions editing existing apps but does not specify if the update is partial (only provided fields) or full replacement, whether permissions are required, or if changes are reversible. For a mutation tool, this is insufficient.

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

Conciseness5/5

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

The description is a single, concise sentence that is front-loaded with the core action. Every word adds value, listing key modifiable fields without extraneous information.

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

Completeness2/5

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

With 8 parameters, no output schema, and no annotations, the description is too brief. It fails to mention return behavior, error conditions, or prerequisites (e.g., app must exist). For a complex update operation, more context is needed to guide the agent.

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

Parameters3/5

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

Schema coverage is 100%, so the input schema already documents parameters. The description redundantly lists some parameters (name, group, secret, etc.) but adds no new semantic meaning beyond what the schema provides. The description does not clarify usage patterns for the 'id' required field or the 'inheritancedApps' array.

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

Purpose5/5

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

The description clearly states the verb '编辑' (edit) and the resource '已有应用的信息' (existing app info), listing specific fields like name, group, secret, enabled status, and inheritance settings. It differentiates from sibling tools like agileconfig_create_app and agileconfig_delete_app by focusing on updating existing apps.

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

Usage Guidelines3/5

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

The description implies usage for updating app information but lacks explicit guidance on when to use or not use this tool, such as prerequisites (e.g., app must exist), context (e.g., partial vs full update), or alternatives like create_app for new apps. No exclusionary criteria are mentioned.

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

agileconfig_update_configA

修改已有配置项的值、分组或描述。修改后需要重新发布才能对客户端生效。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes配置项 ID
envNo环境名称。留空将操作所有环境
keyNo新的键名
groupNo新的分组
valueNo新的配置值
descriptionNo新的配置说明

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries full burden. It correctly discloses that modifications are not effective until re-published, which is critical behavioral information. It doesn't cover all traits (e.g., reversibility, permissions), but for a mutation tool, the re-publish note is a key disclosure.

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

Conciseness5/5

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

Two sentences, no wasted words. The first sentence captures the core action, the second provides essential post-operation context. Front-loaded and efficient.

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

Completeness4/5

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

Given 6 parameters with full schema coverage and no output schema, the description is fairly complete. It covers the main purpose and the critical re-publish requirement. Could mention id requirement, but schema already marks it required. Slightly more detail on return values would be beneficial but not necessary.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. The description does not add any new meaning to parameters beyond what the schema already provides. It mentions 'value, group, or description' but those are already documented in the schema properties.

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

Purpose5/5

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

The description clearly states it modifies existing config item's value, group, or description. It distinguishes from sibling tools like 'create_config' (creates new) and 'publish_config' (publishes). The verb '修改' (modify) and resource '已有配置项' (existing config item) are specific and unambiguous.

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

Usage Guidelines4/5

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

The description gives clear context: modification requires re-publishing to take effect, implying use before publishing. It doesn't explicitly state when not to use or list alternatives, but the sibling tool set provides differentiation. The caveat about re-publishing is helpful guidance.

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

agileconfig_update_settingsB

更新 AgileConfig 的系统设置,可修改管理员密码、JWT 密钥、CORS 配置等。

ParametersJSON Schema
NameRequiredDescriptionDefault
corsEnabledNo是否启用 CORS
corsOriginsNo允许的 CORS 来源,JSON 数组字符串,如 ["http://example.com"]
adminPasswordNo新的管理员密码
jwtTokenSecretNoJWT Token 签名密钥

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It identifies the tool as a mutating operation ('update') but does not disclose permissions needed, reversibility, or any side effects beyond the listed parameters. For a mutation tool, this is insufficient.

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

Conciseness5/5

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

Single sentence that is front-loaded with the action and includes concrete examples. No wasted words; earns its place.

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

Completeness3/5

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

The tool has 4 parameters and no output schema. The description explains the tool's purpose but lacks usage guidelines and behavioral transparency. It is minimally adequate for a simple update operation but has gaps in guidance.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description enumerates the parameter categories (admin password, JWT, CORS) but adds no new semantic detail beyond the schema descriptions. It matches but does not enhance understanding.

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

Purpose5/5

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

The description clearly states it updates AgileConfig system settings and lists specific example settings (admin password, JWT secret, CORS config). This differentiates it from sibling tools like agileconfig_change_password, which is more narrow.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives, nor any prerequisites or exclusions. It simply states what it does, 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.

agileconfig_update_userA

编辑已有用户的信息,可修改用户名、密码、角色、状态等。冻结用户可将其状态设为 Frozen。

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes用户 ID
roleNo用户角色
teamNo团队
statusNo用户状态:Normal 正常,Frozen 冻结
passwordNo新密码
userNameNo新的用户名

TDQS

A3.7/5.0
Behavior3/5

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

No annotations provided, so description carries burden. It mentions setting status to Frozen as a behavioral trait, but lacks details on side effects, authorization, or error handling 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.

Conciseness5/5

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

Two sentences, front-loaded with main purpose, no wasted words. Efficient communication.

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

Completeness3/5

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

With 6 parameters and no output schema, description covers main editing actions and provides one example. However, lacks information on return values, error scenarios, or behavior when ID does not exist.

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

Parameters3/5

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

Schema coverage is 100%, baseline 3. Description adds example of freezing status but does not significantly enhance understanding beyond what the schema already provides.

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

Purpose5/5

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

Description clearly states it edits existing user information and lists specific modifiable fields (username, password, role, status), distinguishing it from create/delete siblings.

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

Usage Guidelines3/5

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

Description implies it's for modifying existing users but does not explicitly state when to use vs alternatives like agileconfig_create_user, nor mention prerequisites or when not to use.

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

agileconfig_user_loginB

用户登录,成功后返回 JWT Token。

ParametersJSON Schema
NameRequiredDescriptionDefault
passwordYes密码
userNameYes用户名

TDQS

B3.3/5.0
Behavior2/5

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

Description mentions success condition (returns JWT token) but no details on error cases, side effects, or security requirements. Given no annotations, the description lacks depth on behavioral traits.

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

Conciseness5/5

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

Single sentence with no unnecessary words. Front-loaded with the primary action. Every word earns its place.

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

Completeness3/5

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

For a simple login tool with two parameters, the description is adequate but minimal. It conveys the core functionality but omits error handling, token format, or prerequisites. Could be more informative.

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

Parameters3/5

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

Schema provides 100% coverage with descriptions for both parameters (userName and password). The description adds no further semantic meaning beyond the schema. Baseline 3 applies.

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

Purpose5/5

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

Description clearly states '用户登录,成功后返回 JWT Token' which translates to user login returning JWT token. It uses a specific verb ('login') and resource ('user'), distinguishing it from sibling tools that manage users or configurations.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like change_password or create_user. The context implies it's for authentication, but no explicit when-to-use or when-not statements.

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.

  1. 36 tool updatesv1.0.0
    • First observedagileconfig_add_node
    • First observedagileconfig_change_password
    • First observedagileconfig_create_app
    • First observedagileconfig_create_config
    • First observedagileconfig_create_user
    • First observedagileconfig_delete_app
    • First observedagileconfig_delete_config
    • First observedagileconfig_delete_node
    • First observedagileconfig_delete_user
    • First observedagileconfig_disconnect_client
    • First observedagileconfig_get_all_configs
    • First observedagileconfig_get_app
    • First observedagileconfig_get_config
    • First observedagileconfig_get_publish_history
    • First observedagileconfig_get_published_configs
    • First observedagileconfig_get_settings
    • First observedagileconfig_get_syslogs
    • First observedagileconfig_get_user
    • First observedagileconfig_get_user_permissions
    • First observedagileconfig_list_apps
    • First observedagileconfig_list_clients
    • First observedagileconfig_list_nodes
    • First observedagileconfig_list_services
    • First observedagileconfig_list_users
    • First observedagileconfig_offline_config
    • First observedagileconfig_publish_config
    • First observedagileconfig_publish_single_config
    • First observedagileconfig_register_service
    • First observedagileconfig_rollback_config
    • First observedagileconfig_set_user_permissions
    • First observedagileconfig_unregister_service
    • First observedagileconfig_update_app
    • First observedagileconfig_update_config
    • First observedagileconfig_update_settings
    • First observedagileconfig_update_user
    • First observedagileconfig_user_login

TDQS

A3.5/5.0

Scored across 36 tools

Disambiguation5/5

Each tool has a clear and distinct purpose, with verbs and nouns that uniquely identify the operation and target resource. There is no overlap; for example, 'publish_config' vs 'publish_single_config' are differentiated by scope.

Naming Consistency5/5

All tools follow a consistent 'agileconfig_verb_noun' pattern in snake_case, with verbs like create, delete, get, list, update, etc. The naming is predictable and uniform across the entire set.

Tool Count3/5

With 36 tools, the count is high but justified by the broad scope of managing configurations, apps, users, nodes, services, and settings. However, it exceeds the ideal range (3-15) and falls into the heavy category, making it slightly bloated.

Completeness4/5

The tool set covers CRUD and lifecycle operations for all major entities (apps, configs, users, nodes, services, clients), plus publishing, rollback, permissions, and logs. Minor gaps like batch operations or group management exist, but core workflows are well-supported.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    An MCP server that enables AI assistants to query and manage Nacos configurations. It supports Nacos 3.x for retrieving or publishing configuration files and includes an optional read-only mode for secure environments.
    2
    3
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A config-driven MCP server that exposes OData and REST APIs as MCP tools, enabling AI assistants to query, manage, and monitor SAP backends through natural language.
    59
    29
    MIT