List Malaysian tax authority releases
list_tax_authority_releasesDiscover supported years, forms, versions, statuses, capabilities, and limitations before selecting a release.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| audit | No |
list_tax_authority_releasesDiscover supported years, forms, versions, statuses, capabilities, and limitations before selecting a release.
| Name | Required | Description | Default |
|---|---|---|---|
| audit | No |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds value by specifying the kinds of information the tool reveals (years, forms, versions, statuses, capabilities, limitations), which goes beyond the safety signals and helps the agent understand what to expect from the output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that packs all key details without fluff. It starts with the primary action ('Discover supported...') and immediately communicates the tool's purpose and timing. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description offers a useful summary of what the tool provides, but with no output schema, it does not fully explain the return structure or how the discovered information is organized. It also lacks details about pagination, result size, or how to use the results with sibling tools like get_tax_authority_release. Adequate for a simple list/discovery tool, but gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has only one optional 'audit' object with properties like runId and sequence, but no descriptions. Schema description coverage is 0%, and the tool description does not mention or explain the audit parameter at all. Since the parameter is optional, this is somewhat mitigated, but the agent receives no semantic guidance on whether or how to populate it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: to discover supported years, forms, versions, statuses, capabilities, and limitations of Malaysian tax authority releases. It uses a specific verb ('Discover') and identifies the resource. While it does not explicitly name sibling tools, the phrase 'before selecting a release' hints at its role as a precursor to selection, distinguishing it from retrieval tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes 'before selecting a release,' which gives clear context on when to use this tool—as a preparatory step. It does not mention alternatives or exclusions, but the timing guidance is explicit enough for an agent to understand its placement relative to other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Each tool targets a distinct action: checking readiness, fetching release details, listing releases, preparing a draft, and searching rules. No two tools overlap in purpose, and the form-specific context (Form B vs Form BE) further differentiates them.
All tool names follow a consistent lowercase verb_noun pattern (assess_, get_, list_, prepare_, search_). The style is uniform and predictable, making it easy to infer the action from the name.
With 5 tools, the server is well-scoped for its purpose. It covers discovery, search, readiness assessment, and draft preparation without being bloated or too sparse.
The tool set covers the main workflows for Form BE and Form B preparation, but there is a slight asymmetry: readiness is only for Form B, and draft preparation only for Form BE. Submission and data storage are intentionally excluded, so the surface is coherent but not fully symmetric.