XMZ MCP Server
This is an MCP (Model Context Protocol) integration server providing unified access to Tencent Cloud Object Storage (COS), Huawei Cloud OCR, and AI-powered media processing capabilities.
Core Capabilities:
Cloud Storage Operations - Full CRUD operations for Tencent COS including upload (local files, strings, Base64, buffers, URLs), download with signed URLs, file listing with prefix filtering, and configuration management.
OCR Text Recognition - Extract text from images via URL or Base64 encoding using Huawei Cloud OCR services.
AI Image Processing - Image metadata retrieval, quality assessment, AI super-resolution upscaling, background removal/matting with custom dimensions, QR code recognition, text watermarking (supports Chinese), and image search by picture or text description.
Media & Document Processing - Smart video cover generation, document-to-PDF conversion, and job status monitoring for processing tasks.
Integration Features - Dual transport modes (HTTP/SSE for remote access, stdio for local development), MCP protocol standardization for AI assistants like Claude Desktop, and serverless deployment support on Alibaba Cloud Function Compute with auto-scaling and pay-per-use pricing.
All operations support custom target directories, content types, and multiple encoding formats (hex, base64, utf8, ascii, binary) for organized storage management.
Provides tools for character recognition using Huawei Cloud OCR, allowing AI agents to recognize and extract text from images provided via URL or Base64 encoding.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@XMZ MCP Serverupload this screenshot to cloud storage"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MZMCP - MCP 服务集成平台
项目架构图

Related MCP server: TOS MCP Server
案例介绍
本案例将 MCP (Model Context Protocol) 服务器部署到阿里云函数计算 FC,提供多种 AI 服务能力的统一接口。通过本案例,您可以快捷地部署、使用 MCP 服务,让 Claude 等 AI 助手具备调用华为云 OCR 等多种 AI 服务的能力。
本案例支持华为云 OCR 文字识别功能,用户可以通过 URL 或 Base64 编码识别图片中的文字内容。采用 SSE 传输方式实现实时通信,支持模块化设计,可按需扩展其他云服务提供商的 AI 服务。
本案例适用于需要让 AI 助手具备 OCR 文字识别能力的场景,可作为 AI 服务集成平台,实现多云服务统一接入,基于 Serverless 架构构建 AI 应用。
MCP 协议正在成为 AI 服务集成的标准协议,获得 Anthropic、OpenAI 等主流 AI 厂商的支持。Serverless 架构已成为云原生应用的主流选择,阿里云函数计算 FC 服务稳定可靠,支持百万级并发请求,99.99% 的服务可用性。
技术架构
本项目采用以下技术框架:
技术组件 | 版本/说明 | 用途 |
MCP (Model Context Protocol) | 最新标准 | AI 服务集成协议,标准化 AI 能力调用 |
FastMCP | Python SDK | MCP 服务器开发框架,简化 MCP 协议实现 |
Serverless Devs | 最新版 | Serverless 应用开发部署框架 |
阿里云函数计算 FC | - | Serverless 计算平台,按需计费,自动扩缩容 |
Python | 3.10/3.11/3.12/3.13/3.14 | 开发语言 |
华为云 OCR SDK | Python 3.x | 华为云 OCR 服务 SDK |
SSE (Server-Sent Events) | - | 实时通信协议,用于 MCP 传输 |
框架优势:
MCP 协议:统一 AI 服务接入标准,获得 Anthropic、OpenAI 等主流厂商支持
FastMCP 框架:开箱即用的 MCP 服务器实现,支持自动工具注册和类型提示
Serverless Devs:声明式配置,一键部署,支持多云平台
阿里云函数计算 FC:零运维、高可用、自动扩缩容,99.99% 服务可用性
本案例通过 Serverless 开发平台实现了以下核心价值:
降低开发门槛:无需关注底层基础设施、服务器运维和资源管理,开发者可以专注于业务逻辑和 AI 服务集成,大幅缩短学习曲线和开发时间
快速迭代:Serverless 架构支持代码的快速部署和更新,从开发到上线仅需几分钟,支持敏捷开发和持续集成
成本优化:采用按需付费模式,只为实际使用的资源付费,避免服务器闲置造成的资源浪费,显著降低运营成本
弹性扩展:自动应对流量波动,从零到百万级并发无缝扩展,无需手动配置和干预,确保服务始终可用
统一接入:通过 MCP 协议统一多种 AI 服务接口,屏蔽不同云服务商的 API 差异,简化集成复杂度,便于快速切换和扩展
使用流程
0. 快速体验 - 本地启动 MCP 服务
本步骤用于在本地快速启动 MCP 服务,方便开发和测试。无需部署到云端,即可体验完整功能。
本项目支持两种传输模式:
模式 | 传输方式 | 使用场景 | 优势 |
SSE | HTTP (Server-Sent Events) | Web 服务器、远程访问 | 支持 HTTP,可远程调用,适合部署到云端 |
stdio | 标准输入输出 | 本地开发、Claude Desktop | 启动更快,调试更方便,资源占用更少 |
在开始之前,您需要:
步骤 | 说明 |
Python 环境 | Python 3.10 或更高版本 |
安装依赖 | 安装项目所需的 Python 依赖包 |
配置环境变量 | 设置华为云认证信息 |
安装依赖
# 进入项目目录
cd src/mzmcp
# 安装依赖
pip install -r requirements.txt或使用 UV 进行更快速的依赖管理:
# 安装 UV(如果尚未安装)
curl -LsSf https://astral.sh/uv/install.sh | sh
# 使用 UV 安装依赖
cd src/mzmcp
uv pip install -r requirements.txt配置环境变量
在本地设置华为云的认证信息:
Linux/macOS:
export HUAWEI_CLOUD_SECRET_ID=your-secret-id
export HUAWEI_CLOUD_SECRET_KEY=your-secret-key
export HUAWEI_CLOUD_REGION=cn-east-3Windows (PowerShell):
$env:HUAWEI_CLOUD_SECRET_ID="your-secret-id"
$env:HUAWEI_CLOUD_SECRET_KEY="your-secret-key"
$env:HUAWEI_CLOUD_REGION="cn-east-3"模式一:启动 SSE 服务(HTTP 服务器)
适合需要通过 HTTP 访问或部署到服务器的场景。
# 进入项目目录
cd src/mzmcp
# 启动开发服务器
uvicorn main:app --reload --host 0.0.0.0 --port 8080服务启动后,您会看到类似以下输出:
INFO: Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
INFO: Started reloader process [xxxxx] using StatReload
INFO: Started server process [xxxxx]
INFO: Waiting for application startup.
INFO: Application startup complete.配置 Claude Desktop 连接 SSE 服务
在 Claude Desktop 的配置文件中添加本地 MCP 服务器配置:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"huaweicloud-ocr-sse": {
"url": "http://localhost:8080/sse"
}
}
}模式二:启动 stdio 服务(推荐用于本地开发)
适合本地开发和 Claude Desktop 集成,启动更快,资源占用更少。
# 进入项目目录
cd src/mzmcp
# 启动 stdio 服务
python stdio_main.py服务启动后,MCP 服务器将通过标准输入输出与 Claude Desktop 通信。
配置 Claude Desktop 连接 stdio 服务
在 Claude Desktop 的配置文件中添加 stdio MCP 服务器配置:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"huaweicloud-ocr-stdio": {
"command": "uvx",
"args": ["mzmcp"],
"env": {
"HUAWEI_CLOUD_SECRET_ID": "your-secret-id",
"HUAWEI_CLOUD_SECRET_KEY": "your-secret-key",
"HUAWEI_CLOUD_REGION": "cn-east-3"
}
}
}
}说明:
uvx mzmcp 是 MCP 工具链的标准运行方式,会自动下载并运行最新版本的 mzmcp
如果 uv 命令不可用,可以先使用
pip install uv安装 uv 工具
注意:
uvx会自动处理虚拟环境,无需预先配置可以在
env中直接配置环境变量,无需预先设置如果已通过
pip install mzmcp安装,也可以使用mzmcp命令代替uvx mzmcp
本地开发优势:
🚀 快速迭代,实时查看修改效果
💡 方便调试,直接查看日志输出
🎯 无需云端资源,零成本开发
🔧 支持热重载,修改代码自动生效
⚡ stdio 模式启动更快,资源占用更少
1. 准备工作 - 完成账号注册和服务开通
本步骤用于完成阿里云账号注册、函数计算服务开通以及华为云密钥获取,为后续部署做好准备。
在开始之前,您需要:
步骤 | 说明 |
注册阿里云账号 | 访问 https://www.aliyun.com 注册 |
开通函数计算服务 | 在控制台开通 FC 服务 |
获取华为云密钥 | 在华为云控制台获取 Access Key |
配置环境变量 | 设置华为云认证信息 |
2. 部署应用 - 将 MCP 服务部署到阿里云函数计算
本步骤使用 Serverless Devs 工具将 MCP 服务代码部署到阿里云函数计算平台。
使用 Serverless Devs 工具快速部署:
# 1. 安装 Serverless Devs
npm install -g @serverless-devs/s
# 2. 配置阿里云密钥
s config add
# 3. 部署应用
s deploy
3. 配置环境变量 - 设置华为云认证信息
本步骤在函数计算控制台配置华为云的认证信息,确保服务能够正常调用华为云 OCR API。
在函数计算控制台配置以下环境变量:
变量名 | 说明 | 是否必需 | 示例值 |
HUAWEI_CLOUD_SECRET_ID | 华为云访问密钥 ID | 是 |
|
HUAWEI_CLOUD_SECRET_KEY | 华为云访问密钥 Key | 是 |
|
HUAWEI_CLOUD_REGION | 华为云服务区域 | 否 |
|

支持的华为云区域:
区域名称 | 区域代码 |
非洲-john内斯堡 | af-south-1 |
中国-香港 | ap-southeast-1 |
亚太-曼谷 | ap-southeast-2 |
亚太-新加坡 | ap-southeast-3 |
华东-上海一 | cn-east-3 |
华北-北京一 | cn-north-1 |
华北-北京四 | cn-north-4 |
华南-广州 | cn-south-1 |
西南-贵阳一 | cn-southwest-2 |
拉美-墨西哥城二 | la-north-2 |
4. 在 Claude Desktop 中配置 MCP 服务器 - 连接 Claude 与 MCP 服务
本步骤在 Claude Desktop 客户端中配置 MCP 服务器,建立 Claude 与阿里云函数计算服务的连接。
部署完成后,在 Claude Desktop 的配置文件中添加 MCP 服务器配置:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"huaweicloud-ocr": {
"url": "http://your-fc-url/sse"
}
}
}将 http://your-fc-url/sse 替换为您的函数计算服务 URL。

5. 使用 OCR 服务 - 通过 Claude 调用 OCR 功能
本步骤演示如何在 Claude Desktop 中使用 MCP 服务调用 OCR 功能识别图片文字。
配置完成后,重启 Claude Desktop,您就可以直接与 Claude 对话,让它调用 OCR 服务:
示例对话:
用户:请帮我识别这张图片中的文字内容
Claude:好的,我来帮您识别这张图片...
[Claude 自动调用 recognize_web_image 工具]
识别结果:图片中包含以下文字内容:"..."或者明确指定:
用户:使用 URL 识别这张图片:https://example.com/image.png
Claude:我来帮您识别这张网络图片...
[Claude 调用 recognize_web_image 工具,传入 image_url 参数]
识别结果:...
6. 可用工具 - 查看 MCP 服务提供的工具列表
本步骤展示 MCP 服务器提供的可用工具及其参数说明。
MCP 服务器提供以下工具:
工具名称 | 参数 | 说明 |
recognize_web_image | image_url (可选) 或 image (可选) | 通过 URL 或 Base64 编码识别图片 |

注意:image_url 和 image 参数二选一,不能同时提供。
贡献指南
本项目使用 pre-commit 进行代码质量检查,确保代码符合规范。
安装 Pre-commit
# 安装 pre-commit
pip install pre-commit
# 安装 git hooks
pre-commit install配置的 Hooks
Hook | 作用 | 优先级 |
gitleaks | 检测密钥泄露 | 🔒 必须 |
pylint | Python 代码质量检查(含 pytest 支持) | 🐍 必须 |
trailing-whitespace | 删除行尾空格 | 🔧 推荐 |
end-of-file-fixer | 修复文件末尾 | 📄 推荐 |
shellcheck | Shell 脚本检查 | 🐚 推荐 |
手动运行 Hooks
# 对所有文件运行
pre-commit run --all-files
# 对特定文件运行
pre-commit run --files src/mzmcp/main.py更新 Hooks
# 更新到最新版本
pre-commit autoupdate
# 重新安装
pre-commit install --hook-stage pre-commit更多详细信息请参阅 Pre-commit 官方文档。
注意事项
环境变量配置:确保正确配置华为云的 Access Key 和 Secret Key,否则 OCR 服务无法正常调用
网络访问:如果使用 URL 识别,确保图片 URL 可公开访问
图片格式:支持常见的图片格式(JPG、PNG、BMP 等),建议使用清晰的图片以提高识别准确率
并发限制:函数计算有并发限制,大量并发请求可能触发限流
费用说明:
函数计算按实际使用量计费
华为云 OCR 服务按调用次数计费
建议合理使用,避免不必要的调用
区域选择:建议选择与目标用户接近的区域,降低网络延迟
安全建议:
不要将 Access Key 和 Secret Key 提交到代码仓库
使用环境变量或密钥管理服务存储敏感信息
定期轮换密钥
CI/CD 流水线
本项目采用完整的 CI/CD 流水线,确保代码质量和安全性。
详细的 CI/CD 流水线说明、Mermaid 可视化图以及各工作流的触发条件,请查看 CI/CD 流水线文档。
该文档包含:
完整的 Mermaid 流水线可视化图
各工作流的详细触发条件
工作流分类和说明
Available Tools
21 toolsaiPicMattingC
图片处理-抠图
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 图片在存储桶里的路径 | |
| width | No | 宽度 | |
| height | No | 高度 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden but offers minimal behavioral insight. It doesn't disclose if this is a read-only or mutating operation, what permissions are needed, rate limits, or output format (e.g., returns processed image URL or binary). For a tool with no annotations, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with '图片处理-抠图', a single phrase that is front-loaded and wastes no words. It efficiently conveys the core purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a tool that performs image processing (likely a mutation), the description is incomplete. It doesn't explain what the tool returns, error conditions, or behavioral traits, leaving significant gaps for an AI agent to understand how to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear parameter descriptions in the schema (e.g., 'objectKey' as image path in storage bucket). The description adds no additional parameter semantics beyond the schema, so it meets the baseline of 3 where schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '图片处理-抠图' (Image processing - matting) states a general purpose but lacks specificity. It mentions the action (matting) and resource (images) but doesn't distinguish from siblings like 'assessQuality' or 'waterMarkFont' which are also image processing tools. The purpose is clear but not differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With siblings like 'assessQuality' for quality assessment and 'waterMarkFont' for watermarking, the description doesn't indicate that this is specifically for background removal or segmentation tasks, leaving usage context implied at best.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aiQrcodeC
图片处理-二维码识别-识别存储桶内二维码图片内容
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | COS对象键(完整路径)示例: images/qrcode.jpg |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool recognizes QR code content from images in a storage bucket, implying a read-only operation that returns extracted text. However, it doesn't describe error handling (e.g., for invalid images), performance traits (e.g., speed), or output format (e.g., plain text or structured data). For a tool with no annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient Chinese phrase: '图片处理-二维码识别-识别存储桶内二维码图片内容'. It's front-loaded with the core purpose and avoids unnecessary words. However, it could be slightly more structured (e.g., separating function from scope) for clarity, but it's highly concise with zero waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (QR code recognition from images), lack of annotations, and no output schema, the description is minimally adequate. It covers the basic purpose and scope but misses details like output format, error conditions, and usage context. For a tool with no structured behavioral data, it should provide more completeness to guide an AI agent effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for its single parameter 'objectKey', which is documented as 'COS对象键(完整路径)示例: images/qrcode.jpg' (COS object key - full path example: images/qrcode.jpg). The description doesn't add any parameter-specific information beyond what the schema provides, such as format constraints or examples. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but doesn't need to heavily.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '图片处理-二维码识别-识别存储桶内二维码图片内容' (Image processing - QR code recognition - Recognize QR code image content in storage bucket). It specifies the verb (recognize), resource (QR code images), and scope (in storage bucket). However, it doesn't explicitly differentiate from sibling tools like 'imageSearchPic' or 'imageSearchText' that also process images, though the QR code focus is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an image in the storage bucket), exclusions (e.g., non-QR code images), or comparisons to siblings like 'imageSearchPic' for general image search. Usage is implied by the scope ('in storage bucket') but lacks explicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aiSuperResolutionC
图片处理-超分辨率
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 图片在存储桶里的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'image processing' and 'super resolution' but doesn't disclose behavioral traits such as whether it modifies the original image, requires authentication, has rate limits, or what the output entails (e.g., enhanced image file). This leaves significant gaps for a tool that likely performs computational transformations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with just two words ('图片处理-超分辨率'), which is front-loaded and wastes no space. It efficiently conveys the core function without unnecessary elaboration, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of image processing and the lack of annotations and output schema, the description is incomplete. It doesn't explain what super resolution does operationally, what the output is (e.g., a new image URL, modified file), or any constraints. For a tool with no structured behavioral data, this minimal description fails to provide sufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter semantics beyond what the input schema provides. The schema has 100% coverage with one parameter 'objectKey' clearly described as '图片在存储桶里的路径' (path of the image in the storage bucket). Since schema coverage is high, the baseline is 3, and the description doesn't compensate with additional details like format requirements or examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '图片处理-超分辨率' translates to 'image processing - super resolution', which states the general purpose (verb+resource) but is vague. It doesn't specify what super resolution does (e.g., upscaling images, enhancing details) or distinguish it from sibling image tools like aiPicMatting or waterMarkFont. The purpose is understandable but lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites (e.g., input image format), exclusions, or compare it to siblings like assessQuality or imageInfo. Usage is implied only by the name, with no explicit context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
assessQualityC
图片处理-图片质量评估
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 图片在存储桶里的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool assesses image quality but fails to disclose behavioral traits like whether it's read-only, what the output format is (e.g., scores, reports), latency, or error handling. This leaves significant gaps for an agent to understand how to invoke it effectively.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient phrase '图片处理-图片质量评估' that is front-loaded and wastes no words. However, it could be more structured by separating purpose from context, but it earns high marks for brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete. It lacks details on what the assessment returns (e.g., quality scores, metrics), how results are interpreted, or any error conditions. For a tool with one parameter but unknown output behavior, this leaves the agent with insufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with one parameter 'objectKey' clearly described as '图片在存储桶里的路径' (path of the image in the storage bucket). The description adds no additional meaning beyond the schema, but since coverage is high, the baseline score of 3 is appropriate as the schema adequately documents the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '图片处理-图片质量评估' translates to 'Image processing - image quality assessment', which provides a general purpose (assessing image quality) but lacks specificity about what exactly is evaluated (e.g., sharpness, noise, artifacts) and how it differs from sibling tools like 'imageInfo' or 'aiSuperResolution'. It's vague but not tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'imageInfo' (which might provide basic metadata) or 'aiSuperResolution' (which enhances quality). The description implies usage for quality assessment but offers no context on prerequisites, limitations, or comparisons to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
createDocToPdfJobC
创建文档转 pdf 处理任务
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 对象在存储桶里的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool creates a processing job but doesn't explain what happens after creation (e.g., asynchronous processing, job status tracking, error handling, or output location). For a job creation tool with zero annotation coverage, this leaves critical behavioral traits unspecified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence in Chinese that directly states the tool's purpose without unnecessary words. It's appropriately concise for a simple tool, though it could be more informative without sacrificing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool creates a processing job (implying asynchronous behavior) with no annotations and no output schema, the description is incomplete. It doesn't cover what the job entails, how to track it, what the output is (e.g., a PDF file location), or error conditions. For a job creation tool, this leaves significant gaps in understanding its full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the single parameter 'objectKey' clearly documented as '对象在存储桶里的路径' (path of the object in the storage bucket). The description doesn't add any meaning beyond this, such as explaining what types of documents are supported or format requirements. Baseline 3 is appropriate since the schema adequately covers the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '创建文档转 pdf 处理任务' (Create document to PDF processing job) clearly states the verb ('create') and resource ('document to PDF processing job'), making the purpose understandable. However, it doesn't distinguish this tool from potential alternatives or explain what type of document conversion it performs beyond the basic concept.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'describeDocProcessJob' (which might check job status) or other document processing tools. It lacks context about prerequisites, such as needing a document already stored in the bucket, or when this tool is appropriate compared to direct PDF creation methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
createMediaSmartCoverJobC
创建媒体智能封面任务
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 对象在存储桶里的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'create' which implies a write/mutation operation, but it doesn't disclose any behavioral traits like permissions needed, side effects, rate limits, or what the job does (e.g., processing media for covers). This leaves significant gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence ('创建媒体智能封面任务') that is front-loaded and wastes no words. However, it's overly brief to the point of under-specification, which slightly reduces its effectiveness despite the efficient structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a job creation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the job does, what it returns, or any behavioral aspects, making it inadequate for an agent to understand the full context of invoking this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond what the input schema provides. The schema has 100% description coverage, with 'objectKey' documented as '对象在存储桶里的路径' (path of the object in the storage bucket). Since the schema fully describes the single parameter, the baseline score of 3 is appropriate, as the description doesn't compensate or add extra context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '创建媒体智能封面任务' (Create media smart cover job) states a clear verb ('create') and resource ('media smart cover job'), but it's vague about what this actually does. It doesn't specify what a 'media smart cover job' entails or what resource it creates, nor does it differentiate from sibling tools like 'createDocToPdfJob' or 'describeMediaJob' beyond the basic resource name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context, or exclusions, such as when to choose this over other job-related tools like 'createDocToPdfJob' or 'describeMediaJob'. There's only a basic statement of purpose without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
describeDocProcessJobC
根据 jobid 查询指定的文档转码任务结果
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | 要查询的任务ID,可通过提交文档任务的响应中获取。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states this is a query operation, implying it's read-only and non-destructive, but doesn't mention any behavioral traits such as authentication requirements, rate limits, error handling, or what the output looks like (e.g., job status, result data). For a tool with zero annotation coverage, this is a significant gap, though it's not contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple query tool, though it could be slightly more informative (e.g., by front-loading key details like output format). There's no wasted text, earning a high score for efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a query operation with one parameter), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., job status, result data, error messages), which is critical for an agent to use it correctly. The description alone is insufficient for full contextual understanding, resulting in a low score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the parameter 'jobId' fully documented in the schema ('要查询的任务ID,可通过提交文档任务的响应中获取'). The description adds no additional parameter semantics beyond what the schema provides, such as format examples or constraints. With high schema coverage, the baseline score is 3, as the description doesn't compensate but doesn't detract either.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '根据 jobid 查询指定的文档转码任务结果' (Query the specified document transcoding task result based on jobid). It specifies the verb '查询' (query) and the resource '文档转码任务结果' (document transcoding task result). However, it doesn't explicitly differentiate from sibling tools like 'describeMediaJob' or 'createDocToPdfJob', which prevents a score of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal usage guidance: it implies this tool is used after a job is submitted (via '可通过提交文档任务的响应中获取' in the schema). However, it doesn't specify when to use this tool versus alternatives like 'describeMediaJob' for media jobs or 'createDocToPdfJob' for creating jobs, nor does it mention prerequisites or exclusions. This lack of explicit context guidance results in a low score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
describeMediaJobB
根据 jobid 查询指定的媒体智能封面任务结果
| Name | Required | Description | Default |
|---|---|---|---|
| jobId | Yes | 要查询的任务ID,可通过提交智能封面任务的响应中获取。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes a query operation ('查询'), implying it's likely read-only, but doesn't confirm this or mention other traits like rate limits, authentication needs, or error handling. For a tool with zero annotation coverage, this is insufficient to fully inform the agent about behavioral expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, making it easy for an AI agent to parse quickly. Every part of the sentence contributes to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is adequate but has gaps. It explains the basic purpose and parameter source, but lacks details on behavioral traits, usage context, and output format. Without annotations or an output schema, the description should do more to compensate, but it meets a minimum viable standard.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal semantic context: it implies the tool uses a jobId to query results, but the input schema already provides 100% coverage with a clear description for the jobId parameter. Since schema_description_coverage is high, the baseline is 3, and the description doesn't significantly enhance understanding beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '根据 jobid 查询指定的媒体智能封面任务结果' (Query specified media smart cover job results based on jobid). It specifies the verb (query/describe) and resource (media smart cover job results), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'createMediaSmartCoverJob' or 'describeDocProcessJob', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal usage guidance: it mentions that jobId can be obtained from the response of submitting a smart cover task. However, it doesn't specify when to use this tool versus alternatives (e.g., when to query results vs. create a job), nor does it provide context on prerequisites or exclusions. This lack of explicit guidance limits its helpfulness for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getBucketC
查询存储桶内的文件列表
| Name | Required | Description | Default |
|---|---|---|---|
| Prefix | No | 文件列表的路径前缀,默认根路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While '查询' (query) implies a read-only operation, it doesn't specify whether this lists all files, supports pagination, returns metadata only, or has any access restrictions. For a tool with zero annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient Chinese sentence that directly states the tool's purpose without any unnecessary words or structural issues. It's appropriately sized for what it communicates.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a read operation that likely returns structured data, the description is insufficient. It doesn't explain what the output contains (file names, metadata, pagination tokens) or any behavioral constraints. For a tool in a storage system context with multiple retrieval alternatives, more completeness is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage for its single parameter, so the baseline is 3. The description doesn't add any parameter-specific information beyond what's already in the schema's description of 'Prefix' as '文件列表的路径前缀,默认根路径' (path prefix for file list, default root path).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '查询存储桶内的文件列表' clearly states the purpose as 'query file list within storage bucket' in English, which is a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'getObject' or 'imageSearchText' that might also retrieve bucket contents, so it doesn't achieve full sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There are multiple sibling tools for retrieving bucket data (getObject, getObjectUrl, imageSearchText, etc.), but the description doesn't indicate this is specifically for listing files rather than retrieving content or searching.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getCosConfigC
获取COS配置, 腾讯云配置
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action ('获取' - get/retrieve), implying a read-only operation, but doesn't disclose other traits like authentication requirements, rate limits, error conditions, or what the output contains (e.g., JSON structure). This is a significant gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with just two phrases ('获取COS配置, 腾讯云配置'), which efficiently states the purpose without unnecessary words. It's front-loaded with the key action. However, it could be slightly more structured by clarifying the scope (e.g., 'Retrieves the current COS configuration from Tencent Cloud'), but it's still highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters (simplifying input) but no output schema and no annotations, the description is incomplete. It doesn't explain what the configuration includes (e.g., storage classes, regions), the format of the return value, or any behavioral context like error handling. For a configuration retrieval tool, this leaves the agent with insufficient information to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and the schema description coverage is 100% (as there are no parameters to describe). The description doesn't need to add parameter semantics, so it meets the baseline. No additional value is required or provided, making this adequate for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool '获取COS配置, 腾讯云配置' (Get COS configuration, Tencent Cloud configuration), which clearly indicates it retrieves configuration information. However, it's somewhat vague about what specific configuration is retrieved (e.g., storage settings, access policies, region info) and doesn't explicitly differentiate from sibling tools like 'getBucket' or 'getObject', which also retrieve COS-related information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., authentication needs), context for usage (e.g., before uploading objects), or comparisons to sibling tools like 'getBucket' (which might retrieve bucket-level info) or 'getObject' (which retrieves specific objects). Without this, the agent lacks clear direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getObjectC
下载存储桶内的文件
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 文件的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states it downloads files but doesn't describe what happens during download (e.g., file format preservation, error handling, authentication requirements, rate limits, or whether it streams or saves files). For a download operation with zero annotation coverage, this leaves significant behavioral questions unanswered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient Chinese phrase that directly states the tool's function. There's no wasted language or unnecessary elaboration - every word contributes to understanding the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a file download tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the tool returns (file content, metadata, download status), error conditions, authentication needs, or how it differs from similar tools like getObjectUrl. The minimal description leaves too many contextual questions unanswered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the single parameter 'objectKey' well-documented as '文件的路径' (file path). The description doesn't add any additional parameter context beyond what the schema already provides, so it meets the baseline for high schema coverage without compensating value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '下载存储桶内的文件' clearly states the action (下载/download) and resource (存储桶内的文件/file in bucket). It distinguishes from siblings like getBucket (which retrieves bucket info) and putObject (which uploads files). However, it doesn't specify the exact scope or format of the download operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like getObjectUrl (which might generate URLs instead of downloading) or other file retrieval methods. The description doesn't mention prerequisites, constraints, or typical use cases for this specific download approach.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getObjectUrlC
获取存储桶内的文件的带签名的下载链接
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 文件的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions the output is a 'signed download link', implying authentication and temporary access, but doesn't detail key behaviors: whether the URL has an expiration time, what permissions are required, if it's idempotent, or if there are rate limits. For a tool that generates access-controlled URLs, this lack of operational context is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded with the core action and resource. However, it could be slightly more structured by explicitly separating the action from the output type, but this is minor.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (generating signed URLs often involves security and expiration details), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what the signed URL looks like, how long it's valid, or any error conditions. For a tool with potential behavioral nuances, this leaves critical gaps for an agent to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with 'objectKey' documented as '文件的路径' (file path). The description doesn't add any parameter-specific information beyond what's in the schema, such as format examples (e.g., path syntax) or constraints (e.g., allowed characters). Since the schema already fully describes the single parameter, the baseline score of 3 is appropriate, as no additional value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('获取' meaning 'get') and the resource ('存储桶内的文件的带签名的下载链接' meaning 'signed download URL for a file in a storage bucket'). It specifies the output is a signed URL rather than the file content itself, which distinguishes it from sibling tools like 'getObject'. However, it doesn't explicitly differentiate from all siblings, such as 'getBucket' or 'getCosConfig', which also retrieve information about storage resources.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing a valid bucket or authentication), compare it to similar tools like 'getObject' (which might retrieve the file directly), or specify use cases (e.g., for sharing files securely). Without this context, an agent might struggle to choose between this and other retrieval tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
imageInfoC
图片处理-获取图片信息
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | 图片在存储桶里的路径 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states '获取图片信息' (get image information), implying a read-only operation, but doesn't specify what information is returned (e.g., metadata, dimensions), whether it requires authentication, rate limits, or error conditions. The description is too minimal to adequately inform the agent about behavioral traits beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single phrase '图片处理-获取图片信息', which is concise and front-loaded with the core action. However, it's overly terse and lacks necessary details, bordering on under-specification rather than optimal brevity. It earns a 4 for efficiency but loses points for not providing enough context in its minimal form.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (a tool to retrieve image information), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what 'image information' entails, the return format, or any behavioral nuances. The agent is left guessing about the output and usage context, making this inadequate for effective tool selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with 'objectKey' clearly documented as '图片在存储桶里的路径' (path of the image in the storage bucket). The description adds no additional parameter semantics beyond this. According to the rules, with high schema coverage (>80%), the baseline is 3 even with no param info in the description, which applies here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '图片处理-获取图片信息' (Image processing - get image information) states a general purpose but lacks specificity. It mentions the verb '获取' (get) and resource '图片信息' (image information), but doesn't clarify what information is retrieved (e.g., metadata, dimensions, format) or how it differs from sibling tools like 'getObject' or 'assessQuality'. The purpose is vague rather than clearly distinguished.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an objectKey), exclusions, or comparisons to siblings like 'getObject' (which might retrieve raw image data) or 'assessQuality' (which might evaluate image quality). Without any usage context, the agent must infer based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
imageSearchPicC
根据输入的图片,从数据集中检索出与输入的图片内容相似的图片
| Name | Required | Description | Default |
|---|---|---|---|
| uri | Yes | 图片地址 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool retrieves similar images but doesn't describe what 'similar' means (visual similarity, semantic similarity, etc.), how many results are returned, whether there's pagination, what format results come in, or any limitations/constraints. For a search tool with zero annotation coverage, this is inadequate behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core functionality. There's no wasted text or unnecessary elaboration. However, it could be more front-loaded with key behavioral information given the lack of annotations. The conciseness is good but comes at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a search tool with no annotations, no output schema, and minimal behavioral description, the description is incomplete. It doesn't explain what constitutes 'similar' images, how results are ranked/formatted, what dataset is being searched, or any limitations. For a tool that presumably returns multiple results, the lack of output information is a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the single parameter 'uri' described as '图片地址' (image address). The description adds that this is an input image for similarity search, which provides some context beyond the schema's 'image address' description. However, it doesn't elaborate on supported URI formats, size limits, or content requirements. With high schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '根据输入的图片,从数据集中检索出与输入的图片内容相似的图片' (retrieve similar images from a dataset based on input image content). It specifies the verb ('检索出' - retrieve) and resource ('图片' - images), but doesn't distinguish from its sibling 'imageSearchText' which likely performs text-based image search. The purpose is clear but lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention the sibling tool 'imageSearchText' or any other image-related tools in the list. There's no context about prerequisites, dataset characteristics, or performance expectations. The description only states what the tool does, not when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
imageSearchTextC
根据输入的文本内容,从数据集中检索出与输入的文本内容相符的图片
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | 检索的文本 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the basic action of retrieving images, without details on permissions, rate limits, dataset scope, or response format (e.g., pagination, error handling). For a retrieval tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It is front-loaded and clear, though it could be slightly more structured (e.g., by adding usage context). Overall, it earns its place concisely.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not cover behavioral aspects like dataset details, result format, or error conditions. For a retrieval tool with no structured support, the description should provide more context to ensure reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds minimal meaning beyond the input schema, which has 100% coverage for the single parameter 'text'. It implies the text is used for matching images but does not elaborate on syntax, language, or matching criteria. With high schema coverage, the baseline is 3, as the schema already documents the parameter adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'retrieve images from a dataset that match the input text content.' It specifies both the verb ('retrieve') and the resource ('images'), making the function unambiguous. However, it does not explicitly differentiate from sibling tools like 'imageSearchPic' (which likely searches by image rather than text), so it misses the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools (e.g., 'imageSearchPic' for image-based searches) or any contextual prerequisites, leaving the agent to infer usage based on the tool name alone. This lack of explicit guidance limits its effectiveness in tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
putBase64C
上传base64编码内容到存储桶
| Name | Required | Description | Default |
|---|---|---|---|
| base64Content | Yes | base64编码的内容 | |
| fileName | Yes | 文件名 (存在存储桶里的名称) | |
| targetDir | No | 目标目录 (存在存储桶的哪个目录) | |
| contentType | No | 内容类型,如 image/png (图片), application/pdf, application/vnd.openxmlformats-officedocument.wordprocessingml.document (文档) 等,如果base64带头部则默认自带的头部否则默认为 application/octet-stream |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While '上传' (upload) implies a write/mutation operation, the description doesn't disclose important behavioral aspects like authentication requirements, error conditions, rate limits, whether the operation overwrites existing files, or what happens on success/failure. For a mutation tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient Chinese sentence that directly states the tool's purpose without any unnecessary words or structural complexity. It's appropriately sized and front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is inadequate. It doesn't explain what happens after upload (success response, error handling), doesn't mention authentication or permission requirements, and provides no context about the storage system. Given the tool's complexity as a write operation, more behavioral context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters thoroughly. The description doesn't add any meaningful parameter semantics beyond what's already in the schema - it doesn't explain parameter interactions, provide examples, or clarify edge cases. With complete schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('上传' meaning 'upload') and resource ('base64编码内容到存储桶' meaning 'base64 encoded content to storage bucket'), providing a specific verb+resource combination. However, it doesn't distinguish this tool from its sibling tools like putBuffer, putObject, putObjectSourceUrl, and putString, which all appear to be alternative upload methods.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools for uploading (putBuffer, putObject, putObjectSourceUrl, putString), there's no indication of when this base64-specific upload method is preferred or what distinguishes it from other upload methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
putBufferC
上传buffer内容到存储桶
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | buffer内容字符串 | |
| fileName | Yes | 文件名 (存在存储桶里的名称) | |
| targetDir | No | 目标目录 (存在存储桶的哪个目录) | |
| contentType | No | 内容类型,如 image/png, application/pdf 等,默认为 application/octet-stream | |
| encoding | No | 字符串编码格式,默认为utf8。hex=十六进制,base64=Base64编码,utf8=UTF-8文本,ascii=ASCII文本,binary=二进制 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. The description only states the upload action without mentioning any behavioral aspects like authentication requirements, rate limits, error conditions, whether this overwrites existing files, or what happens after upload. For a write operation tool with zero annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient Chinese phrase ('上传buffer内容到存储桶') that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded with the essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write operation tool with 5 parameters and no annotations or output schema, the description is incomplete. It doesn't address important contextual aspects like what happens after upload (success/failure responses), whether this is idempotent, what permissions are required, or how it differs from similar sibling tools. The description alone doesn't provide enough information for confident tool selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 5 parameters thoroughly. The description adds no additional parameter information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '上传buffer内容到存储桶' clearly states the action (upload) and target (storage bucket) in Chinese, making the purpose understandable. However, it doesn't differentiate from sibling tools like putBase64, putObject, putObjectSourceUrl, or putString, which all seem to upload content to storage buckets using different input formats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With multiple sibling upload tools (putBase64, putObject, putObjectSourceUrl, putString), the description offers no indication of what makes this tool distinct or when it should be preferred over those other options.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
putObjectC
上传本地文件到存储桶
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | 文件路径 (包含文件名) | |
| fileName | No | 文件名 (存在存储桶里的名称) | |
| targetDir | No | 目标目录 (存在存储桶的哪个目录) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the upload action but doesn't cover critical traits like required permissions, rate limits, error handling (e.g., if file doesn't exist), or what happens on success (e.g., returns a URL or confirmation). For a mutation tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence in Chinese ('上传本地文件到存储桶') that is front-loaded and wastes no words. It directly conveys the core purpose without unnecessary elaboration, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a mutation with 3 parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., success status, object URL), error conditions, or behavioral nuances like overwrite policies. For a file upload tool, this leaves critical gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for filePath, fileName, and targetDir in Chinese. The description adds no additional meaning beyond the schema, such as format examples (e.g., path syntax) or interdependencies (e.g., fileName defaults to basename of filePath). Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '上传本地文件到存储桶' clearly states the action (upload) and resource (local file to storage bucket) in Chinese. It distinguishes from siblings like putBase64, putBuffer, putObjectSourceUrl, and putString by specifying 'local file' as the source, though it doesn't explicitly name these alternatives. The purpose is specific but could be more precise about sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like putBase64, putBuffer, putObjectSourceUrl, or putString. It lacks context such as prerequisites (e.g., file must exist locally), performance considerations, or error conditions. Usage is implied by the action but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
putObjectSourceUrlC
通过 url下载文件并将文件上传到存储桶
| Name | Required | Description | Default |
|---|---|---|---|
| sourceUrl | Yes | 可下载的文件 url | |
| fileName | No | 文件名 (存在存储桶里的名称) | |
| targetDir | No | 目标目录 (存在存储桶的哪个目录) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool downloads and uploads a file, implying a write operation, but lacks details on permissions, error handling, rate limits, or what happens if the URL is invalid. This is a significant gap for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core functionality. There is no wasted text, and it directly conveys the tool's purpose without redundancy or unnecessary details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a mutation operation with 3 parameters), lack of annotations, and no output schema, the description is incomplete. It does not explain return values, error conditions, or behavioral traits like whether the upload overwrites existing files, making it inadequate for safe and effective use by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (sourceUrl, fileName, targetDir) with descriptions. The description does not add any meaning beyond the schema, such as URL format examples or directory path conventions, but the baseline is 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: download a file from a URL and upload it to a storage bucket. It uses specific verbs ('download', 'upload') and identifies the resource ('file', 'storage bucket'). However, it does not explicitly differentiate from sibling tools like putObject, putBase64, or putBuffer, which may handle similar uploads with different input types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools like putObject (which might handle direct uploads) or putBase64/putBuffer (for other data formats), nor does it specify prerequisites or exclusions, such as URL accessibility or file size limits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
putStringC
上传字符串内容到存储桶
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | 要上传的字符串内容 | |
| fileName | Yes | 文件名 (存在存储桶里的名称) | |
| targetDir | No | 目标目录 (存在存储桶的哪个目录) | |
| contentType | No | 内容类型,如 text/plain, application/json 等,默认为 text/plain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. While '上传' (upload) implies a write/mutation operation, the description doesn't disclose important behavioral aspects: whether this overwrites existing files, what permissions are required, error conditions, rate limits, or what happens on success/failure. For a mutation tool with zero annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient Chinese phrase that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is inadequate. It doesn't explain what happens after upload (success response, error handling), doesn't differentiate from similar sibling tools, and provides no behavioral context. The 100% schema coverage helps with parameters, but overall completeness is poor for a write operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 4 parameters thoroughly. The description doesn't add any meaningful parameter semantics beyond what's in the schema - it doesn't explain relationships between parameters, provide examples, or clarify edge cases. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('上传' meaning 'upload') and resource ('字符串内容到存储桶' meaning 'string content to storage bucket'), providing a specific verb+resource combination. However, it doesn't distinguish this tool from sibling tools like putBase64, putBuffer, putObject, or putObjectSourceUrl which appear to be related upload operations with different input formats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With multiple sibling upload tools (putBase64, putBuffer, putObject, putObjectSourceUrl), there's no indication of when this string-specific upload is preferred over other methods, nor any mention of prerequisites or constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
waterMarkFontC
生成带文字水印的图片
| Name | Required | Description | Default |
|---|---|---|---|
| objectKey | Yes | COS对象键(完整路径)示例: images/photo.jpg | |
| text | No | 水印文字内容(支持中文) | test |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates watermarked images but doesn't mention whether this modifies the original file, creates a new file, requires specific permissions, has rate limits, or what the output format is. This leaves significant gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence in Chinese that directly states the tool's function without unnecessary words. It's appropriately sized for a simple tool, though it could be more front-loaded with key details if expanded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of image processing (mutating files) and lack of annotations or output schema, the description is incomplete. It doesn't cover behavioral aspects like file handling, output format, or error conditions, making it inadequate for safe and effective use by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both parameters (objectKey and text). The description adds no additional meaning beyond the schema, such as explaining how the watermark is applied (e.g., position, font size) or format constraints. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description '生成带文字水印的图片' (Generate images with text watermark) clearly states the verb (generate) and resource (images with text watermark), providing a basic purpose. However, it doesn't differentiate from sibling tools like 'putObject' or 'putBase64' which might also handle image processing, making it somewhat vague in context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. With siblings like 'putObject' for uploading and 'imageInfo' for analysis, there's no indication of prerequisites, specific use cases, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Most tools have distinct purposes, with clear separation between image processing, file management, and job handling. However, there is some overlap between putBase64, putBuffer, putString, and putObject, which all handle file uploads with different input formats, potentially causing confusion.
Naming conventions are mixed, with some tools using camelCase (e.g., createDocToPdfJob) and others using snake_case (e.g., image_search_pic is implied but not consistent). While verbs like 'create', 'describe', 'get', and 'put' are used predictably, the overall pattern lacks uniformity.
With 21 tools, the count is on the higher side but reasonable for a server covering image processing, file storage, and job management. It feels slightly heavy but not excessive, as each tool serves a specific function within the domain.
The tool set provides good coverage for image processing and file operations, including upload, download, and management. Minor gaps exist, such as no direct delete or update tools for files or jobs, but agents can likely work around these with the available tools.
Maintenance
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
Upload, organize, search, and transform images, videos, and files with AI-powered tools.
Video, audio, and image processing for AI agents: convert, transcribe, upscale - 150+ operations.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Carbon Voice MCP serves as a bridge that connects AI assistants like ChatGPT, Claude, and Cursor to a user's Carbon Voice account, turning voice messages and conversations into a private, on-demand knowledge base. It provides 28 specialized tools for comprehensive voice messaging management, including creating and sending messages, accessing conversation history with instant transcription, running AI actions (summarization, TLDR generation, meeting notes), and managing workspace collaboration through folders, contacts, and team communications.
Related MCP Servers
- AlicenseCqualityFmaintenanceA server based on MCP protocol that allows large language models to directly access Tencent Cloud Object Storage (COS) and Cloud Infinite (CI) services without coding, enabling file storage, retrieval, and processing operations.1826038MIT
- AlicenseBqualityDmaintenanceEnables interaction with Volcengine's TOS (Object Storage) service through MCP protocol. Supports bucket management, object operations, pre-signed URLs, and media processing including image manipulation and video frame extraction.132Apache 2.0
- AlicenseBqualityDmaintenanceEnables interaction with Tencent Cloud Object Storage (COS) through MCP protocol. Supports file upload, download, deletion, listing objects, and generating temporary signed URLs for cloud storage management.525MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/xiaomizhoubaobei/MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server