get_terms
Machine-readable Terms of Service. FREE. Call before any paid tool, then confirm_terms.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Machine-readable Terms of Service. FREE. Call before any paid tool, then confirm_terms.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable context: the tool is free, returns machine-readable data, and is a mandatory precursor. These are behavioral traits not visible in annotations, though it doesn't detail return format 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, delivering all essential information in two short sentences without any wasted words. Key facts are front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter read-only tool with annotations covering safety, the description fully covers purpose, usage context, and the next step. No gaps remain for an agent to select and invoke it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the description doesn't need to explain any. The baseline of 4 is appropriate because there is nothing to clarify beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as providing machine-readable Terms of Service and implies the retrieval action. It distinguishes itself from siblings by explicitly positioning it as a prerequisite step before paid tools, with confirm_terms as a follow-up.
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?
Explicitly instructs the agent to call this tool before any paid tool and then use confirm_terms. This provides clear when-to-use guidance and a sequence, leaving no ambiguity about its role.
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 resource and action (e.g., contract read vs. contract call vs. contract analyze; hcs monitor vs. hcs query vs. hcs understand). Even within closely related groups, descriptions clearly differentiate the specific purpose, so an agent is unlikely to select the wrong tool.
Most tools follow a domain_action pattern (e.g., contract_analyze, token_monitor, hcs_verify_record), but some are verb_noun (get_terms, confirm_terms) and a few are noun_noun (account_info, token_price, fixatum_score). While not perfectly uniform, the prefixes make the intended domain clear and the overall structure is readable.
With 25 tools, the server is on the heavy end of the typical MCP scope. While each tool serves a specific niche across multiple Hedera domains (contracts, HCS, tokens, identity, governance, Fixatum), the sheer number could increase selection complexity, but it remains within the borderline range rather than being excessive.
The server covers a broad range of read/analyze operations across major Hedera areas, plus essential write/verification capabilities (hcs_write_record, hcs_verify_record) and an onboarding flow (get_terms, confirm_terms). Minor gaps exist, such as no token transfer history or unregister/update for Fixatum, but the core analytical purpose is well covered.