TrendRadar
Server Quality Checklist
Latest release: v6.0.0
- Disambiguation3/5
Most tools have distinct purposes, but there is some overlap that could cause confusion. For example, 'analyze_topic_trend' and 'analyze_sentiment' both analyze topics with similar parameters, and 'search_news' and 'find_related_news' both search for news but with different focuses. The descriptions help clarify, but an agent might misselect between these pairs.
Naming Consistency4/5The naming is mostly consistent with a verb_noun pattern (e.g., 'aggregate_news', 'analyze_sentiment', 'get_latest_news'), but there are a few deviations like 'check_version' (verb_noun but simpler) and 'sync_from_remote' (verb_preposition_noun). Overall, the pattern is predictable and readable, with minor inconsistencies.
Tool Count2/5With 27 tools, the count is too high for a news analysis server, making it feel heavy and potentially overwhelming. While the domain is broad (news aggregation, analysis, notification, system management), many tools could be consolidated (e.g., multiple analysis tools or system status tools) to reduce complexity and improve usability.
Completeness4/5The tool set covers the news analysis domain comprehensively, including data retrieval (e.g., 'get_latest_news'), analysis (e.g., 'analyze_topic_trend'), notification (e.g., 'send_notification'), and system management (e.g., 'sync_from_remote'). Minor gaps exist, such as no direct tool for deleting or modifying stored data, but agents can work around this with existing tools for most workflows.
Average 4.1/5 across 27 of 27 tools scored. Lowest: 3/5.
See the Tool Scores section below for per-tool breakdowns.
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- 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 mentions the tool generates reports and returns JSON with Markdown content, but doesn't disclose important behavioral traits like whether this is a read-only operation, if it requires specific permissions, potential rate limits, processing time, or what '热点摘要' (hotspot summary) specifically entails. The description adds minimal behavioral context beyond basic functionality.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized but not optimally structured. The purpose statement is clear, but the parameter documentation is embedded in the description rather than separated, and the formatting with asterisks and colons is somewhat inconsistent. Every sentence adds value, but the organization could be more front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 parameters with 0% schema coverage but has an output schema, the description provides adequate parameter documentation but lacks context about the tool's behavioral characteristics. The output schema existence means the description doesn't need to detail return values, but for a report generation tool with no annotations, more information about what constitutes a '热点摘要' (hotspot summary) and when to use it would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate for the schema's lack of documentation. It provides detailed information about both parameters: report_type options (daily/weekly) and date_range format/constraints with examples. This adds significant semantic value beyond what the bare schema provides, though it doesn't explain the relationship between report_type and date_range or when date_range is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as '自动生成热点摘要报告' (automatically generate hotspot summary reports) with '每日/每周' (daily/weekly) scope, which is a specific verb+resource combination. However, it doesn't explicitly distinguish this from sibling tools like 'analyze_topic_trend' or 'get_trending_topics', which might have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 'analyze_topic_trend' or 'get_trending_topics'. It mentions the report_type parameter (daily/weekly) but doesn't explain the context for choosing between them or when this tool is appropriate versus other analysis tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions what information is returned, it doesn't describe important behavioral aspects such as whether this is a read-only operation (implied but not stated), whether it requires authentication, performance characteristics, or potential side effects. For a status-checking tool with zero annotation coverage, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured in three brief sections: purpose, returned information, and output format. Each sentence adds value without redundancy. However, the mix of Chinese and English creates minor readability issues, and the 'Returns:' section is somewhat redundant with the previous line.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that the tool has no parameters, an output schema exists, and it's a relatively simple status-checking operation, the description provides adequate basic information. However, it lacks important context about when to use it versus sibling tools, behavioral details, and could better explain the relationship to similar tools like 'check_version' and 'get_storage_status'.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters with 100% schema description coverage, so the schema fully documents the lack of inputs. The description appropriately doesn't discuss parameters since none exist. This meets the baseline expectation for parameterless tools, though it doesn't add extra value beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as '获取系统运行状态和健康检查信息' (get system running status and health check information) and specifies what information is returned (system version, data statistics, cache status). It distinguishes from siblings like 'check_version' (which likely only returns version) and 'get_storage_status' (which likely only returns storage status). However, it doesn't explicitly contrast with these specific siblings, so it doesn't reach the highest clarity level.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 when this tool is appropriate (e.g., for monitoring, troubleshooting) or when other tools like 'check_version' or 'get_storage_status' might be more suitable. There's no context about prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns JSON with specific fields (available_dates, total_dates, today_feeds, generated_at), which is helpful. However, it doesn't mention whether this is a read-only operation, if it requires authentication, potential rate limits, or error conditions. For a status-checking 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized. It starts with a clear purpose statement, details the return format in a bulleted list, and ends with an example. Each sentence adds value without redundancy. However, the inclusion of both Chinese and English in the example ('get_rss_feeds_status() # 查看所有 RSS 源状态') is slightly verbose, preventing a perfect score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, output schema exists), the description is reasonably complete. It explains what the tool does and the structure of the return value, which compensates for the lack of annotations. With an output schema likely covering the JSON structure, the description doesn't need to detail return values extensively. However, it misses behavioral context like read-only nature or error handling, keeping it from a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100% (empty schema). The description doesn't need to explain parameters, so it naturally meets expectations. It correctly indicates no parameters are needed with the example 'get_rss_feeds_status()', aligning with the schema. This justifies a score above baseline, as it handles the parameter-less case appropriately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '获取 RSS 源状态信息' (Get RSS feed status information) and '查看当前配置的 RSS 源及其数据统计信息' (View currently configured RSS feeds and their data statistics). It specifies the verb ('获取/查看' - get/view) and resource ('RSS 源状态信息' - RSS feed status information), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'get_latest_rss' or 'get_storage_status', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 includes an example ('get_rss_feeds_status() # 查看所有 RSS 源状态') that reinforces the purpose but doesn't mention when this tool is appropriate compared to siblings like 'get_latest_rss', 'list_available_dates', or 'get_system_status'. There's no discussion of prerequisites, context, or exclusions, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool returns JSON-formatted configuration information, which is helpful, but doesn't mention whether this is a read-only operation, what permissions might be required, whether it's cached or real-time data, or any rate limits. For a configuration retrieval tool 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns) and uses bullet points effectively for the enum values. It's appropriately sized for a single-parameter tool with multiple options. The only minor improvement would be integrating the default value more seamlessly rather than listing it separately, but overall it's efficient and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (single parameter with multiple options), the presence of an output schema (which handles return value documentation), and the excellent parameter documentation in the description, this is quite complete. The main gap is the lack of behavioral context that annotations would normally provide, but the description covers the core functionality adequately for a read operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides excellent parameter semantics despite 0% schema description coverage. It clearly documents the single parameter 'section' with its default value ('all'), enumerates all possible values with their meanings, and explains what each option retrieves. This fully compensates for the lack of schema descriptions and adds substantial value beyond the basic input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as '获取当前系统配置' (get current system configuration), which is a specific verb+resource combination. It distinguishes itself from siblings like 'get_system_status' by focusing specifically on configuration retrieval rather than general system status. However, it doesn't explicitly contrast with all similar siblings, keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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. While it mentions different configuration sections, it doesn't explain when to retrieve specific sections versus 'all', nor does it reference sibling tools like 'get_system_status' that might overlap in functionality. There's no mention of prerequisites, timing considerations, or use case scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 of behavioral disclosure. It states this is a read-only operation ('获取'/'查看') and describes what information will be returned (storage backend configuration, local/remote storage status, pull configuration). However, it doesn't mention potential side effects, authentication requirements, rate limits, or error conditions. For a tool with zero annotation coverage, this provides basic behavioral context but lacks important operational 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with three sentences that each serve a distinct purpose: stating the tool's function, elaborating on what information it provides, and describing the return format. The information is front-loaded with the core purpose first. There's minimal redundancy, though the Chinese/English mixing in the Returns section is slightly awkward.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a simple read-only status tool with 0 parameters, 100% schema coverage, and an output schema exists, the description is reasonably complete. It explains what information will be retrieved (storage configuration and status) and the return format (JSON). The existence of an output schema means the description doesn't need to detail return values. For this complexity level, the description provides adequate context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters with 100% schema description coverage, so the baseline is 4. The description correctly indicates this is a parameterless tool that retrieves system information without needing any inputs. No additional parameter semantics are needed since there are no parameters to document.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('获取' meaning 'get/retrieve', '查看' meaning 'view/check') and resources ('存储配置和状态' meaning 'storage configuration and status'). It distinguishes itself from siblings like get_system_status by focusing specifically on storage, but doesn't explicitly contrast with get_current_config which might overlap. The purpose is clear but sibling differentiation is implicit rather than explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There's no mention of when this tool is appropriate versus get_system_status (which might include storage status) or get_current_config (which might include configuration details). The agent must infer usage from the tool name and description alone without any explicit context or exclusions provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 lists and compares date availability from different sources, which is useful behavioral context. However, it doesn't mention potential limitations (e.g., rate limits, authentication needs, data freshness) or what '对比结果' (comparison results) entail. It adds some value but lacks depth 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and well-structured with clear sections (description, Args, Returns, Examples). Each sentence adds value, though the first two sentences are somewhat redundant. It's front-loaded with the core purpose and efficiently organized without unnecessary fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (1 parameter, no annotations, but with an output schema), the description is fairly complete. It covers the purpose, parameter semantics, return format, and examples. The output schema exists, so the description doesn't need to detail return values. However, it could improve by addressing behavioral aspects like error handling or data scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant meaning beyond the input schema, which has 0% description coverage. It explains the 'source' parameter with three options ('local', 'remote', 'both') and their semantics, including the default value. This compensates well for the schema's lack of documentation, though it doesn't detail format or constraints beyond the enum-like options.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '列出本地/远程可用的日期范围' (list available date ranges from local/remote storage). It specifies the verb (list/view) and resource (date ranges), though it doesn't explicitly differentiate from sibling tools like 'resolve_date_range' or 'compare_periods'. The purpose is clear but lacks sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning '本地和远程存储' (local and remote storage) and provides examples with different source values. However, it doesn't explicitly state when to use this tool versus alternatives like 'get_storage_status' or 'resolve_date_range'. Usage is implied but not clearly defined relative to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 mentions the tool triggers a crawling task with optional persistence, but doesn't disclose important behavioral aspects like whether this is a long-running operation, what permissions are required, rate limits, error handling, or what happens when the task completes. The description adds some context about saving locally and token optimization, but lacks comprehensive behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns, Examples) and uses bullet points effectively. It's appropriately sized with no redundant information, though the Chinese-only text might limit accessibility for some agents. Every sentence adds value, but the structure could be slightly more front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema (Returns JSON format task status information), the description doesn't need to explain return values in detail. It covers the main purpose and parameters well, though for a tool that triggers potentially resource-intensive crawling tasks, more context about execution behavior and constraints would be beneficial. The presence of an output schema reduces the completeness burden.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by providing clear semantic explanations for all three parameters: 'platforms' (platform ID list with examples), 'save_to_local' (whether to save to local output directory), and 'include_url' (whether to include URL links to save tokens). The description adds significant value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '手动触发一次爬取任务' (manually trigger a crawling task) with optional persistence. It specifies the action (trigger) and resource (crawling task), but doesn't explicitly differentiate from sibling tools like 'get_latest_news' or 'search_news' which might also involve crawling operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 when manual triggering is needed versus automated crawling, or how this differs from sibling tools like 'get_latest_news' or 'sync_from_remote' that might involve similar data collection operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 of behavioral disclosure. It describes the tool's function (aggregation with deduplication), output format (JSON with specific fields), and default behaviors (e.g., date_range defaults to today). However, it doesn't mention potential side effects, rate limits, authentication needs, or error conditions, which are important for a tool with multiple parameters and 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, Args, Returns, Examples) and uses bullet points for readability. Every sentence adds value, though the Chinese-to-English translation creates minor redundancy in the purpose statement. It could be slightly more concise in the opening lines but remains efficient overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, aggregation logic) and the presence of an output schema (which handles return values), the description is quite complete. It explains the tool's purpose, all parameters, return format, and provides examples. The main gap is lack of behavioral warnings (since no annotations exist), but otherwise it covers most contextual needs adequately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides excellent parameter semantics beyond the input schema, which has 0% description coverage. Each parameter (date_range, platforms, similarity_threshold, limit, include_url) is clearly explained with meaning, format examples, defaults, and constraints (e.g., similarity_threshold range 0.3-1.0). This fully compensates for the schema's lack of descriptions and adds significant value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '跨平台新闻聚合 - 对相似新闻进行去重合并' (cross-platform news aggregation - deduplicate and merge similar news). It specifies the verb (aggregate), resource (news), and scope (across platforms with deduplication). However, it doesn't explicitly differentiate from sibling tools like 'find_related_news' or 'search_news', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through examples and parameter explanations (e.g., '不指定则查询今天' - if not specified, query today), but lacks explicit guidance on when to use this tool versus alternatives like 'find_related_news' or 'get_latest_news'. It provides some operational context but no clear when/when-not statements or named alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 of behavioral disclosure. It mentions the return format ('JSON format data insights analysis results') and provides parameter-specific constraints (e.g., date_range must be object format, not integer). However, it doesn't cover important behavioral aspects like whether this is a read-only operation, potential rate limits, authentication requirements, or what happens with invalid parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns, Examples) and uses bullet points effectively. While somewhat lengthy due to detailed parameter documentation, every sentence earns its place by adding necessary information. The front-loaded purpose statement is clear, though the Chinese title adds minor redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, 3 distinct analysis modes) and 0% schema description coverage, the description does an excellent job of explaining parameter usage and relationships. The presence of an output schema means the description doesn't need to detail return values. However, without annotations, it could better address behavioral aspects like error conditions or performance characteristics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by providing comprehensive parameter documentation. It explains each parameter's purpose, lists valid values for insight_type with descriptions, specifies format requirements for date_range with examples, indicates which parameters apply to which modes, and provides default values. This adds substantial meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is a 'unified data insights analysis tool' that 'integrates multiple data analysis modes' and lists three specific insight types. It provides a clear verb ('analyze') and resource ('data insights'), though it doesn't explicitly differentiate from sibling tools like analyze_sentiment or analyze_topic_trend.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through parameter documentation (e.g., 'topic' is applicable to platform_compare mode, min_frequency and top_n are for keyword_cooccur mode). However, it doesn't explicitly state when to choose this tool over alternatives like analyze_topic_trend or compare_periods, nor does it provide exclusion criteria or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It describes the tool's multi-mode behavior and mentions JSON output format, but lacks critical behavioral details: whether this is a read-only operation, computational cost, rate limits, authentication requirements, or what happens with invalid parameters. The description adds some behavioral context but leaves significant gaps for a tool with 8 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (overview, advice, args, returns, examples) and uses bullet points effectively. While comprehensive, some sentences could be more concise (e.g., the opening line could be tighter). Overall, it's appropriately sized for an 8-parameter tool with multiple modes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (8 parameters, multiple analysis modes, no annotations) and the presence of an output schema (which covers return values), the description is reasonably complete. It explains parameters thoroughly, provides usage guidance, and includes examples. The main gap is lack of behavioral transparency details that would be important for a multi-mode analysis tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates excellently by providing detailed parameter semantics beyond the bare schema. It explains each parameter's purpose, lists analysis_type options with descriptions, specifies defaults, clarifies which parameters apply to which modes, and provides format examples. This adds substantial value beyond the minimal schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs 'topic trend analysis' with 'integrated trend analysis modes' and lists specific analysis types (trend, lifecycle, viral, predict). It distinguishes from siblings like 'get_trending_topics' by focusing on analysis rather than listing. However, it doesn't explicitly differentiate from 'analyze_data_insights' or 'compare_periods' which might have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance to call 'resolve_date_range' first when using natural language dates, which is helpful context. It also implies usage through the analysis_type parameter options, suggesting when to use different modes. However, it doesn't explicitly state when NOT to use this tool or mention alternatives among siblings like 'analyze_data_insights'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: it explains the return format ('JSON格式的新闻列表'), includes performance considerations ('节省token' for token saving with include_url default), and specifies operational limits ('默认50,最大1000'). It doesn't mention rate limits, authentication needs, or error handling, but covers more than basics for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a purpose statement, detailed Args section, and Returns section—all in a compact format. Every sentence earns its place by explaining functionality or parameters. It could be slightly more front-loaded by moving the purpose statement earlier, but overall it's efficient with minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, 0% schema coverage, no annotations, but an output schema exists, the description is largely complete. It thoroughly documents all parameters and their usage, explains the return format, and provides context for the tool's purpose. The output schema means it doesn't need to detail return values, but it could mention sibling tools or error cases for a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must fully compensate—and it does excellently. For all 4 parameters, it provides clear semantics: date_range formats with examples, platforms as ID lists with examples, limit defaults and max, and include_url purpose and default. This adds substantial meaning beyond the bare schema, fully documenting parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as '获取指定日期的新闻数据' (get news data for specified dates) with the specific use case '用于历史数据分析和对比' (for historical data analysis and comparison). It distinguishes from siblings like 'get_latest_news' (which presumably gets current news) by focusing on historical/date-specific retrieval. However, it doesn't explicitly contrast with 'search_news' or 'find_related_news', keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through '用于历史数据分析和对比' (for historical data analysis and comparison), suggesting this tool is for retrospective analysis rather than real-time monitoring. However, it provides no explicit guidance on when to use this versus alternatives like 'search_news' or 'get_latest_news', nor does it mention any prerequisites or exclusions. The usage context is helpful but incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 describes the tool's unified search capability, date handling recommendation, and return format (JSON with hot list and optional RSS results). However, it doesn't mention rate limits, authentication requirements, error conditions, or whether this is a read-only operation versus something that might trigger background processes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, recommendation, args, returns, examples). While comprehensive, it's appropriately sized for a 10-parameter tool. Some sentences could be more concise, but overall it's efficiently organized with zero wasted content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (10 parameters, 0% schema coverage) and presence of an output schema, the description provides excellent parameter documentation and clear purpose. It could benefit from more behavioral context (rate limits, permissions) and explicit sibling tool differentiation, but covers the essential usage information well.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage for 10 parameters, the description provides excellent compensation. It documents all parameters with clear explanations, default values, format examples, and mode-specific behaviors (like threshold only applying to fuzzy mode). This adds substantial value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is a 'unified search interface' that 'supports multiple search modes' and can 'search hot lists and RSS simultaneously.' It specifies the verb (search) and resource (news), though it doesn't explicitly differentiate from sibling tools like 'search_rss' or 'get_latest_news' beyond mentioning its unified nature.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance to 'use natural language dates, first call resolve_date_range to get precise date range' which is helpful context. It also mentions the tool's unified nature (hot lists and RSS), but doesn't explicitly state when to use this versus alternatives like 'search_rss' or 'get_latest_news'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 explains the tool's behavior (compares versions, checks GitHub) and mentions network access (proxy support), but doesn't disclose important behavioral traits like rate limits, authentication requirements, error conditions, or what happens when GitHub is unreachable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, args, returns, examples). Every sentence earns its place - the first paragraph states the purpose, the Args section explains the parameter, Returns describes output, and Examples show usage. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (version checking with network access) and the presence of an output schema (which handles return values), the description is quite complete. It covers purpose, parameter usage, and output format. The main gap is lack of behavioral details like error handling or performance characteristics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for its single parameter, but the description fully compensates by explaining what 'proxy_url' does (access GitHub through a proxy) and providing an example format. Since there's only one parameter and the description covers it completely, this exceeds the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('检查版本更新' - check version updates) and resources involved (TrendRadar and MCP Server). It distinguishes this tool from all sibling tools which focus on news analysis, data processing, notifications, and system operations rather than version checking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool (to compare local vs. remote versions and determine if updates are needed). However, it doesn't explicitly state when NOT to use it or mention alternatives among the sibling tools, which all serve different purposes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 of behavioral disclosure. It does well by explaining the return format (JSON with specific structure) and providing multiple examples. However, it doesn't mention important behavioral aspects like whether this is a read-only operation, potential rate limits, authentication requirements, or what happens with invalid date ranges. The examples help but don't fully compensate for the lack of 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.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, usage scenarios, args, returns, examples). It's appropriately sized for a tool with 6 parameters. While comprehensive, some sections could be more concise - the parameter explanations are thorough but slightly verbose. Every sentence adds value, and the information is front-loaded with the core purpose first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex comparison tool with 6 parameters and no annotations, the description provides good completeness. It covers purpose, usage scenarios, detailed parameter semantics, return format, and examples. The presence of an output schema means the description doesn't need to fully document return values. However, it could better address behavioral aspects like error conditions or performance characteristics given the complexity of the analysis.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Given 0% schema description coverage, the description provides excellent parameter documentation. It explains all 6 parameters in detail: period1/period2 formats (date ranges or preset values), topic as optional keyword, compare_type with three specific options and defaults, platforms as filter list, and top_n with default. The description adds substantial meaning beyond what the bare schema provides, fully compensating for the schema coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '时期对比分析 - 比较两个时间段的新闻数据' (Period comparison analysis - compare news data from two time periods). It specifies the verb 'compare' and the resource 'news data from two time periods', and distinguishes from siblings by focusing specifically on comparative analysis rather than single-period analysis like analyze_topic_trend or get_trending_topics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage scenarios under '使用场景' (Usage scenarios) with three specific examples: comparing weekly changes, analyzing topic heat differences, and examining platform activity periodic changes. However, it doesn't explicitly state when NOT to use this tool or name specific alternatives among the sibling tools for different types of analysis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/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 key behavioral traits: it reads from specific configuration files (config.yaml and .env), lists the 9 supported notification channels, and describes the JSON return format with channel status and configuration source. However, it doesn't mention potential errors, rate limits, or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded: it starts with the core purpose, then details configuration sources and supported channels, followed by return format and an example. Every sentence adds value without redundancy, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters) and the presence of an output schema, the description is mostly complete. It covers purpose, configuration sources, supported channels, and return format. However, it could benefit from more explicit usage context or error handling details, though the output schema likely handles return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so the schema fully documents the lack of inputs. The description appropriately doesn't add parameter information, maintaining focus on the tool's behavior and output. This aligns with the baseline for zero parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('获取' - get/retrieve) and resources ('所有已配置的通知渠道及其状态' - all configured notification channels and their status). It distinguishes from siblings by focusing on notification channels specifically, unlike other tools that handle news, data analysis, or system status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by mentioning it detects configurations in config.yaml and .env files, but it doesn't explicitly state when to use this tool versus alternatives like 'get_current_config' or 'get_system_status'. No exclusions or clear alternatives are provided, leaving usage context somewhat vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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 of behavioral disclosure. It does well by explaining the two extraction modes (keywords from config file vs auto-extraction from news titles) and the time modes (daily cumulative vs current batch). However, it doesn't mention potential limitations like rate limits, data freshness, or whether this is a read-only operation (though implied by 'get'), leaving some behavioral aspects unspecified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns, Examples) and front-loaded purpose statement. Every sentence earns its place by providing essential information. It could be slightly more concise by integrating some parameter details more tightly, but overall it's efficiently organized with minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, two operational modes), no annotations, but with an output schema (mentioned as JSON format), the description is quite complete. It covers purpose, all parameters with semantics, return format, and usage examples. The main gap is lack of explicit behavioral constraints (like permissions or limits) that annotations would normally provide, but the output schema reduces the need to describe return values in detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage (schema only shows parameter names and types without descriptions), the description fully compensates by providing detailed semantic explanations for all three parameters: top_n (returns TOP N topics with default), mode (explains both daily and current options with meanings), and extract_mode (details both keywords and auto_extract approaches with implementation specifics). This adds substantial value beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('获取热点话题统计' - get trending topics statistics) and distinguishes it from siblings like analyze_topic_trend or aggregate_news by focusing on frequency-based statistical retrieval rather than analysis or aggregation. It specifies the resource (trending topics) and the statistical nature of the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use different modes (daily vs current statistics, keywords vs auto_extract) through examples and parameter explanations. However, it doesn't explicitly state when NOT to use this tool versus alternatives like analyze_topic_trend or when to prefer sibling tools for different analytical needs, missing explicit exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses some behavioral traits: supports multi-day queries, data is stored separately from trending news, shows in time stream format, and has defaults/limits for parameters. However, it doesn't mention rate limits, authentication needs, or what happens when limits are exceeded. The description doesn't contradict any annotations since none exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections: purpose statement, context explanation, Args section with parameter details, Returns section, and Examples. It's appropriately sized with no redundant information. The only minor issue is that the Chinese text might be slightly less accessible to some agents, but the structure is excellent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters with 0% schema coverage but an output schema exists, the description provides complete context. It explains the tool's purpose, distinguishes it from siblings, documents all parameters thoroughly, specifies the return format, and provides usage examples. The existence of an output schema means the description doesn't need to explain return values in detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by providing detailed parameter semantics. It explains all 4 parameters with clear meanings, defaults, constraints, and examples: feeds (RSS source IDs, optional), days (recent N days, default 1, max 30), limit (result count, default 50, max 500), include_summary (whether to include article summaries to save tokens).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '获取最新的 RSS 订阅数据' (get latest RSS subscription data). It specifies the resource (RSS data), distinguishes it from sibling tools by mentioning it's separate from '热榜新闻' (trending news) and shows content in time stream format, making it distinct from tools like get_latest_news or search_rss.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool: for getting latest content from specific RSS sources in a time stream format. It distinguishes from sibling tools by mentioning RSS data is stored separately from trending news. However, it doesn't explicitly state when NOT to use it or name specific alternatives among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses key behavioral traits: it's a search operation (implied read-only), mentions default values and constraints (days max 30, limit default 50), and specifies the return format (JSON list). However, it doesn't mention rate limits, authentication needs, 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized. It starts with a clear purpose statement, then provides detailed parameter explanations in a bullet-like format, followed by return information and practical examples. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (5 parameters, search operation) and the presence of an output schema (which handles return values), the description is nearly complete. It covers purpose, parameters, and basic behavior well. The main gap is lack of explicit mention about whether this is a read-only operation or if it has side effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by explaining all 5 parameters in detail. It clarifies that 'keyword' is required, explains the meaning and default behavior of 'feeds', specifies constraints for 'days' (default 7, max 30), 'limit' (default 50), and the boolean nature of 'include_summary' (default False).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches RSS data for articles containing specified keywords, using specific verbs ('搜索' meaning search) and resources ('RSS 数据' meaning RSS data). It distinguishes from sibling tools like 'search_news' by specifying it searches RSS subscription data rather than general news.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool (searching RSS subscription data with keywords) and mentions the default behavior when 'feeds' parameter is unspecified. However, it doesn't explicitly contrast with alternatives like 'search_news' or specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does well by explaining what the tool does (pulls data), what it returns (JSON with specific fields), configuration requirements (config.yaml or environment variables), and example usage patterns. It doesn't mention rate limits, authentication details beyond env vars, or error handling specifics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Args, Returns, Examples, Note) and front-loaded the core purpose. While comprehensive, some information could be more concise - the configuration details are quite detailed. Every sentence adds value, but the overall length is substantial for a single-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (data synchronization with configuration requirements), no annotations, and the presence of an output schema, the description is remarkably complete. It covers purpose, usage context, parameter details, return format, examples, and configuration prerequisites - providing everything needed to understand and use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and only 1 parameter, the description fully compensates by providing comprehensive parameter semantics. It explains the 'days' parameter with its default value (7), meaning (pull data from recent N days), and specific examples of values (0, 7, 30) with their interpretations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('从远程存储拉取数据到本地' - pull data from remote storage to local) and resources (data from cloud storage like Cloudflare R2). It distinguishes itself from sibling tools by focusing on data synchronization rather than analysis, search, or notification functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context about when to use this tool ('用于 MCP Server 等场景' - for MCP Server scenarios where crawlers store data in remote cloud storage and MCP Server pulls it locally for analysis). However, it doesn't explicitly state when NOT to use it or mention specific alternatives among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behaviors: it mentions title deduplication ('会对标题去重'), token-saving considerations ('节省token'), and default values for parameters. It also hints at output format ('JSON格式的分析结果'). However, it lacks details on rate limits, authentication needs, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose, followed by usage advice, parameter details, return information, and an example. Every sentence adds value without redundancy, and the bullet-point format for parameters enhances readability while maintaining brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (6 parameters, no annotations, but has output schema), the description is highly complete. It covers purpose, usage guidance, parameter semantics, and output format. The presence of an output schema means the description doesn't need to detail return values, and it adequately addresses the gaps left by the lack of annotations and low schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must fully compensate. It does so excellently by explaining all 6 parameters in detail: purpose, format, defaults, constraints (e.g., '最大100'), and practical implications (e.g., '节省token'). This adds significant meaning beyond the bare schema, making parameter usage clear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '分析新闻的情感倾向和热度趋势' (analyze sentiment and heat trends of news). It specifies the resource (news) and the specific analysis performed (sentiment and heat trends), distinguishing it from siblings like 'analyze_topic_trend' or 'get_trending_topics' which might focus on different aspects of news analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage with the suggestion to call 'resolve_date_range' for natural language dates, which is helpful guidance. However, it does not explicitly state when to use this tool versus alternatives like 'analyze_topic_trend' or 'aggregate_news', leaving some ambiguity about sibling differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and does well. It discloses key behavioral traits: supports both current and historical data, returns results sorted by similarity, includes token-saving option (include_url defaulting to False), and specifies default values for optional parameters. It doesn't mention rate limits, authentication needs, or potential errors, but covers core operational behavior adequately for a read-only 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured and front-loaded: purpose statement first, followed by organized parameter explanations, return format, and examples. Every sentence adds value—no redundancy or fluff. The bilingual presentation (Chinese with English parameter names) is consistent and doesn't hinder clarity. It's appropriately sized for a tool with multiple parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters, 0% schema coverage, no annotations, but with output schema present, the description is complete. It covers purpose, all parameter semantics, return format (JSON list sorted by similarity), and provides examples. The output schema handles return value details, so the description doesn't need to duplicate that. It gives the agent everything needed to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Given 0% schema description coverage, the description fully compensates by explaining all 5 parameters in detail. It clarifies: reference_title as the target news title (full or partial), date_range options (including presets and custom range format), threshold as similarity score with default and range, limit as result count with default, and include_url as boolean for token conservation. This adds substantial meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '查找与指定新闻标题相关的其他新闻' (find news related to a specified news title). It specifies the verb ('查找' - find) and resource ('相关新闻' - related news), and distinguishes it from siblings like 'search_news' (which likely searches by keywords) or 'get_latest_news' (which retrieves latest news without relation). The inclusion of '支持当天和历史数据' (supports current day and historical data) further clarifies scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for usage: it's for finding related news based on a reference title, with support for date filtering. However, it doesn't explicitly state when NOT to use this tool or name specific alternatives among siblings (e.g., 'search_news' for keyword-based searches or 'get_news_by_date' for date-based retrieval without relation). The examples help illustrate usage but lack explicit exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and adds valuable behavioral context: it specifies default values (limit default 50, max 1000), token-saving behavior with include_url default, and data display recommendations. It does not mention rate limits, authentication needs, or destructive effects, but provides practical usage guidance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and well-structured: it starts with the core purpose, then details parameters in a clear Args/Returns format, and adds practical usage notes. Every sentence earns its place with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, no annotations, but has output schema), the description is complete: it covers purpose, all parameters with semantics and defaults, return format, and even adds data display recommendations. The output schema existence means it needn't explain return values in detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must compensate fully. It does so excellently: it explains all three parameters with clear semantics (platforms as ID lists with examples, limit with default and max, include_url with default and purpose), going well beyond what the bare schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('获取最新一批爬取的新闻数据') and resource ('新闻数据'), distinguishing it from siblings like 'get_news_by_date' (date-based) or 'search_news' (search-based). It explicitly mentions '快速了解当前热点' which highlights its use case for current trends.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('获取最新一批爬取的新闻数据,快速了解当前热点'), but does not explicitly mention when not to use it or name specific alternatives among the many siblings. It implies usage for recent news without filtering, but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behaviors: rate limiting (5-second intervals between articles), error handling (single failures don't affect others), execution time (25-30 seconds for 5 articles), and constraints (max 5 articles, excess skipped). It doesn't mention authentication needs or data retention policies, but covers most operational aspects well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized. It uses clear sections (description, typical workflow, args, returns, examples, notes) with bullet points for readability. Every sentence adds value: the opening defines purpose and constraints, the workflow provides context, parameter explanations are clear, and notes cover important behavioral details. No wasted text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (batch operations with rate limiting), no annotations, and the presence of an output schema (which handles return values), the description is remarkably complete. It covers purpose, workflow integration, parameters, constraints, timing, error handling, and provides examples. The output schema existence means the description doesn't need to detail return format, allowing focus on operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description must compensate for the lack of parameter documentation in the schema. It provides good semantic context for both parameters: 'urls' is described as a required list of article links with a 5-item maximum, and 'timeout' is explained as the request timeout per article with a default of 30 seconds. The description adds meaningful context beyond what the bare schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '批量读取多篇文章内容' (batch read multiple article contents) with specific constraints (max 5 articles, 5-second intervals). It explicitly distinguishes from sibling tools like 'read_article' (singular) and 'search_news' (searching vs. reading content). The description provides a specific verb ('读取' - read) and resource ('文章内容' - article content) with clear scope limitations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidelines in the '典型使用流程' (typical usage flow) section, detailing a three-step process: 1) use search_news to get URLs, 2) use this tool to batch read, 3) AI analysis. It clearly positions this tool as part of a workflow with specific prerequisites and distinguishes it from alternatives like 'read_article' for single articles.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively explains key behaviors: the tool runs server-side for consistent time calculations, handles various natural language expressions, returns JSON with specific fields, and the output can be directly used in other tools' date_range parameters. It doesn't mention error handling or edge cases, but covers the core operational behavior well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (purpose, why needed, usage workflow, args, returns, examples) but is somewhat lengthy. Every section adds value, though some redundancy exists between the workflow explanation and examples. The information is front-loaded with the core purpose first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (natural language parsing with server-side time calculation), no annotations, and the presence of an output schema, the description is remarkably complete. It explains the tool's purpose, workflow, parameter details, return format with examples, and integration with other tools. The output schema existence means the description doesn't need to exhaustively document return values, which it handles appropriately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage and only one parameter, the description fully compensates by providing extensive parameter semantics. It explains that 'expression' accepts natural language date expressions, lists multiple supported formats with examples (single days, weeks, months, recent N days, dynamic ranges), and shows both Chinese and English examples. This goes far beyond what the bare schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: '将自然语言日期表达式解析为标准日期范围' (parse natural language date expressions into standard date ranges). It specifies the exact verb ('解析' - parse) and resource ('自然语言日期表达式' - natural language date expressions), and distinguishes itself from siblings by focusing on date parsing rather than analysis, search, or other operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidelines: it recommends prioritizing this tool ('推荐优先调用') and outlines a specific workflow where AI should call this tool first to get consistent date ranges before using other tools like analyze_sentiment or search_news. It clearly states when to use it (for natural language date expressions) and provides concrete examples of the workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the tool's behavior: it returns formatting strategies for notification channels, supports an optional parameter to filter by channel, and provides detailed examples of channel-specific format differences. It doesn't mention rate limits, authentication needs, or error conditions, but covers the core operational behavior well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and appropriately sized. It starts with the core purpose, immediately provides usage context, then details channel differences in a clear bulleted format, followed by parameter and return explanations with concrete examples. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (single optional parameter), no annotations, but with an output schema present, the description is complete. It explains what the tool does, when to use it, parameter behavior, return format, and provides practical examples. The output schema will handle return value details, so the description appropriately focuses on operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, so the description must fully compensate. It does this excellently: it explains that the 'channel' parameter is optional, specifies what happens when omitted (returns all channel strategies), lists all possible values with clear examples, and provides usage examples. This adds comprehensive meaning beyond the basic schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: '获取通知渠道的格式化策略指南' (Get notification channel formatting policy guide). It specifies the exact resource (notification channels) and action (get formatting strategies), clearly distinguishing it from sibling tools like send_notification or get_notification_channels by focusing on format requirements rather than sending messages or listing channels.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool: '在调用 send_notification 之前使用此工具' (Use this tool before calling send_notification). It clearly positions this as a preparatory step for understanding format requirements, distinguishing it from the actual notification-sending sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key traits: the tool uses Jina AI Reader for conversion, removes noise content, has rate limits (100 RPM, 5-second intervals), and may fail on restricted pages. It also specifies the return format (JSON with Markdown). However, it lacks details on error handling or timeout behavior beyond the default.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and well-structured, with a clear purpose statement upfront, followed by usage guidelines, workflow examples, parameter details, and notes. Every section adds value without redundancy, and it uses bullet points and formatting (like **典型使用流程**) for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (web scraping with rate limits), no annotations, and an output schema (which handles return values), the description is complete. It covers purpose, usage, parameters, behavioral traits (like rate limits and limitations), and integration with sibling tools, leaving no significant gaps for an AI agent to understand and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate fully. It adds significant meaning beyond the bare schema: it explains that 'url' is required and must start with http:// or https://, and that 'timeout' has a default of 30 seconds and a maximum of 60 seconds. This provides clear semantic context that the schema alone does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with specific verbs ('读取' - read, '返回' - return) and resources ('文章内容' - article content, 'Markdown 格式' - Markdown format). It distinguishes from siblings by focusing on reading individual articles rather than searching, aggregating, or analyzing news, which are handled by other tools like search_news or analyze_data_insights.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool versus alternatives, including a '典型使用流程' (typical workflow) that recommends using search_news first to get URLs and then read_article for content extraction. It also lists suitable scenarios ('适合用于' - suitable for) like reading news content or analyzing articles, and notes exclusions for paywalled or login-required pages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does well by detailing the automatic format adaptation across multiple channels (e.g., '飞书:Markdown 卡片消息', '钉钉:Markdown(自动降级标题为 ###)'), which is crucial behavioral context. However, it doesn't mention potential rate limits, authentication requirements, or error handling for failed sends, leaving some gaps 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured: it starts with the core purpose, immediately details format adaptation across channels (critical context), provides a usage tip with alternative tool reference, then clearly documents parameters and returns with examples. Every sentence adds value, and the information is front-loaded with the most important behavioral details first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (multi-channel sending with format adaptation), no annotations, 0% schema coverage, but with an output schema (Returns JSON格式的发送结果), the description is remarkably complete. It covers purpose, behavioral traits (format adaptation), parameter semantics, usage guidance with alternatives, and examples. The output schema handles return values, so the description appropriately focuses on input and behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage (schema provides no descriptions for parameters), the description fully compensates by explaining all three parameters: 'message: markdown 格式的消息内容(必需)' clarifies format and requirement; 'title: 消息标题,默认 "TrendRadar 通知"' specifies default value; 'channels: 指定发送的渠道列表...' lists all possible values and behavior when unspecified. This adds significant meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('向已配置的通知渠道发送消息' - send messages to configured notification channels) and resource (notification channels). It distinguishes itself from sibling tools like get_notification_channels (which retrieves channels) and get_channel_format_guide (which provides formatting guidance) by focusing on the sending operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool versus alternatives: it mentions '发送前可调用 get_channel_format_guide 获取目标渠道的详细格式化策略' (before sending, you can call get_channel_format_guide to get detailed formatting strategies for target channels), clearly indicating an alternative tool for pre-send formatting checks. It also specifies that channels can be specified or left to default to all configured channels.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/LeePresident/TrendRadar'
If you have feedback or need assistance with the MCP directory API, please join our Discord server