Netfluid
Server Details
AI agent banking - fiat and crypto wallet management. Send payments, buy/sell crypto, fund via banks/PayShap/cards, withdraw globally. Virtual SEPA/ACH accounts for fiat on-ramps.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 3.6/5 across 117 of 142 tools scored. Lowest: 1.3/5.
Several tools have overlapping or identical purposes (e.g., netfluid__session and netfluid__session_2_token, netfluid__email and netfluid__send_email). With 142 tools spanning wallet, crypto, funding, and paywall features, distinguishing between similar account/crypto/balance tools requires careful reading of descriptions.
Most tools follow a snake_case pattern with a netfluid__ or paywall__ prefix, but there are inconsistencies like netfluid__session_2_token, netfluid__netfluid_voucher_check, and single-noun tools (netfluid__skill, netfluid__fees). The two namespaces use slightly different conventions, making the overall set feel less uniform.
At 142 tools, this is an extremely large surface for any MCP server. Even for a comprehensive financial platform, this exceeds practical usability and likely includes duplicates or overly granular operations.
The tool set covers a wide range of operations including account management, crypto transactions, funding methods, withdrawals, and paywall subscriptions. However, the presence of duplicate tools suggests redundancy rather than a clean, minimal complete surface, and some workflows may require chaining many tools.
Available Tools
142 toolsnetfluid__access_pauseAInspect
Temporarily blocks access to the wallet
Temporarily blocks access to the wallet for all systems. This end point requires an api_key with administrator privileges. @param api_key: The api key with administrator privileges @param wallet_fk: The wallet_fk to pause
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the authorization need (admin api_key) and the temporal nature of the block. It does not elaborate on side effects such as active session invalidation or the concrete reversal process, leaving some behavioral ambiguity.
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 repeats 'Temporarily blocks access to the wallet' in the first two sentences, wasting words. The param/return documentation is structured but the duplication makes it less concise than it could be.
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 two-parameter tool with an output schema, the description covers purpose, auth requirement, and temporal effect. It could add more context about side effects, but the essentials are present and the output schema likely fills in return details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must add meaning. It explains api_key as requiring admin privileges and wallet_fk as the identifier to pause, which is helpful. The wallet_fk explanation is somewhat circular but does clarify its role as the target, and the admin requirement is explicit.
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 specific action (blocks access) and resource (the wallet), with scope ('for all systems') and temporality. It does not explicitly name sibling alternatives but is distinct enough from access_resume and account_pause by the wallet-specific focus.
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 intended use is implied: to temporarily block wallet access for all systems. However, there is no explicit guidance on when not to use it, nor are alternatives like access_resume or account_pause mentioned. The admin privilege requirement is stated, but comparison with related tools is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__access_platform_assignAInspect
Assigns this wallet_fk to a channel (discord, telegram, whatsapp) user id.
Assigns this wallet_fk to a channel (discord, telegram, whatsapp) user id. Where possible prompt the customer to do this, as it makes getting a token much easier in the future @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| user_id | Yes | ||
| platform | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden. It discloses the action and a benefit (easier future token acquisition), but does not mention whether the assignment overwrites existing links, reversibility, or permission requirements. The response is only described as 'a json object', leaving side effects and failure modes unclear.
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 contains an exact duplicate sentence, adding no value and wasting space. The structure with @param and @return is helpful, but the duplication is a clear flaw that could easily be fixed.
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 tool has an output schema, so return details are covered. However, with 5 required parameters and no annotations, the description is incomplete: it fails to explicitly document user_id and platform, and provides limited behavioral context. It is adequate but leaves an agent to infer key details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description documents api_key, token, and wallet_fk with their sources, but omits user_id and platform which are also required. The overall sentence implies what user_id and platform refer to, but doesn't specify exact expected values or formats. Schema coverage is 0%, so the description only partially compensates for the missing parameter documentation.
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 specific action: assigning a wallet_fk to a channel (discord, telegram, whatsapp) user id. This distinguishes it from sibling tools like login or pause, and the verb+resource is explicit and unambiguous.
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 gives a clear usage context: prompt the customer to perform this assignment because it makes future token retrieval easier. It does not explicitly mention when not to use it or alternatives, but the context is clear enough for an agent to decide when to call it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__access_platform_loginAInspect
Retrieves a token based on a wallet_fk and 5-digit (numeric) PIN. This is a shortcut to the token.
Retrieves a token based on a wallet_fk and 5-digit (numeric) PIN Only 1 attempt is allowed, get the PIN wrong and you have to send the user back to the website to get a session key This works on any wallet_fk and PIN combination, so if you have a wallet_fk, but no token, it's a shortcut to the token. @param wallet_fk: The wallet_fk @param pin: The 5-digit numerical pin associated with this wallet_fk
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses the critical single-attempt limitation and the consequence of a wrong PIN, plus the fact that it works on any wallet_fk/PIN combination. It could add side-effect details (e.g., whether the token is invalidated), but the key risk is covered.
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 largely concise and front-loaded, with the primary action in the first line. However, the first sentence is duplicated verbatim (repeated again in the second paragraph), which wastes a sentence. Overall structure with warnings and params is clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description appropriately focuses on usage and constraints. It covers the tool's purpose, the single-attempt rule, and the 'shortcut' context. It does not explicitly state prerequisites (e.g., that the user must have a PIN set via the website), but this is implied by the website reference in the warning.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must compensate. It adds that pin is 5-digit numeric, which is useful. However, wallet_fk is described only as 'The wallet_fk', providing no additional meaning, and there is no guidance on how to obtain a valid wallet_fk.
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 retrieves a token using wallet_fk and a 5-digit PIN. It explicitly identifies itself as a shortcut to the token and notes it works on any wallet_fk/PIN combination, which distinguishes it from sibling tools like access_recover or session_2_token.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: use this when you have a wallet_fk but no token. It also warns that only 1 attempt is allowed and that a wrong PIN forces sending the user back to the website, which guides behavior. It does not explicitly name alternative tools or exclusion criteria, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__access_platform_wallet_listAInspect
Retrieves a list of wallets associated with the channel (discord, telegram or whatsapp) and user id
Retrieves a list of wallets associated with the channel (discord, telegram or whatsapp) user id, once you have a wallet_fk you can get a token. This only works if the wallet_fk has been previously assigned to this channel and user id. @param user_id: The chat, channel user-id specific to this chat customer @param platform: The channel platform: discord, telegram, whatsapp
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| user_id | Yes | ||
| platform | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden. It discloses an important precondition (previous wallet_fk assignment) and hints at token retrieval, but does not explicitly state whether it is read-only, nor does it mention error conditions or permissions.
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 first two sentences are redundant, repeating nearly the same retrieval statement. The description could be condensed to one sentence, and the @param/@return structure is clear but the duplication reduces conciseness.
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 covers purpose, parameters, preconditions, and return type. However, it lacks details about the returned list contents, pagination, or error handling. Given the output schema exists, the return is minimally handled, but more differentiation from similar tools would improve completeness.
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 provides no property descriptions, but the @param lines add meaning: user_id is the chat-specific customer ID and platform is limited to discord, telegram, or whatsapp. This compensates well for the sparse 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 states the tool retrieves a list of wallets associated with a specific channel (discord, telegram, whatsapp) and user id. The verb 'Retrieves' and resource 'list of wallets' are specific, and the channel+user scope distinguishes it from sibling wallet list 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 mentions a precondition ('only works if the wallet_fk has been previously assigned') and a downstream use (get a token), which implies when it is applicable. However, it does not explicitly contrast with alternative tools or state 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.
netfluid__access_recoverBInspect
Recovers the Netfluid wallet's private key from a set of 24 keywords
Recovers the Netfluid wallet's private key from a set of 24 keywords. Returns an object with the wallet owner's key, first_name, last_name, mobile and email. It's preferable that the person trying to recover @param api_key: The api key allocated to your application @param words: A set of 24 recovery words, space delimited
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| words | Yes | ||
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure, but it only states that the tool recovers a private key and returns certain fields. It fails to mention side effects, required permissions, security implications, or whether the operation is reversible or destructive. The truncated sentence further reduces transparency about the recovery process.
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 repeats the opening sentence verbatim, wasting space, and includes an incomplete sentence. The doc comments are appended without polished formatting, though they are concise. Overall, the structure is functional but contains clear redundancies and truncation that detract from clarity.
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 tool's purpose and parameters are covered, and the return object is described. However, the description lacks usage guidance, security context, and any mention of prerequisites, especially given the sensitivity of recovering a private key. The incomplete 'It's preferable...' sentence leaves a noticeable gap. For a simple 2-parameter tool, this is adequate but not complete.
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 @param comments add meaning beyond the schema: api_key is described as 'The api key allocated to your application' and words as 'A set of 24 recovery words, space delimited'. This provides important context about format and constraints, especially since the schema has no property descriptions. The description effectively compensates for the 0% schema coverage.
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 action: 'Recovers the Netfluid wallet's private key from a set of 24 keywords.' It also specifies the return object with fields, making the purpose unambiguous and distinguishing it from sibling tools like netfluid__crypto_from_key or netfluid__wallet_mnemonic. The verb 'Recovers' and resource 'private key' are specific and actionable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. The incomplete sentence 'It's preferable that the person trying to recover' hints at a prerequisite but is truncated and gives no actionable direction. There are no exclusions, no mention of alternatives, and no clear context for when this tool should be selected.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__access_resumeCInspect
Temporarily blocks access to the wallet
Resumes access to a paused wallet. This end point requires an api_key with administrator privileges. @param api_key: The api key with administrator privileges @param wallet_fk: The wallet_fk to resume
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It incorrectly claims to block access before correctly stating it resumes access, creating confusion about the actual behavior. It mentions the admin privilege requirement but does not disclose side effects, reversibility, or return value details beyond a generic JSON object.
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 not concise due to the contradictory and unnecessary first line 'Temporarily blocks access to the wallet', which wastes space and misleads. The @param and @return structure is somewhat redundant with the schema and not well integrated.
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?
Despite having an output schema, the description lacks critical context: it doesn't resolve the contradiction between blocking and resuming, doesn't clarify the exact effect on the wallet, and doesn't mention any prerequisites beyond admin privileges. This is insufficient for a tool with no annotation support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds some value to the parameters by stating that api_key must have administrator privileges and that wallet_fk refers to the wallet to resume. However, with 0% schema description coverage, it only provides minimal clarification and does not explain constraints, formats, or additional context 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 states 'Resumes access to a paused wallet' which is clear, but the opening line 'Temporarily blocks access to the wallet' directly contradicts the intended action and the tool name. This makes the purpose confusing and potentially misleading for an agent.
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 clearly implies when to use the tool (when a wallet is paused and needs to be resumed) and specifies a prerequisite (api_key with administrator privileges). However, it doesn't explicitly exclude other use cases or compare with sibling tools like access_pause or access_recover.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__access_wallet_pin_changeAInspect
Changes the wallet PIN, must be 5 digits, e.g. 12345
Changes the wallet PIN, must be 5 digits, e.g. 12345 @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param new_pin: The new PIN, but be 5 numeric digits
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| new_pin | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavior. It only states the action and PIN format, but omits critical mutation details such as permission requirements, side effects (e.g., invalidating sessions), error behavior, or reversibility.
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 opening sentence is duplicated verbatim, which is unnecessary waste. Parameter documentation is useful, but the repetition and a typo ('but be' instead of 'must be') reduce the overall conciseness and polish.
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 covers the purpose, parameters, and return type, but with empty annotations and no output schema details it lacks context on error handling, security requirements, or behavioral outcomes. It is minimally adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does this effectively by documenting all four parameters, including their source (api_key, token, wallet_fk) and the format for new_pin, adding meaning beyond the raw 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?
Description states a specific action ('Changes the wallet PIN') with a clear constraint ('must be 5 digits'), making the purpose unambiguous. This clearly distinguishes it from other access-related tools like pause or login.
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 gives useful context by noting that token and wallet_fk come from /access/login, implying a prerequisite. However, it does not explicitly state when to use this tool versus alternatives, nor provide exclusions or alternative tool recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__accountBInspect
Returns public information associated with an account_fk: address, commodity, currency and type @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the burden. It states 'public information' and '@return: a json object', giving some safety context. However, it does not disclose whether authentication is required, potential errors, or rate limits, leaving gaps in behavioral understanding.
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 sentence, front-loaded with the action, and includes the return type. Every word is meaningful and there is no redundancy or filler.
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 tool is simple with one parameter and an output schema, so the description covers the core purpose. However, it lacks usage context and parameter details, and despite the output schema existing, the description does not leverage or summarize it, leaving the overall completeness moderate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 0%, and the description only repeats the parameter name 'account_fk' without explaining its meaning, format, or source. For a single critical parameter, more elaboration is needed for an agent to know 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 that the tool returns public account information (address, commodity, currency, type) for a given account_fk. It is specific and not a tautology, but does not explicitly differentiate from the similar sibling tool netfluid__account_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives like netfluid__account_info, netfluid__account_address, or others. The description only states what it does, not when it should be preferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_addressAInspect
Validates and verifies the existence of a Netfluid account address (not blockchain address) @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| account_address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It implies a read-only validation operation but does not mention error handling, side effects, authentication requirements, or response structure beyond a minimal '@return' tag.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with the core action front-loaded and the parenthetical clarification adding value without repetition. Every word contributes to understanding the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple validation tool with one parameter, the description covers the essential purpose and parameter disambiguation. However, without annotations, it lacks details on authentication, error behavior, and the exact response format, leaving some gaps for the agent to handle.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no description for the single 'account_address' parameter. The description adds the critical clarification that it is a Netfluid account address and not a blockchain address, which is useful. However, it does not provide format, length, or examples, leaving some ambiguity.
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 uses specific verbs 'validates and verifies' with a clear resource 'Netfluid account address' and explicitly distinguishes it from a blockchain address, making the tool's purpose unambiguous and differentiating it from crypto-related sibling 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?
No explicit usage context or alternatives are provided. The purpose is clear enough to infer when to use it, but it does not state when not to use it or mention alternative validation tools, leaving the agent to rely on the name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_aliasAInspect
Sets a friendly name/alias on an account. Confirm (yes/no) before executing
Sets a friendly name/alias on an account_fk. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) @param alias: The alias or friendly name, try and use unique names for each account in the wallet
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| alias | Yes | ||
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a mutation ('Sets') and that confirmation is required before execution. It also provides important constraints (account_fk cannot be 0, alias should be unique). However, with no annotations, the description still omits critical behavioral details such as whether an existing alias is overwritten, if changes are reversible, or what errors might occur, limiting transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat repetitive: the first line 'Sets a friendly name/alias on an account' is nearly duplicated in the second line 'Sets a friendly name/alias on an account_fk.' The @param blocks are useful but could be better integrated. The redundancy makes it less concise than it could be.
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 covers all four parameters and includes a return note (`@return: a json object`), which is sufficient given the presence of an output schema. However, it lacks details on side effects (e.g., overwriting behavior), error conditions, or valid alias constraints, leaving the tool not fully specified for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides rich parameter explanations beyond the schema: api_key is the application key, token is from /access/login, account_fk is explicitly noted as a database ID not an address and cannot be 0, and alias encourages uniqueness. Since schema description coverage is 0%, this detailed guidance fully compensates and adds meaningful context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb and resource: 'Sets a friendly name/alias on an account.' This unambiguously identifies the purpose and distinguishes it from sibling tools like account_address or account_info, which handle different account attributes.
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 implies when to use the tool (when you need to set a friendly alias on an account) and includes a procedural note to confirm before executing. However, it does not explicitly discuss alternatives or when not to use this tool, so guidance is present but not thorough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_buyAInspect
Purchases a digital asset from the account's FIAT balance. Confirm (yes/no) before executing
Purchases a digital asset from the account's FIAT balance @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to buy @param digital_asset_fk: The digital_asset_fk to buy
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| digital_asset_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
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 a confirmation requirement before execution, clarifies that account_fk is a database ID not an address and may not be 0, and notes that it returns a JSON object. These are meaningful behavioral details beyond the schema, though it does not elaborate on side effects like balance deduction or failure conditions.
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 main description 'Purchases a digital asset from the account's FIAT balance' is repeated verbatim twice, and the confirmation note is awkwardly embedded in the first sentence. The @param block is standard but the redundancy wastes space and reduces clarity.
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 financial mutation with no annotations, the description provides the core action and confirmation requirement but omits prerequisites (e.g., sufficient FIAT balance), error/edge cases, and fee implications. The output schema exists, so return details are not needed, but the overall operational context is thin.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does document all four parameters, including a valuable clarification for account_fk (database ID, not address, cannot be 0). However, descriptions are brief and lack specifics such as where to obtain digital_asset_fk or the format of api_key. The compensation is partial.
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 'Purchases a digital asset from the account's FIAT balance' with a specific verb and resource, and it is distinguishable from sibling tools like account_sell, account_swap, and account_buy_telco. The purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for the tool's intended use (buying digital assets with fiat) and includes an explicit procedural instruction 'Confirm (yes/no) before executing'. However, it does not mention alternatives or when not to use this tool, making it contextually clear but lacking exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_buy_telcoAInspect
Purchases airtime by converting currency to minutes and seconds. Confirm (yes/no) before executing
Purchases airtime by converting currency to minutes and seconds. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to deduct the amount @param amount: The amount in currency, 2 decimals @param currency_code: The currency code, e.g USD, ZAR, BWP, ZIG
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| currency_code | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description must carry behavioral transparency. It discloses the confirmation step ('Confirm (yes/no) before executing') and the conversion mechanism, which are genuine behavioral traits. However, it omits irreversibility, error conditions, and permission details beyond the token parameter, limiting the depth of transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The opening sentence is duplicated verbatim, wasting words and detracting from conciseness. The @param block is well-structured and readable, and the content is front-loaded, but the redundancy is a clear quality issue that prevents a higher score.
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 covers the tool's purpose, all five parameters, the confirmation behavior, and hints at a JSON return. Since an output schema exists, omitting detailed return descriptions is acceptable. It lacks explicit alternative tool comparisons and failure behavior, but for a straightforward action with well-documented parameters, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description's @param lines are critical. All five parameters receive meaningful descriptions, including the important caveat that account_fk is a database ID integer not an account address and may not be 0, plus the precision requirement for amount ('2 decimals'). This fully compensates for the schema's lack of explanations.
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 opens with 'Purchases airtime by converting currency to minutes and seconds', which is a specific and detailed verb+resource+method statement. The term 'airtime' clearly distinguishes it from siblings like netfluid__account_buy, and the conversion detail adds precision. Even with a null title, the description effectively conveys the tool's unique purpose.
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 implies usage for buying airtime through its explicit purpose statement, but it provides no explicit guidance on when to choose this over related tools such as netfluid__account_buy, netfluid__telco_bundles, or netfluid__account_charge. No alternatives or exclusions are named, leaving selection partly to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_chargeAInspect
Charges the account based on a presented QR-code or NFC card. Confirm (yes/no) before executing
Charges the account based on a presented QR-code or NFC card. The payer must present a valid PIN for the transaction to complete @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The merchant's account_fk, typically the account that will receive the payment @param account_address: The account_address that will be charged @param amount: The amount to charge @param pin: The account PIN of the account_address that will be charged @param note: The note on the transaction
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| account_address | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the need for PIN and the confirmation step, but it is ambiguous whether 'Confirm (yes/no) before executing' is a tool behavior or an instruction to the agent. It lacks details on side effects, reversibility, or error conditions, which is important for a financial mutation.
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 repeats 'Charges the account based on a presented QR-code or NFC card' twice in the opening, which is redundant. The @param block is structured and efficient, but the duplicated opening wastes space and could confuse. Not terrible, but not clean.
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 covers purpose, prerequisites, parameter meanings, and states '@return: a json object'. However, it does not explain what the JSON contains, error cases, or idempotency. The ambiguous confirmation step and lack of edge-case context leave gaps for a financial transaction tool with no annotation support.
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 0% description coverage, but the description compensates fully with detailed @param explanations. It clarifies that account_fk is a database ID (not an address) and may not be 0, describes token as the wallet_api_token from /access/login, and specifies that pin belongs to the account_address being charged. All 7 parameters receive meaningful semantic annotation.
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: 'Charges the account based on a presented QR-code or NFC card.' This is a specific verb ('Charges') and resource ('the account') with a distinguishing mechanism (QR-code/NFC card). It differentiates from siblings like account_send or account_pay by the presentation method.
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?
Provides explicit guidance: 'Confirm (yes/no) before executing' instructs the agent to seek user confirmation, and 'The payer must present a valid PIN' sets a required prerequisite. While it doesn't explicitly mention alternatives or exclusions, the context of QR/NFC charging and the PIN requirement offer clear usage boundaries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_infoAInspect
Returns detailed account information.
Returns detailed account information and balances. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the burden of behavioral disclosure. The verb 'Returns' implies a read operation, and the clarification that account_fk is a database ID (not an address) and may not be 0 is useful. However, it does not explicitly state whether the operation is side-effect-free or describe error behavior, leaving some ambiguity.
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 opening two sentences repeat essentially the same information ('Returns detailed account information' vs 'Returns detailed account information and balances'), which is redundant. The @param section is well-structured, but the redundancy detracts from conciseness.
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 info tool with an output schema, the description adequately covers all inputs with provenance, clarifies a potential pitfall (account_fk as int not string), and states the return type. It is slightly incomplete in not addressing error conditions or explicitly confirming a read-only nature, but overall it is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description compensates fully by explaining all three parameters: what they are, where to obtain them, and the constraint on account_fk. This exceeds the baseline and provides actionable detail.
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 'Returns detailed account information and balances,' identifying it as the account info/read tool among siblings like account_send or account_buy. However, 'detailed account information' is somewhat vague, and the first two sentences are redundant.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implicit usage guidance by documenting where to obtain token and account_fk (from /access/login and /wallet/accounts_list), suggesting a workflow order. But it does not explicitly state when to use this tool over alternatives or provide exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_merchant_voucher_issueAInspect
Issues a Netfluid voucher. Performs a FIAT withdraw. Only applicable on FIAT balances
@param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk into which to redeem the voucher @param amount: The amount to issue for
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that this is a financial withdrawal ('Performs a FIAT withdraw') and adds a balance-type constraint, which is useful behavioral context. However, with empty annotations, it does not describe side effects (e.g., balance deduction), reversibility, permission requirements, or failure behavior, leaving significant gaps for a money-moving tool.
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 compact and front-loaded with purpose. The @param sections are structured and each line adds value, such as clarifying the account_fk type. Minor verbosity exists in the parenthetical account_fk explanation, but it is necessary for correctness. No fluff or redundancy.
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 4-parameter financial tool with empty annotations, the description covers the basics: purpose, key parameter semantics, and a scope constraint. However, it lacks usage guidance, amount units, and any mention of error conditions or postconditions. An output schema exists, so return value details are not required, but the missing usage context and ambiguous amount keep it from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. The @param blocks provide valuable meaning: api_key is 'allocated to your application', token comes from '/access/login', and account_fk is clarified as a database ID (int) not an address and non-zero. The amount parameter is only described as 'amount to issue for', lacking units or currency context, but overall the parameter guidance is strong.
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: 'Issues a Netfluid voucher' and 'Performs a FIAT withdraw'. It also specifies scope ('Only applicable on FIAT balances'), which distinguishes it from sibling tools like netfluid__account_merchant_voucher_quote and netfluid__account_merchant_voucher_redeem.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The constraint 'Only applicable on FIAT balances' provides a condition but does not compare this tool to other financial actions like account_charge, account_send, or withdraw_to_bank, nor does it mention exclusions or prerequisites beyond FIAT balance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_merchant_voucher_quoteAInspect
Performs a quote to before issuing a Netfluid voucher as a merchant.
STEP 1: Performs a quote to issue a voucher as a merchant. Returns the merchant commission as well as the amount charged to the customer. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to issue the voucher @param amount: The amount to issue the voucher for in up to 2 decimals.
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose side effects; it describes the return fields but does not explicitly state that no voucher is issued or that it is a read-only quote. It gives some useful context about the account_fk type but lacks error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is redundant with the 'STEP 1' sentence, creating repetition. The @param and @return structure is clear, but the opening two lines could be merged.
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 tool is a prerequisite to issuance, but the description doesn't connect to the issue sibling. Parameter details are strong, but usage guidance and side-effect disclosure are missing, leaving the agent to infer the workflow.
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?
Description provides @param explanations for all four required parameters, including the nuance that account_fk is a DB ID not an address, and amount precision. This fully compensates for the schema's 0% property descriptions.
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 a quote operation for merchant voucher issuance, mentioning return of commission and customer amount. This distinguishes it from the sibling 'issue' and 'redeem' voucher 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 'STEP 1' framing implies it is a prerequisite for issuing a voucher, but no explicit alternatives or exclusions are given. It does not name the issue tool or state 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.
netfluid__account_merchant_voucher_redeemAInspect
Redeems a Netfluid voucher.
@param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk into which to redeem the voucher @param voucher_code: The netfluid voucher code, a string consisting of 4 sets of numbers example 1234-0000-4321-5678
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| voucher_code | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It states the action 'redeems' but does not mention side effects, irreversibility, voucher consumption, or potential failure conditions. The note about account_fk being a database ID and not 0 is a parameter constraint, not a behavioral trait, and the @return simply says 'a json object' without specifics.
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 appropriately sized and well-structured: one sentence for purpose, followed by a clean @param block, and a short @return header. Every sentence adds value, with no redundant fluff or repetition of schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity (4 params, no annotations, but an output schema exists), the description covers the essential input semantics and authentication origins. It lacks some behavioral expectations (e.g., whether the voucher is consumed, if redemption is permanent), but the output schema mitigates the need to explain return structure, making this fairly complete.
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?
All four parameters are explained beyond the schema: api_key is described as application-scoped, token is tied to /access/login, account_fk is clarified as a database ID with a non-zero constraint, and voucher_code gets a format example. This fully compensates for the 0% schema description coverage.
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 opens with 'Redeems a Netfluid voucher,' which is a specific verb+resource statement. It clearly distinguishes this tool from sibling tools like voucher issue or check, and the parameter details reinforce the redemption action.
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 implies usage context through required authentication tokens (api_key and token from /access/login) and the target account_fk, but it does not explicitly state when to use this tool versus alternatives such as netfluid_netfluid_voucher_check or netfluid__account_merchant_voucher_issue. No exclusions or conditions are provided, leaving usage guidance mostly implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_mintAInspect
Mints a new account of an account type into the wallet. Confirm (yes/no) before executing
Mints a new account of an account type into the wallet. There are costs associated with this operation. Minting is generally done asynchronously, it may take several seconds for the minted account to be available @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk into which the new account will be minted. @param account_type_fk: The account_type_fk to mint as per /account/types, default is Solana (7) @param currency_fk: The currency_fk to mint as per /currency/list, default is ZAR (7)
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| currency_fk | No | ||
| account_type_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It does mention costs and asynchronous minting, which is valuable. However, it leaves 'Confirm (yes/no)' ambiguous—there is no corresponding parameter in the schema—and does not explain side effects, reversibility, or what the returned JSON contains. It is a moderate disclosure but incomplete.
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 somewhat concise but contains a redundant first sentence repeated almost verbatim twice. The structure with @param lines is clear, but the duplication wastes space and adds no value. The 'Confirm (yes/no)' line is also not well-integrated, making the beginning clunky.
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 tool has 5 parameters, an output schema, and no annotations. The description covers costs and async, but omits important operational details such as how confirmation is performed, possible errors, and what the JSON return actually contains. The output schema exists but cannot be seen by the agent from the description alone; the '@return: a json object' is insufficient. Overall, it is not fully complete for an operation of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the @param lines in the description are the only source of parameter meaning. They add context for all five parameters: source of api_key, token, wallet_fk, account_type_fk (with reference to /account/types and default 7), and currency_fk (with reference to /currency/list and default 7). This fully compensates for the absent schema descriptions and gives the agent actionable details.
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 a specific action: "Mints a new account of an account type into the wallet." The verb "mint" is unique among sibling tools and distinguishes this from other account operations like buy, sell, send, or charge. It also specifies the resource (account) and target (wallet).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is given on when to use this tool instead of alternatives. It mentions costs and asynchronous behavior but does not compare with other account creation or wallet-related tools. The phrase 'Confirm (yes/no) before executing' hints at a usage step but is not elaborated and does not clarify selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_pairBInspect
Assigns a PIN to an account for use by a QR-Code or NFC card. Confirm (yes/no) before executing
Assigns a PIN to an account for use by a QR-Code or NFC card @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param address: The account address @param pin: The 5 digit numeric PIN e.g 01234 @param expire_date: The optional expiry date on the PIN, format YYYY-MM-DD HH:MM:SS, in GMT timezone
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| token | Yes | ||
| address | Yes | ||
| api_key | Yes | ||
| expire_date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is the sole source of behavioral information since annotations are empty. It discloses that the tool assigns a PIN and requires confirmation, but it does not mention whether the PIN overwrites existing ones, whether the operation is reversible, or any side effects. This is a significant gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description contains redundancy: the first sentence is repeated almost verbatim after the 'Confirm (yes/no)' line. This duplication adds no value and makes the description feel bloated. The parameter documentation is structured well, but the overall structure suffers from the repetition.
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 parameter documentation is strong and an output schema exists, so return values are covered. However, the description lacks usage guidance and behavioral depth (e.g., prerequisites beyond token, effects, confirmation flow). It is adequate for understanding what the tool does but not fully complete for confident invocation in all contexts.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description thoroughly explains each parameter beyond the schema, providing sources, formats, and examples (e.g., 'api_key: The api key allocated to your application', 'pin: The 5 digit numeric PIN e.g 01234', 'expire_date: optional, format YYYY-MM-DD HH:MM:SS, in GMT timezone'). With zero schema description coverage, this fully compensates.
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: 'Assigns a PIN to an account for use by a QR-Code or NFC card.' This is a specific verb+resource combination and mentions the scoped use case (QR/NFC), which distinguishes it from sibling tools like netfluid__access_wallet_pin_change that likely handle PIN changes.
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?
There is no explicit guidance on when to use this tool versus alternatives. It does mention confirm (yes/no) before executing, which is a caution, but it doesn't elaborate on prerequisites or exclusion scenarios. The parameters are documented, but the description lacks clear 'use this when' or 'instead of that' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_pauseAInspect
Temporarily restricts an account from performing any function that would result in funds existing the account. Can only be undone by an administrator, warn before using! Confirm (yes/no) before executing
Temporarily restricts an account from performing any function that would result in funds existing the account. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list @param lock: If set to 1 the account will be system locked, the customer cannot remove lock
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| lock | No | ||
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden and does well: it discloses the temporary restriction, admin-only undo, and the lock parameter's effect ('system locked, the customer cannot remove lock'). It also instructs a confirmation step. Some edge cases (e.g., in-flight transactions) are not mentioned, but the essential behavioral traits are covered.
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 structured with @param sections but suffers from verbatim duplication of the first sentence ('Temporarily restricts an account...') appearing twice. The @return line is generic and adds little value. It is not overly long but the redundancy and unnecessary repetition reduce conciseness.
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 covers purpose, warnings, side effects, and all parameters thoroughly. Given the presence of an output schema, the generic '@return: a json object' is not a major issue. It lacks explicit reference to alternative tools, but for a sensitive mutation tool with no annotations, the description is quite complete and actionable.
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 @param block adds significant meaning beyond the raw schema (which has 0% description coverage). It explains where to obtain the token ('provided by /access/login'), clarifies account_fk as a database ID and not an account address, and details the lock parameter's behavior. All four parameters receive useful semantic context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Temporarily restricts an account from performing any function that would result in funds existing the account' (despite the typo 'existing' for 'exiting'). It also adds important context like admin-only undo. However, it does not explicitly differentiate from sibling tools such as netfluid__access_pause or netfluid__account_resume, though the account-focused scope is implied.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides strong usage guidance: 'warn before using! Confirm (yes/no) before executing' and 'Can only be undone by an administrator' clearly indicate when and how to use the tool with caution. It does not explicitly name alternatives like account_resume or account_unlock, but the warning and context cover the key usage considerations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_payAInspect
Charges the account a transaction fee. Confirm (yes/no) before executing
Charges the account a transaction fee. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk to charge @param amount: The amount to charge @param note: The note on the transaction
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description bears the transparency burden. It discloses that the tool debits a transaction fee and explicitly warns to confirm before executing, which is meaningful behavioral context. But it does not mention reversibility, balance requirements, permission prerequisites, or failure behavior, leaving gaps for a financial mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is structured with clear @param sections and is mostly efficient, but the sentence 'Charges the account a transaction fee' is repeated verbatim, adding no new information. The confirmation instruction also appears once, but the duplication makes it less concise than it could be.
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 5-parameter financial mutation with no annotations, the description covers the core purpose, confirmation requirement, all parameters, and return type, while the output schema supplies return shape. However, it lacks guidance on when to use this tool versus sibling payment/account tools and omits side effects or prerequisites beyond auth tokens, so some context is still missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description thoroughly documents every parameter via @param lines, adding meaning beyond the bare schema. It clarifies that api_key is application-allocated, token comes from /access/login, account_fk is a database ID (not an address) and may not be 0, amount is the charge amount, and note is optional. Since schema coverage is 0%, this description is essential and highly effective.
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 action with a specific verb ('Charges') and resource ('the account') and the nature of the charge ('a transaction fee'). However, it does not explicitly distinguish this from sibling tools like account_charge or account_send, so it stops short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides one concrete usage instruction: 'Confirm (yes/no) before executing,' which tells the agent to get user confirmation before calling the tool. However, it gives no guidance on when to prefer this tool over alternatives like account_charge or account_buy, and no exclusion conditions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_resumeAInspect
Resumes full trading capability for an account that has been previously paused. Can only be undone by an administrator. Confirm (yes/no) before executing
Resumes full trading capability for an account that has been previously paused. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
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 discloses that the action can only be undone by an administrator and that confirmation should be obtained before executing, which are important behavioral traits beyond a simple state-change description.
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 main purpose statement is duplicated verbatim, adding unnecessary repetition. The rest of the description is concise and well-structured with parameter documentation, but the duplication detracts from overall conciseness.
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 covers purpose, key behavioral caveats, and detailed parameter semantics. An output schema exists, so the lack of return detail is acceptable. However, it does not state whether the caller needs specific permissions or whether the account must belong to the authenticated user, leaving a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters are thoroughly documented via @param lines in the description. The account_fk explanation explicitly warns that it is a database ID, not an account address, and must not be 0, which is critical for correct use. Since the schema itself lacks descriptions, this fully compensates.
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 resumes full trading capability for a previously paused account. The verb 'resumes' and the specific resource (account trading capability) distinguish it from sibling tools like access_resume or webhook_resume.
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 states the precondition that the account must have been previously paused, and explicitly instructs to confirm before executing, which is an actionable usage guideline. However, it does not explicitly name alternatives or exclusions, leaving some room for interpretation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_sellBInspect
Sells a digital asset and returns the proceeds to the account's FIAT balance. Confirm (yes/no) before executing
Sells a digital asset and returns the proceeds to the account's FIAT balance @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to sell @param digital_asset_fk: The digital_asset_fk to sell @param amount: The amount of the digital_asset_fk to sell
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| digital_asset_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that confirmation is required before executing and that proceeds land in FIAT balance. However, it does not mention fees, minimums, reversibility, or how confirmation is supplied, leaving significant behavioral aspects opaque.
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 purpose sentence is duplicated verbatim, wasting space and indicating poor editing. The structure mixes a repeated opening with param docs, but the redundancy and lack of formatting reduce clarity and efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a financial transaction with 5 required params and no annotation support, yet the description only says '@return: a json object' and doesn't explain confirmation flow, error cases, or fee implications. Sibling tools like account_buy and account_swap suggest a family of trading actions, but the description lacks enough context to fully grasp what to expect when invoking this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 0% of parameters, so the @param lines are the only source of meaning. They provide basic definitions for all five params, and account_fk gets a critical clarification (database ID not address, cannot be 0). Other params like amount lack unit specificity, and token/api_key are only lightly described.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('sells') and resource ('digital asset'), with a clear outcome ('returns proceeds to FIAT balance'). This distinguishes it from sibling tools like account_buy and account_swap, and the confirmation note adds operational clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as account_buy or account_swap. The description implies a selling use case but doesn't state prerequisites, exclusions, or scenario-specific guidance. The 'Confirm (yes/no)' note is procedural, not usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_sendAInspect
Sends FIAT from this account to another Netfluid account. Optionally save as a beneficiary. Confirm (yes/no) before executing
Sends FIAT from this account to an account address. Optionally save as a beneficiary. The FIAT sent is converted to the destination account's currency. This function can send FIAT across wallets @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to send @param destination: The destination's account address (type str, not account_fk, the user readable address of the account) @param amount: The amount to send @param note: The note on the transaction @param save: Optionally saves destination as beneficiary for future use. Boolean value of 0=False, 1=True @param name: Sets the beneficiary descriptive name. Only applicable if save is set to 1
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| note | No | ||
| save | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| destination | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the confirmation step, currency conversion, and optional beneficiary saving, but does not mention potential fees, reversibility, or required permissions beyond the auth params. For a FIAT transfer tool, this leaves notable behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is redundant: 'Sends FIAT from this account to another Netfluid account' and 'Sends FIAT from this account to an account address' appear in two consecutive paragraphs, and 'Optionally save as a beneficiary' is repeated. The parameter block is useful but could be tightened. The repetition wastes space and harms readability.
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 complex financial tool with 8 parameters and no annotations, the description covers key aspects: confirmation, currency conversion, cross-wallet operation, and the account_fk vs address distinction. It does not explain fees, error handling, or exact return structure, but the presence of an output schema and the detailed parameter docs make it reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides exceptional parameter documentation despite 0% schema description coverage. It clarifies critical nuances: account_fk is an int database ID (not an address), destination is a user-readable address, save is a boolean 0/1, and name only applies if save=1. This fully compensates for the schema's lack of descriptions.
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 'Sends FIAT from this account to another Netfluid account' and adds 'This function can send FIAT across wallets', which helps distinguish it from similar money-movement tools. It does not explicitly name alternative tools, but the verb+resource+scope is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a usage-critical instruction: 'Confirm (yes/no) before executing', and explains currency conversion and cross-wallet capabilities. However, it does not explicitly say when to use this tool versus alternatives (e.g., account_wire, account_pay), nor any exclusions or prerequisites beyond authentication parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_send_smsAInspect
Sends a Mobile SMS and charges this account. Confirm (yes/no) before executing
Sends a SMS and charges this account. This end point will deliver to limited destinations: South Africa, Botswana, Zimbabwe, UK. Delivery is not guaranteed. Charged per submission. @param api_key: The api key allocated to your application, must have admin privileges @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list @param mobile: The destination mobile number in e164 international format (no +) @param message: The message to send, charged per 160 characters
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| mobile | Yes | ||
| api_key | Yes | ||
| message | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses key behaviors: it charges the account, requires confirmation, has limited delivery destinations, and requires admin privileges. It also warns that delivery is not guaranteed.
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 contains redundancy: the first sentence and the second sentence after the blank line both state 'Sends a SMS and charges this account.' This duplication adds unnecessary length, though the @param section is structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers auth requirements, destination restrictions, cost model, delivery guarantee, confirmation step, and parameter caveats. With an output schema present, the vague '@return: a json object' is acceptable, making this a well-rounded description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description gives detailed @param explanations for all five parameters, including api_key admin requirement, account_fk being an integer DB ID, mobile format (e164 without +), and message being charged per 160 characters. This fully compensates for the input schema lacking descriptions.
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 'Sends a Mobile SMS and charges this account' with specific destination restrictions. This distinguishes it from siblings like netfluid__send_email or netfluid__push_message_send, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context for when to use: limited to specific countries, delivery not guaranteed, and charged per submission. However, it doesn't explicitly mention alternatives or exclusions, so it falls short of the highest rating.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_statementAInspect
Returns detailed account FIAT statement.
Returns detailed account statement from a start date for a maximum of entries. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list @param max_rows: The maximum number of entries to return, if not provided we return 1000 @param start_date: The date from which to return the statement, format YYYY-MM-DD HH:MM:SS. If not provided then it returns 60 days worth of data, date is in the GMT timezone
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| max_rows | Yes | ||
| account_fk | Yes | ||
| start_date | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden. It discloses important behaviors: default max_rows=1000, default start_date=60 days, date format and GMT timezone, and a strict constraint on account_fk (int, not zero, not address). It doesn't explicitly say read-only but 'Returns' implies it, and auth is covered by required params.
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 opening sentences are slightly redundant ('Returns detailed account FIAT statement' and 'Returns detailed account statement...'), but the parameter documentation is thorough and well-structured. Overall it is compact and front-loaded for a 5-parameter tool.
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?
With an output schema present and no enums, the description covers all necessary invocation details: parameter purposes, defaults, date format, timezone, and constraints. It provides sufficient context for an agent to select and use this tool correctly without ambiguity.
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?
Despite 0% schema coverage, the description provides detailed @param explanations for all 5 parameters, including the account_fk warning (database ID, not address, not zero), max_rows default (1000), and start_date format/default/timezone. This fully compensates for the schema gap.
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?
Clearly states 'Returns detailed account FIAT statement' with a specific verb and resource, and distinctively mentions FIAT and date-range parameters. This differentiates it from sibling account_* 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 implies usage for retrieving account statement history but does not explicitly state when to use this tool vs alternatives or provide exclusions. It gives clear functionality but lacks explicit guidance on 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.
netfluid__account_swapAInspect
Swaps one digital asset for another on an account level. Confirm (yes/no) before executing
Swaps one digital asset for another on an account level, use digital_asset_fk=0 or to_digital_asset_fk=0 to indicate FIAT @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to swap @param digital_asset_fk: The origin digital_asset_fk to swap @param to_digital_asset_fk: The digital_asset_fk to swap @param amount: The amount of the digital_asset_fk to swap @param note: The transaction note
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| digital_asset_fk | Yes | ||
| to_digital_asset_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden. It discloses a confirmation step ('Confirm (yes/no) before executing') and the FIAT=0 convention, which adds useful behavioral context. However, it does not explain what the confirmation flow entails, whether the operation is irreversible, or what side effects occur on balances—leaving some behavioral ambiguity.
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 opening sentence is repeated almost verbatim: 'Swaps one digital asset for another on an account level' appears twice. This redundancy wastes space and could confuse. The @param block is structured and useful, but the duplication in the main description prevents a higher score.
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 covers parameter meanings and a key convention (fiat=0), but leaves gaps: the confirmation mechanism is only mentioned as 'yes/no before executing' without explaining how the agent receives or answers this prompt, and the return value is vaguely described as 'a json object' despite an output schema existing. For a financial swap tool, this is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the @param lines are essential. The description explains all 7 parameters, with valuable clarifications like account_fk being a DB ID (not an address) and not zero, and the FIAT=0 convention for digital_asset_fk/to_digital_asset_fk. Some descriptions are tautological ('The digital_asset_fk to swap'), but overall the description compensates well for the lack of schema descriptions.
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: 'Swaps one digital asset for another on an account level.' This provides a specific verb ('swaps') and resource ('digital asset' at account level), differentiating it from siblings like crypto_dex_swap or account_buy. The FIAT convention (fk=0) adds precision.
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?
There is no explicit guidance on when to use this tool versus alternatives (e.g., crypto_swap, account_buy, account_sell). The only contextual hint is 'on an account level,' but no exclusions or alternative tool names are mentioned. The confirmation note and FIAT tip are parameter-level guidance, not tool-selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_typesBInspect
Lists all account types, typically static information
Lists all account types @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
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. The verb 'Lists' and 'static information' imply a read-only operation, but the description does not disclose potential side effects, auth requirements (beyond the api_key parameter), rate limits, or error scenarios. It adds a small amount of context about the nature of the data, but lacks depth for a tool with zero annotation support.
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 short but contains redundancy: 'Lists all account types, typically static information' followed by 'Lists all account types' repeats the main verb phrase. The @param and @return lines are useful, but the duplication detracts from conciseness. It is not egregiously long, but could be tighter.
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 list tool with an output schema present, the description provides minimal context about what account types are, when to use it, or what the JSON output looks like (though the output schema itself may cover this). The absence of any usage guidance and behavioral detail leaves the agent with an incomplete picture, but the core function is clear. It is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates with an explicit @param api_key line: 'The api key allocated to your application'. This gives meaning to the parameter, though it could be more detailed (e.g., where to obtain the key). The description adds sufficient value beyond the bare 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 states the tool 'Lists all account types' and adds 'typically static information' as useful context. However, it is redundant by repeating 'Lists all account types' twice and does not explicitly distinguish this from sibling list tools like currency_types or commodity_types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It merely states it lists account types, with no mention of when it is appropriate or when other tools like account_info might be preferred. The hint 'typically static information' is too vague to serve as usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_unlockAInspect
Unlocks a locked account (from status_fk=10 to status_fk=1). Confirm (yes/no) before executing
Unlocks a locked account. @param api_key: The api key allocated to your application, must have admin privileges @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden for behavioral transparency. It discloses a key behavior: the tool requires confirmation before execution ('Confirm (yes/no) before executing'). It also mentions the admin privilege requirement for api_key and clarifies that account_fk is a database ID, not an address. While it does not mention error cases or reversibility, it provides meaningful behavioral context beyond the raw schema.
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 mostly concise and front-loaded, but it has a clear redundancy: the opening sentence 'Unlocks a locked account' is repeated verbatim in the second line. Removing the repetition would tighten it. The parameter docs are well-organized and useful, so the structure is still efficient overall.
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 3-parameter tool with an output schema (not shown), the description covers purpose, usage prerequisites, parameter semantics, and return type ('a json object'). It does not address edge cases like what happens if the account is already unlocked or whether the operation is reversible, but given the output schema and the detailed param docs, the description is sufficiently complete for an agent 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description fully compensates. Each parameter is explained: api_key requires admin privileges, token is obtained from /access/login, and account_fk is explicitly clarified as an integer database ID (not a string address) and may not be 0, with a source endpoint (/wallet/accounts_list). This goes well beyond the schema's bare type declarations.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Unlocks'), resource ('a locked account'), and the exact state transition ('from status_fk=10 to status_fk=1'). This distinguishes it from sibling tools like account_resume or access_resume, which operate on different states. The repetition of 'Unlocks a locked account' reinforces the purpose without ambiguity.
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 implies the tool is for locked accounts via the status_fk transition, and it states prerequisites (admin privileges) and a required confirmation step ('Confirm (yes/no) before executing'). However, it does not explicitly name alternatives or specify when not to use this tool versus related resume/pause tools, so guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__account_wireAInspect
Sends FIAT or Digital Assets from this account to a blockchain address. FIAT is converted by the system. Confirm (yes/no) before executing
Sends FIAT or Digital Assets from this account to a blockchain address. The FIAT account must be associated to the same blockchain as the destination address @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to wire @param destination: The destination blockchain address (str) @param amount: The amount to wire @param digital_asset_fk: The digital_asset_fk to wire, use 0 for FIAT @param note: The note on the transaction
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| destination | Yes | ||
| digital_asset_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses important behaviors: FIAT conversion by the system, a confirmation step (yes/no), and the blockchain association requirement. It does not mention irreversibility, fees, permissions, or failure modes.
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 somewhat redundant, repeating the first sentence almost verbatim. However, it is reasonably concise overall and uses a clear @param structure. The redundancy wastes a little space but doesn't severely hurt readability.
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 tool has moderate complexity with conversion and confirmation, and an output schema exists so return values are covered elsewhere. The description addresses key constraints but omits details like auth requirements, error handling, and post-confirmation behavior, leaving gaps for a complete understanding.
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?
Despite 0% schema description coverage, the description's @param lines provide valuable semantics: clarifying account_fk as a database ID not an address and may not be 0, explaining digital_asset_fk uses 0 for FIAT, and describing each parameter's purpose. This fully compensates for the schema's lack of descriptions.
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: sending FIAT or digital assets from an account to a blockchain address, with the verb 'sends' and specific resource/destination. It distinguishes from some siblings by mentioning blockchain address and FIAT conversion, but doesn't explicitly differentiate from similar tools like account_send or account_pay.
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 implies usage for transferring funds to a blockchain address and includes a key prerequisite (FIAT account must be associated with the same blockchain as the destination). However, it does not explicitly state when to use this tool over alternatives or mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__ask_geminiCInspect
Performs a Gemini AI prompt.
@param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param prompt: The string prompt
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| prompt | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only lists parameters and says 'a json object' is returned. It does not explain side effects, error behavior, rate limits, or whether calling this tool consumes quota or affects the wallet linked by wallet_fk.
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 compact and well-structured, using a JSDoc-like format with clear param annotations and a return comment. Every line contributes essential information without filler, making it easy to scan.
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?
Despite having an output schema (per context signals), the description only says 'a json object' without detailing the response structure. It lacks context on why these authentication parameters are required, what the Gemini prompt does, and how wallet_fk is used, making it incomplete for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides a line for each parameter, but explanations are minimal and somewhat tautological (e.g., 'The string prompt' for prompt, 'The api key allocated to your application' for api_key). It does not clarify how to obtain the token or wallet_fk beyond referencing /access/login, leaving ambiguity about their exact purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Performs a Gemini AI prompt' which indicates the tool interacts with a Gemini AI model, but the verb 'performs' is vague and doesn't specify the action (e.g., send, generate, ask). It is not a tautology but lacks precision and does not clarify what the result represents.
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?
There is no guidance on when to use this tool versus alternatives. The description does not mention any prerequisites, exclusions, or typical scenarios, leaving the agent to infer appropriate usage solely from the tool name and basic description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__automated_agent_signupAInspect
Automated signup for autonomous agents in order for an Agentic AI to perform autonomous agents payments. In order for this wallet to be autonomous, it needs to be created by a human KYCed wallet. Once done this wallet will be fully enabled to perform any transaction a human KYCed wallet is capable of. Including access to virtual bank accounts in Europe and the USA as a funding source. The impact of this is that the agent will have its own wallet, own bank accounts and blockchain wallets without limitations. The wallet is automatically minted with a Solana Blockchain wallet. The agent would need to save the wallet_fk and PIN of the new wallet in long term storage in order to make use of it later The human accepts all legal responsibility for this wallet. Process can take up to 30 seconds. @param secret: A secret, minimum 8 characters, must be unique system-wide. This is typically the username, but private. Suggestion: Generate 3 natural language words, concatenated, or prompt the human for 3 words. @param pin: The 5 digit PIN associated with the new wallet. Can be any random 5 numbers. @param email: The agents email address, if not available use a blank string. @param mobile: The human's mobile phone number, in e164 format, e.g. 27821234567 (no +). if not available use a blank string. @param currency_fk: The currency of the first account, use 7 (ZAR) for everyone else use 3 (USD) @param sponsor_wallet_fk: The sponsor's wallet_fk, this wallet_fk must be KYCed if not the new wallet will also not be KYCed @param sponsor_wallet_pin: The sponsor's 5-digit PIN
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| Yes | |||
| mobile | Yes | ||
| secret | Yes | ||
| currency_fk | No | ||
| sponsor_wallet_fk | Yes | ||
| sponsor_wallet_pin | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well, disclosing the KYC sponsorship requirement, automatic Solana wallet minting, access to virtual bank accounts, legal responsibility, and the 30-second processing delay. It doesn't cover reversibility or possible errors, but for a signup tool it is quite transparent.
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 longer than typical but well-structured, starting with the purpose and then providing detailed parameter info. Each sentence adds useful information, though some introductory text could be tightened without losing meaning.
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 complex tool with 7 parameters and an output schema, the description is nearly complete. It covers the purpose, process, prerequisites, parameter semantics, and returns. The exact JSON structure is left to the output schema, which is appropriate.
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?
Although the schema itself has no descriptions (0% coverage), the description's @param lines fully explain each parameter, including format, constraints, and suggestions. For example, secret must be minimum 8 characters and unique, mobile must be in e164 format, and currency_fk maps 7 to ZAR and 3 to USD. This well exceeds what the schema provides.
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 that this tool performs an automated signup for autonomous agents, creating a wallet for Agentic AI payments. It is specific about the resource and purpose, and distinguishes itself from most siblings by focusing on agent wallets, though it doesn't explicitly name the similar sibling `netfluid__automated_signup`.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use: when an agent needs an autonomous wallet, it must be created by a human KYCed wallet. It also mentions the process duration and that the agent must save wallet_fk and PIN. However, it doesn't explicitly state when not to use or name alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__automated_signupAInspect
Automated signup for new customers. AI should use this tool as the preferred method to signup human customers.
Automated signup for new customers. Process can take up to 30 seconds. Once completed direct the human customer to the kyc url for them to complete the identity verification process. Should the human need more tries at identity verification, call wallet_kyc_session_create @param secret: A secret, minimum 8 characters, must be unique system-wide. This is typically the customer username, but private. Suggestion: Generate 3 natural language words, concatenated, or prompt the human for 3 words, something that the human can remember. @param pin: The 5 digit PIN associated with the wallet. Can be any random 5 numbers, but perhaps use something that is meaningful to the human or prompt them for it. @param email: The customers email address. @param mobile: The customers mobile phone number, in e164 format, e.g. 27821234567 (no +) @param currency_fk: The currency of the first account, if the human is South African, use 7 (ZAR) for everyone else use 3 (USD)
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| Yes | |||
| mobile | Yes | ||
| secret | Yes | ||
| currency_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It discloses the up-to-30-second process and the KYC redirect behavior, which adds context. However, it does not mention required permissions, potential side effects beyond signup, or what happens on failure, leaving gaps in behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized with an overview followed by @param blocks, making it easy to parse. The first two sentences are somewhat redundant ('Automated signup for new customers' repeated), but the structure remains clear and front-loaded with purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the signup process, timing, KYC next steps, and parameter semantics thoroughly. With an output schema present, the return value does not need detailing. Minor gaps like error handling and account-creation specifics keep it from a 5, but overall it is complete for an agent to use 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?
Schema coverage is 0%, and the description fully compensates. It provides detailed instructions for every parameter: secret (min 8 chars, uniqueness, suggestion), pin (5 digits), mobile (e164 format), currency_fk (ZAR/USD mapping), and email. This is exemplary parameter documentation.
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 'Automated signup for new customers' and specifies this is the preferred method for human customers, distinguishing it from potential agent signup tools. The verb 'signup' and resource 'customers' are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'AI should use this tool as the preferred method to signup human customers' and provides after-completion steps (direct to KYC URL, call wallet_kyc_session_create if more tries needed). It does not explicitly name the agent-signup alternative, but 'human customers' clearly implies the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__beneficiaries_listAInspect
Lists all beneficiaries on this wallet or on this account
Lists all beneficiaries on this wallet or on this account @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login, may not be 0 @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for this account, may be set to 0, in which case all beneficiaries associated with this wallet are returned
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It conveys the read-only nature through 'Lists' and explains constraints like wallet_fk may not be 0 and account_fk is a database ID, not an address. However, it does not mention pagination, error conditions, or auth requirements beyond the token source, which is a minor gap for a list operation.
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 first sentence 'Lists all beneficiaries on this wallet or on this account' is repeated verbatim, which is redundant and wastes space. The @param structure is clear, but the duplicate opening sentence prevents a higher score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description covers the essential behavioral and parameter semantics needed for a list operation. It includes token origin, parameter constraints, and scoping rules. Missing minor details like error handling, but for this complexity it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates fully by explaining each parameter's source and purpose. It adds critical nuance absent from the schema, such as account_fk being a database ID (not an address) and that setting it to 0 returns wallet-associated beneficiaries. This goes well beyond the bare 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 states the tool's function with a specific verb ('Lists') and resource ('beneficiaries'), and it distinguishes scope (wallet or account). It is easily distinguished from sibling tools like beneficiary_add/remove as the read operation, despite the tool name making this obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: to list beneficiaries on a wallet or account. It gives detailed parameter guidance, especially the account_fk=0 case for wallet-level listings, which helps in selecting the right scope. However, it does not explicitly name alternative tools or exclude any use cases, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__beneficiary_addAInspect
Creates a beneficiary on this wallet or on this account
Creates a beneficiary on this wallet or on this account @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login, may not be 0 @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for this account, may be set to 0, in which case this beneficiary will be available to this wallet @param name: The descriptive name of this beneficiary, try to keep name short and unique per wallet @param address: The address of the beneficiary, either the Netfluid Account Address or the Blockchain address @param rba_fk: The rba_fk of the recipient bank account, set to 0 if either name or address is provided @param note: The note or recipient reference on the transaction, visible to the receiver.
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| note | Yes | ||
| token | Yes | ||
| rba_fk | Yes | ||
| address | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses that it creates a beneficiary but does not describe side effects, authorization requirements, reversibility, or any other behavioral traits beyond the creation itself. The @return only says 'a json object' without detail.
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 first sentence is repeated verbatim twice, which is unnecessary and wastes space. The parameter documentation is structured but lengthy; however, given zero schema coverage, it serves a purpose. Overall it is not concise but is 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?
The tool has 8 required parameters and no annotations, but the description covers parameter semantics well. However, it lacks behavioral context such as when it applies, what the result is, or error conditions. The return value is only described as 'a json object', which is not helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions are absent (0% coverage), but the @param docs provide rich meaning for all 8 parameters, including relationships (account_fk may be 0 to make beneficiary wallet-wide), constraints (wallet_fk may not be 0), and types (account_fk is int not string). This fully compensates for the schema gap.
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 explicitly states 'Creates a beneficiary on this wallet or on this account', using a specific verb and resource. This clearly distinguishes it from sibling tools like beneficiaries_list and beneficiary_remove. The duplication of the sentence is redundant but does not affect clarity.
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 does not explicitly mention when to use this tool versus alternatives. It implies usage through the verb 'add' and the context of beneficiary creation, but it never states exclusions or mentions the list/remove sibling tools. Therefore usage is only implicit, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__beneficiary_removeDInspect
Deletes a beneficiary
Creates a beneficiary on this wallet or on this account @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account on which the beneficiary is set (may be 0) @param beneficiary_id: The beneficiary_id provided by /beneficiary/list (uuid)
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| beneficiary_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description contradicts itself on the core action (delete vs create). It does not disclose side effects, idempotency, or safety profile. With empty annotations, the description carries full burden but fails to provide coherent behavioral information.
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 short, but the first two lines are redundant and contradictory, wasting space. The @param structure is useful, but the content is confused, and the return description is vague ('a json object').
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?
Despite having an output schema, the description only says 'a json object', offering no details on the response structure or error behavior. The tool's scope (wallet vs account, deletion semantics) is obscured by contradictions. With four required params and no annotation support, this description is critically incomplete.
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 @param lines add some meaning beyond the schema, e.g., explaining that account_fk is a database ID not an address, and beneficiary_id comes from /beneficiary/list. However, account_fk is contradictory ('may not be 0' followed by 'may be 0'), and the explanation of 'account on which the beneficiary is set' is unclear. This does not adequately compensate for the 0% schema coverage.
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 opens with 'Deletes a beneficiary' but the very next line says 'Creates a beneficiary on this wallet or on this account'. These are contradictory actions, making the tool's actual purpose unclear and misleading. No clear differentiation from sibling tools like beneficiary_add.
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?
There is no guidance on when to use this tool vs alternatives. In fact, the false 'Creates a beneficiary' line actively suggests incorrect usage. No mention of prerequisites or scenarios for removal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_blockchainBInspect
Creates a blockchain to blockchain bridge. Confirm (yes/no) before executing
Creates a blockchain to blockchain bridge. Only supports USDC transfers. Do not send any other tokens as these may be lost. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk that will use the bridge @param blockchain: The blockchain that will receive the transfer. Possible values "ethereum","solana","avalanche_c_chain" @param address: The address on the above blockchain that will receive the transfer @param alias: A descriptive name for this Bridge, can be anything, set by async default if none is provided. @param currency: The currency, possible values are usdc, usdt, eurc
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| alias | No | ||
| token | Yes | ||
| address | Yes | ||
| api_key | Yes | ||
| currency | No | ||
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| blockchain | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It does warn about token loss and the need for confirmation, but it contains a critical contradiction: it says 'Only supports USDC transfers' yet lists usdt and eurc as possible currency values. This inconsistency could mislead the agent into sending unsupported tokens, undermining the disclosure of risks. This is a significant transparency flaw.
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 somewhat redundant: 'Creates a blockchain to blockchain bridge' appears twice (lines 1 and 3), wasting a sentence. The structure with @param blocks is clear, but the repetition makes it less concise than it could be. The confirmation instruction is also abruptly placed.
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 covers the purpose, all parameters, a safety warning, and a confirmation requirement. The output schema exists, so the vague '@return: a json object' is acceptable. However, the currency contradiction and lack of any guidance on when to use this vs. other bridge-related tools leave gaps in the overall context needed to invoke the tool 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 schema has 0% description coverage, so the @param lines in the description bear the full burden. All 8 parameters are explained with meaningful details, such as account_fk being a database ID (not an address) and blockchain having enumerated values. However, the currency parameter's listed values conflict with the 'only USDC' statement, reducing the reliability of the parameter documentation.
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 action ('Creates a blockchain to blockchain bridge'), which distinguishes it from sibling bridge tools like bridge_delete or bridge_list. However, the internal contradiction between 'Only supports USDC transfers' and the currency parameter listing 'usdc, usdt, eurc' creates ambiguity about the exact purpose, so it is not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some usage context by instructing 'Confirm (yes/no) before executing' and warning 'Do not send any other tokens as these may be lost.' However, it does not mention when to use this tool versus alternatives like bridge_off_ramp or bridge_on_ramp, nor does it explicitly state when not to use it beyond the token restriction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_deleteAInspect
Deactivates the Bridge. Confirm (yes/no) before executing
Deactivates the Bridge @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param external_account_id: The bridge's unique reference, found on /bridge/list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| external_account_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It adds a key behavioral detail: confirmation is required before executing. It also uses 'deactivates' intentionally, suggesting a soft-delete rather than permanent deletion. However, it does not disclose reversibility, side effects, or permission requirements.
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 opening sentence is front-loaded and clear, but 'Deactivates the Bridge' is repeated verbatim, creating redundancy. The parameter list is well-structured, but the duplicate line could have been omitted.
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 tool is relatively simple, but with no annotations and no schema descriptions, the description should provide more about the consequences of deactivation, such as impact on existing bridge operations or reactivation possibilities. The parameter coverage and confirmation detail are helpful, but behavioral side effects remain unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description's @param lines fully explain each parameter, including their source (e.g., external_account_id from /bridge/list). This completely compensates for the schema's lack of parameter descriptions.
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 deactivates a Bridge, which is a specific action on a specific resource. It distinguishes itself from sibling tools like bridge_list and bridge_rename by focusing on the deactivation operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The use case is implied: you use this tool to deactivate a bridge. However, there is no explicit guidance on when to choose this over alternatives or any exclusions. The confirmation note is a behavioral trait, not a usage guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_listAInspect
Returns bridges based on the transfer_type, a bridge is either an "on-ramp" (also called a "virtual account" and a funding source), an "off-ramp" (USDC transfer to a fiat bank account) or a "blockchain" (USDC transfer between blockchains). Bridges are only available on blockchain accounts
Returns bridges based on the transfer_type, a bridge is either an on-ramp, an off-ramp or a blockchain. Bridge on-ramps are also called "virtual accounts" @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk that will use the bridge (this is a database ID (int) not an account address (str) and may not be 0) @param transfer_type: The type of bridge, possible values are "off-ramp" for USDC and USDt transfers to SEPA/ACH bank accounts, "blockchain" for USDC cross blockchain transfers, "on-ramp" for FIAT deposits into virtual accounts (that instantly arrive as USDC)
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| transfer_type | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must carry the behavioral disclosure burden. It adds domain context (bridge types, availability on blockchain accounts) and notes that account_fk cannot be 0. However, it does not explicitly state that this is a read-only operation, nor does it describe side effects, rate limits, or response structure beyond 'a json object'. The information is helpful but incomplete for a fully transparent behavioral profile.
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 contains a duplicated introduction: the first paragraph defines bridge types, then the second paragraph repeats almost the same information ('Returns bridges based on the transfer_type, a bridge is either an on-ramp, an off-ramp or a blockchain. Bridge on-ramps are also called virtual accounts'). This redundancy makes the description unnecessarily long and poorly structured. While the parameter documentation is clear, the overall presentation is not concise.
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 list tool with five parameters and no output schema details, the description is largely complete. It explains bridge types, parameter origins, transfer_type options, and the account_fk constraint. The output schema indicator exists, so not detailing return structure is acceptable. However, redundancy and the lack of explicit alternative tool guidance slightly reduce completeness, so it does not reach a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description compensates thoroughly. Every parameter (@api_key, @token, @wallet_fk, @account_fk, @transfer_type) is explained with provenance (e.g., token from /access/login), constraints (account_fk is a database int and may not be 0), and allowed values (transfer_type lists off-ramp, blockchain, on-ramp with concrete meanings). This goes well beyond the bare schema and fully addresses parameter semantics.
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 'Returns bridges based on the transfer_type' with a specific verb and resource. It also defines each bridge type (on-ramp, off-ramp, blockchain), which distinguishes this listing tool from sibling operations like bridge_delete, bridge_rename, or bridge_on_ramp. The name 'bridge_list' plus the detailed explanation leaves no ambiguity about its function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: it returns bridges filtered by transfer_type. It also supplies important constraints like 'Bridges are only available on blockchain accounts' and explains the meaning of each transfer_type value. However, it does not explicitly mention alternatives or exclusionary guidance compared to other bridge-related tools, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_off_ramp_ach_wireAInspect
Creates a blockchain to FIAT off-ramp in the USA supporting both ACH/WIRE bank networks. Confirm (yes/no) before executing
Creates a blockchain to FIAT off-ramp in the USA support both ACH/WIRE bank networks. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk that will use the bridge @param account_owner: The owner of the recipient bank account @param account_number: The recipient bank account number @param routing_number: The recipient bank account routing number (us) or sort code (uk). @param address_line: The address of the recipient, street and must include a number @param address_city: The address of the recipient, city @param address_state: The address of the recipient, state @param address_zipcode: The address of the recipient, zip or postal code @param address_iso3_country: The address of the recipient, ISO3 country code @param alias: A descriptive name for this Bridge, can be anything, set by async default if none is provided. @param destination_rail: The destination rail to use, possible values are "ach_same_day" and "wire", async default is "ach_same_day" @param currency: The crypto currency to expect, possible values are "usdc","usdt", async defaults to "usdc" @param account_type: The recipient bank account type, possible values are "checking" or "savings", async defaults to "checking". Only applicable when destination_rail = "wire"
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| alias | No | ||
| token | Yes | ||
| api_key | Yes | ||
| currency | No | ||
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| account_type | No | ||
| address_city | Yes | ||
| address_line | Yes | ||
| account_owner | Yes | ||
| address_state | Yes | ||
| account_number | Yes | ||
| routing_number | Yes | ||
| address_zipcode | Yes | ||
| destination_rail | No | ||
| address_iso3_country | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the burden of behavioral disclosure. It does disclose a key behavior: 'Confirm (yes/no) before executing,' indicating an interactive confirmation step. It also mentions async defaults for several parameters. However, it does not explain the full execution flow, reversibility, or any side effects beyond creation, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with a clear first line but immediately repeats the same idea with a typo: 'support both ACH/WIRE bank networks.' This duplication wastes space. The @param list is necessary and well-organized, but the redundant opening sentence and overall length lower the conciseness score.
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 complex tool with 16 params and no annotation support, the description covers nearly all necessary context: parameter meanings, defaults, source of credentials (from /access/login), and confirmation requirement. An output schema exists, so the return format need not be detailed. Missing minor context like error conditions or prerequisites beyond login, but overall it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description thoroughly documents all 16 parameters with meaningful details: defaults for alias, destination_rail, currency, and account_type; allowed values for destination_rail and currency; and clarifications such as account_fk being a database ID and routing_number being US routing or UK sort code. This fully compensates for the schema's lack of descriptions.
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 a specific action: 'Creates a blockchain to FIAT off-ramp in the USA supporting both ACH/WIRE bank networks.' This distinguishes it from siblings like bridge_off_ramp_sepa and bridge_on_ramp by specifying the exact resource (blockchain-to-FIAT off-ramp) and rails (ACH/WIRE).
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 gives clear context for when to use the tool: for US-based off-ramps supporting ACH/WIRE networks. It does not explicitly name alternatives or exclusion criteria, but the geographic and rail specifics imply the appropriate use case, and the sibling name bridge_off_ramp_sepa reinforces the distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_off_ramp_sepaAInspect
Creates a blockchain (USDC) to FIAT off-ramp in Europe for SEPA supporting bank accounts. Confirm (yes/no) before executing
Creates a blockchain to FIAT off-ramp in Europe for SEPA supporting bank accounts. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk that will use the bridge @param account_owner: The owner of the recipient bank account @param iban: The recipient bank account IBAN @param iso3_country: The recipient bank account iso3 country code, examples BEL for Belgium @param iban_bic: The recipient bank account IBAN BIC. @param entity_type: The type of entity, possible values are "individual" or "business" @param address_line: The address of the recipient, street and must include a number @param address_city: The address of the recipient, city @param address_state: The address of the recipient, state @param address_zipcode: The address of the recipient, zip or postal code @param address_iso3_country: The address of the recipient, ISO3 country code @param alias: A descriptive name for this Bridge, can be anything, set by async default if none is provided. @param first_name: If type of entity is and "individual", provide the recipients first name @param last_name: If type of entity is an "individual", provide the recipients last name @param business_name: If type of entity is a "business", provide the business name, if not provided we will use the account_owner @param reference: The payment reference, displayed on the recipients bank statement.
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| iban | Yes | ||
| alias | No | ||
| token | Yes | ||
| api_key | Yes | ||
| iban_bic | Yes | ||
| last_name | No | ||
| reference | No | ||
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| first_name | No | ||
| entity_type | Yes | ||
| address_city | Yes | ||
| address_line | Yes | ||
| iso3_country | Yes | ||
| account_owner | Yes | ||
| address_state | Yes | ||
| business_name | No | ||
| address_zipcode | Yes | ||
| address_iso3_country | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full burden of behavioral disclosure. It discloses a key behavior: 'Confirm (yes/no) before executing,' and mentions async default for alias. Yet it omits details on permissions, reversibility, or side effects beyond creation, so the transparency is only partial.
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 starts with a clear purpose statement, but the same sentence is repeated almost verbatim after the confirmation note, wasting space. The @param list is well-structured but the redundancy reduces overall conciseness.
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?
While parameter semantics are thorough, the description lacks high-level workflow context such as prerequisites (e.g., having sufficient USDC) or what happens after confirmation. The output schema exists so return values need not be explained, but the overall operation context remains incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description provides detailed @param explanations for all 19 parameters, including conditional logic for entity_type (individual vs business) and clarifications like account_fk being a database ID. This adds substantial meaning beyond the bare input 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 states the tool 'Creates a blockchain (USDC) to FIAT off-ramp in Europe for SEPA supporting bank accounts,' using a specific verb and resource. It distinguished from siblings by explicitly naming SEPA and USDC, which differentiates it from tools like netfluid__bridge_off_ramp_ach_wire and netfluid__bridge_on_ramp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context by specifying Europe and SEPA-supporting bank accounts, implying when this tool should be used. However, it does not explicitly mention alternatives or when not to use it, so it stops short of full exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_on_rampAInspect
Creates a virtual account (SEPA/ACH/WIRE) to blockchain bridge. Confirm (yes/no) before executing
Creates a virtual account (SEPA/ACH/WIRE) to blockchain bridge. Limited to one virtual account per payment rail (SEPA/ACH/WIRE). @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk that will use the bridge @param blockchain: The blockchain that will receive the transfer. Possible values "ethereum","solana","avalanche_c_chain" @param address: The address on the above blockchain that will receive the transfer @param alias: A descriptive name for this Bridge, can be anything, set by async default if none is provided. @param currency: The destination currency, possible values are "usdc", "usdt" @param source_rail: The source rail, possible values are "sepa", "wire" or "ach_push"
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| alias | No | ||
| token | Yes | ||
| address | Yes | ||
| api_key | Yes | ||
| currency | No | ||
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| blockchain | Yes | ||
| source_rail | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It discloses a confirmation step ('Confirm (yes/no) before executing'), a business rule (one virtual account per payment rail), async default for alias, and clarifies that account_fk is an int database ID not an address. This is meaningful behavioral context, though it does not cover everything (e.g., reversibility, fees).
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 structured with a summary, @param list, and @return, but the opening sentence is duplicated ('Creates a virtual account...' appears twice), which wastes space and hurts conciseness. Still, it is reasonably organized and 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?
Given the tool's complexity (9 params, no annotations), the description is quite complete: it documents all parameters, constraints, and some behavioral details. It lacks explicit usage guidance and some operational context (e.g., prerequisites beyond parameters), but the presence of an output schema reduces the need to explain return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description's @param section explains every parameter, including possible values for blockchain, currency, and source_rail, plus the meaning of account_fk and the source of token/wallet_fk. This fully compensates for the lack of schema descriptions.
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 creates a virtual account (SEPA/ACH/WIRE) to blockchain bridge, with a specific verb and resource. It also mentions the limitation of one account per payment rail, distinguishing it from bridge deletion, listing, and off-ramp tools among siblings.
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 implies usage by describing the action and the confirmation requirement, but it does not explicitly state when to use this tool versus alternatives like off-ramp or bridge_blockchain. It provides a constraint (one per rail) but no direct when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__bridge_renameAInspect
Changes the Bridge's descriptive name. Confirm (yes/no) before executing
Changes the Bridge's descriptive name. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param external_account_id: The bridge's unique reference, found on /bridge/list @param alias: The new descriptive name for this Bridge
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| alias | Yes | ||
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| external_account_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure. It mentions a confirmation step and the mutation of a name, but does not disclose whether the operation is reversible, whether the bridge must exist, or any permission or side-effect details. The duplicated sentence consumes space that could have been used for additional behavioral context.
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 short but contains a redundant repetition of the main action: 'Changes the Bridge's descriptive name.' appears twice, once before and once after the confirmation note. This duplication is unnecessary and slightly harms structure, though the @param list is clearly organized.
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?
All parameters are explained and the return type is noted, with an output schema present to cover return details. However, the confirmation instruction is ambiguous (does the API require confirmation, or should the agent ask the user?), and there is no mention of prerequisites or error conditions. For a mutation tool with no annotations, this leaves notable gaps.
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 @param lines add meaningful context beyond the schema, explaining the source or purpose of each parameter (e.g., token from /access/login, external_account_id from /bridge/list, alias as the new name). Since the schema has 0% description coverage, this fully compensates and provides clear guidance for all five parameters.
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 changes a Bridge's descriptive name, using a specific verb and resource. It distinguishes from siblings like bridge_delete or bridge_list by focusing on the renaming action, and the duplicate sentence does not obscure this.
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 instruction 'Confirm (yes/no) before executing' provides some usage guidance, but there is no explicit advice on when to choose this tool over alternatives or when not to use it. Sibling tools such as bridge_delete and bridge_list are not referenced, leaving the usage context implicit rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__commodity_typesBInspect
Returns all authorised commodities
Returns all authorised commodities @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses that the operation returns data and returns a JSON object, but it does not explain authorization requirements, pagination, rate limits, or what 'authorised' means in practice. Given the lack of annotations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short, but the opening sentence is duplicated verbatim, which wastes a sentence. The @param and @return annotations could be considered structured documentation, but the duplicate line detracts from conciseness. It is not overly verbose, but the redundancy prevents a higher score.
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 one-parameter list operation with an output schema, this is minimally viable. It communicates the core action and parameter, and the output schema covers the return shape. However, it lacks usage context, behavioral notes, and the duplication reduces completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description meaningfully explains the api_key parameter as 'the api key allocated to your application'. This clarifies its purpose beyond the bare 'string' type in the schema. Since there is only one parameter, this compensation is adequate.
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 it 'Returns all authorised commodities', providing a specific verb and resource. It is distinguishable from sibling tools by the commodity resource, though it does not explicitly mention alternatives. The repetition of the same sentence is a minor flaw.
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?
There is no guidance on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or why one might choose this over related type-listing tools like netfluid__account_types or netfluid__currency_types. The only implicit usage is the tool's basic purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__complianceBInspect
Provides a link to Netfluid's compliance procedures and documentation This tools provides reference information in the "referenced_tools" schema @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior, but it only says 'provides a link' and 'reference information,' which is vague. It does not clarify whether it returns a URL, document, or structured data, nor does it mention side effects, permissions, or rate limits.
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 short but contains redundancy and a typo ('This tools'). The two sentences overlap in meaning and could be merged into one clear statement. It is not overly verbose but lacks polish.
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 no-parameter tool with an output schema, the description is minimal but somewhat cryptic, referencing a 'referenced_tools' schema without explaining it. It does not fully clarify what the user will receive, though the output schema may compensate.
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 schema already covers everything. The description adds no parameter detail, but none is needed. Baseline 4 applies.
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 provides a link to compliance procedures and documentation, identifying the resource and action. However, it does not explicitly distinguish it from sibling tools like privacy or terms, though compliance is distinct enough.
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?
There is no guidance on when to use this tool versus alternatives. The description implies it is for compliance information, but it does not mention exclusions or contrast with sibling tools such as privacy, terms, or help_ping.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_balanceBInspect
Returns a crypto wallet address balance associated with an account_fk
Returns a crypto wallet address balance associated with an account_fk @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must disclose behavioral traits. It only states that a balance is returned and mentions it returns a JSON object. It does not indicate whether this is read-only, what happens on invalid account_fk, or any side effects. It fails to add behavioral context beyond the obvious.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is duplicated verbatim, creating unnecessary repetition. The @param and @return structure is clear and readable, but the redundant opening line detracts from conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the description covers purpose and parameters adequately. However, it lacks usage guidance and any behavioral context such as errors or prerequisites. The presence of an output schema mitigates the need for return field details, but overall the description is minimally viable rather than comprehensive.
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 0% description coverage, but the description compensates fully. It explains api_key as 'allocated to your application', token as provided by /access/login, and gives detailed, crucial context for account_fk: it is a database ID, not an address, and may not be 0. This adds meaningful semantics beyond the raw schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Returns a crypto wallet address balance associated with an account_fk.' This clearly identifies the tool's function. It does not explicitly distinguish from the sibling tool netfluid__crypto_token_balance, though the name and resource hint at the distinction, so it loses a point for lack of explicit differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as crypto_token_balance or wallet_accounts_list. There are no prerequisites, exclusions, or context indicating when this tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_blockchainsAInspect
List all the system supported blockchains, a list of blockchain_fk values
List all the supported blockchains, each entry returns a blockchain_fk for later use @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the burden of behavioral disclosure. The verb 'List' clearly indicates a read-only operation, and the description adds context by stating that each entry returns a blockchain_fk 'for later use', hinting at the purpose. It does not disclose rate limits or error handling, but for a simple list, the behavior is largely transparent. No contradiction with annotations.
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 short but redundant, effectively stating the same thing twice in the first two sentences. It front-loads the purpose, which is good, but the duplication wastes space. The param/return sections are useful and structurally clear. Overall, it is not maximally concise due to the repetition.
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 list tool with one parameter and an output schema, the description is fairly complete. It explains the parameter, the nature of the return (blockchain_fk values), and notes the output is JSON. Since an output schema exists, detailed return format is not needed. It does not cover edge cases, but none are strongly expected for a list of supported blockchains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only defines api_key as a required string with no description, and schema coverage is 0%. The description compensates by explaining that api_key is 'the api key allocated to your application', adding meaningful context. This is sufficient for the single parameter and goes beyond the schema's bare definition.
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 lists all supported blockchains and returns blockchain_fk values for later use. It uses a specific verb ('List') and resource ('supported blockchains'), and the repetition reinforces the purpose without ambiguity. It differentiates from sibling tools by focusing specifically on blockchain identifiers rather than digital assets or crypto info.
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 implies usage (to obtain blockchain_fk values for later use) but provides no explicit guidance on when to choose this over alternatives. It does not mention any exclusions or alternative tools. For a simple list tool, the implied context is adequate but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_dex_swapBInspect
Swaps a token for another token using a Distributed Exchange (DEX) on the blockchain. Confirm (yes/no) before executing
Swaps a token (not a digital asset) for another token using a Distributed Exchange (DEX) on the blockchain. The DEX charges fees in performing the swap Unsupported tokens will not be displayed in balances, a blockchain explorer will be required to retrieve these @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk associated with this blockchain wallet @param from_token: The origin token mint or contract address @param to_token: The destination token mint or contract address @param amount: The amount of the token to swap
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| to_token | Yes | ||
| account_fk | Yes | ||
| from_token | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses that the DEX charges fees, unsupported tokens are not displayed in balances, and a confirmation is required. However, it omits important behavioral traits for a financial mutation: reversibility, slippage tolerance, network confirmation delays, or whether funds are locked. This is partial but not comprehensive.
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 opening sentence is duplicated almost verbatim: 'Swaps a token for another token...' appears twice with a minor parenthetical addition. This redundancy wastes space and reduces clarity. The @param blocks are useful, but the repeated sentence is a clear structural defect.
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 covers the core function, all six parameters, fees, unsupported-token behavior, and confirmation. Since an output schema exists, the lack of detailed return info is acceptable. However, it omits operational details like slippage or network confirmation expectations, making it only partially complete for a financial transaction with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates thoroughly by documenting every parameter with meaningful context. For example, account_fk is explained as 'a database ID (int) not an account address (str) and may not be 0', and token is identified as 'the wallet_api_token provided by /access/login'. This is essential semantic value beyond the raw schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Swaps a token for another token using a Distributed Exchange (DEX) on the blockchain.' It adds the qualifier 'token (not a digital asset)' and specifies the DEX mechanism, which helps differentiate from siblings like netfluid__crypto_swap. However, the distinction is not explicit enough to fully exclude all alternative swap 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?
No guidance is given on when to use this tool versus alternatives such as netfluid__crypto_swap or netfluid__account_swap. The description mentions a confirmation step ('Confirm (yes/no) before executing') but does not discuss prerequisites, exclusions, or typical use cases. Sibling tools are not referenced.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_digitalasset_infoCInspect
List the digital asset's information based on a blockchain_fk and digital_asset_fk
List the digital asset's information based on a blockchain_fk and digital_asset_fk @param api_key: The api key allocated to your application @param blockchain_fk: The blockchain_fk on which this digital_asset_fk resides @param digital_asset_fk: The digital_asset_fk for this digital asset
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes | ||
| blockchain_fk | Yes | ||
| digital_asset_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It communicates a read operation ('List') but does not disclose error behavior, authentication specifics beyond the api_key parameter, rate limits, or response structure beyond 'a json object'. This is insufficient for a tool with no annotation support.
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 first sentence is duplicated verbatim, wasting space and undermining conciseness. While the parameter list is brief, the redundancy and lack of structured formatting reduce readability and efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is an output schema, but the description only says 'a json object'. For a three-parameter tool with no annotations, the description should clarify usage context, expected results, and potential failure modes. It falls short of providing a complete picture.
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 @param descriptions add minimal value beyond the schema: api_key is clarified, but blockchain_fk and digital_asset_fk are described somewhat tautologically ('The digital_asset_fk for this digital asset'). With 0% schema description coverage, the description does not adequately compensate for the lack of parameter documentation.
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 it 'List the digital asset's information' based on blockchain_fk and digital_asset_fk, which is a specific verb+resource+scope. It distinguishes itself from sibling tools like crypto_digitalassets by specifying a single-asset lookup rather than a general list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. It does not mention scenarios, prerequisites, or exclusions, leaving the agent to infer usage purely from the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_digitalassetsBInspect
List all the supported digital assets, a list of digital_asset_fk also applicable to to_digital_asset_fk
List all the supported digital assets, each entry returns a digital_asset_fk for later use @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It only mentions that it returns 'a json object' and requires an api_key. It does not disclose pagination, rate limits, or whether the list is static or filtered. The read-only nature is implied by 'list all', but details are sparse.
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 repeats the same 'List all the supported digital assets' sentence twice with only slight variation. This redundancy does not add value and wastes space. The @param and @return sections are conventional but the duplication hurts conciseness.
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?
An output schema exists, so return values are likely documented there. The description adds the useful note about reusing digital_asset_fk in other endpoints. However, it omits any mention of error handling, pagination, or response structure, which would be helpful for a list endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the tool description explicitly documents api_key as 'The api key allocated to your application'. This adds meaningful context beyond the bare string type, and for a single parameter, it is sufficient.
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 verb and resource: 'List all the supported digital assets' and explains that each entry returns a digital_asset_fk. This distinguishes it from sibling tools like crypto_digitalasset_info (which likely retrieves a single asset). However, the wording is redundant and includes a confusing 'to_digital_asset_fk' phrase.
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 indicates the returned digital_asset_fk is 'applicable to to_digital_asset_fk' and 'for later use', implying this list is a prerequisite for other operations. It does not explicitly state when to use this tool versus alternatives like crypto_digitalasset_info or crypto_balance, but the list-all purpose is reasonably clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_from_keyAInspect
Recovers any blockchain wallet from a private key or mnemonic, display only, no action is taken
Recovers any blockchain wallet from a private key or mnemonic, display only, no action is taken The order of recover is to use the mnemonic first, private key second. One or the other must be provided. No action is taken. The suppo @param api_key: The api key allocated to your application @param blockchain_fk: The blockchain to use for the recovery @param private_key: The private key to recover from, urlencoded @param mnemonic: The key word mnemonic to recover from, keywords separated by a space
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes | ||
| mnemonic | No | ||
| private_key | No | ||
| blockchain_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and discloses key behaviors: 'display only, no action is taken' (repeated), 'No action is taken,' and the precedence of mnemonic over private key. However, it is fragmented and truncates mid-sentence ('The suppo'), which slightly reduces clarity.
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 poorly structured: the first sentence is duplicated verbatim, there is an incomplete phrase ('The suppo'), and the @param block is appended without formatting. While not overly long, the redundancy and truncation undermine conciseness and readability.
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 4-parameter tool with an output schema, the description covers the essential purpose, safety (no action), and parameter usage. However, it omits details like accepted blockchain_fk values or error conditions, and the truncation leaves a gap. It is adequate but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It includes @param lines that add valuable details: api_key is 'allocated to your application', private_key must be 'urlencoded', and mnemonic keywords are 'separated by a space'. It also clarifies that exactly one of mnemonic/private_key is required. This goes beyond the bare schema definitions.
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 recovers a blockchain wallet from a private key or mnemonic, with the caveat 'display only, no action is taken.' The verb 'recovers' and resource 'blockchain wallet' are specific, but it does not differentiate from sibling tools like access_recover or wallet_mnemonic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: 'The order of recover is to use the mnemonic first, private key second. One or the other must be provided.' This clarifies when to use which parameter, but it does not mention when to avoid this tool or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_infoBInspect
Returns a crypto wallet address and balances associated with an account_fk
Returns a crypto wallet address and balances associated with an account_fk @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk for the account as provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior. It implies a read-only operation by saying 'Returns', and it constrains account_fk to non-zero int, but it does not mention authentication requirements, potential errors, rate limits, or whether any side effects occur. This is minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description has a clear structure with @param and @return, but the opening sentence is duplicated verbatim, wasting characters. It is otherwise succinct and front-loaded with the main purpose, but the redundancy prevents a higher score.
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 covers all required parameters and their origins, and an output schema exists so the return is already structured. However, it does not clarify how this tool differs from similar crypto tools (crypto_balance, crypto_token_balance, crypto_digitalasset_info), so the contextual guidance is incomplete.
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 offers no property descriptions (0% coverage), but the @param lines fully compensate. Each parameter is explained with its source and constraints (e.g., account_fk is an int database ID not an address and may not be 0, token from /access/login). This adds significant meaning 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 states the tool returns a crypto wallet address and balances for a given account_fk, using a specific verb and resource. However, it does not explicitly distinguish this from sibling tools like crypto_balance or crypto_token_balance, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides useful context that account_fk is a database ID from /wallet/accounts_list and token comes from /access/login, which implies prerequisites. But it lacks explicit when-to-use guidance or alternatives, leaving the choice among crypto-related tools to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_optinAInspect
Opts the blockchain wallet into a digital asset (token). Confirm (yes/no) before executing
Opts the blockchain wallet into a digital asset. This is typically required to be performed before the blockchain wallet will accept or hold this digital asset. Blockchains either charge a fee or wit @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk associated with this blockchain wallet @param asset_id: The asset_id or contract address of the digital asset (token) on this blockchain can be found from /crypto/digitalassets
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| asset_id | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses the prerequisite nature and attempts to mention fees ('Blockchains either charge a fee or wit'), but the sentence is truncated and incomplete. It does not cover reversibility or what happens if already opted in.
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 repeats the same purpose in two consecutive sentences, and the fee sentence is cut off mid-phrase. While the @param section is structured, the redundancy and truncation reduce clarity and hinder scanning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity and absence of annotations, the description covers purpose, context, fee mention, all parameters, and return type. However, the truncation and lack of error handling or failure behavior leave gaps. An output schema exists but its content is not visible.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the @param documentation in the description is essential. It adds meaningful context: account_fk is a database ID not an address and may not be 0, and asset_id can be looked up via /crypto/digitalassets. This goes beyond the raw 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 states the action: 'Opts the blockchain wallet into a digital asset (token)' with a specific verb and resource. It is distinct from related tools like optout, but does not explicitly differentiate from siblings.
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?
Provides clear context: 'This is typically required to be performed before the blockchain wallet will accept or hold this digital asset.' Also instructs to confirm yes/no before executing. However, it does not mention when not to use or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_optoutAInspect
Opts the blockchain wallet out of holding a digital asset. Confirm (yes/no) before executing
Opts the blockchain wallet out of holding a digital asset. Ensure that the blockchain wallet has a zero balance of this asset, before performing this action as value may be lost. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk associated with this blockchain wallet @param asset_id: The asset_id or contract address of the digital asset on this blockchain, can be found from /crypto/digitalassets
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| asset_id | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
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 warns about potential value loss, requires a zero balance, and mentions a confirmation step. These are important behavioral traits. However, it does not detail the exact mechanics of the opt-out or whether the operation is reversible, so it is not fully transparent.
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 reasonably structured with @param lines, but it contains clear redundancy: the first sentence is repeated verbatim, and the `account_fk` phrasing is duplicated. The @return line ('a json object') adds little value. Tightening the repeated content would make it more concise while preserving the useful parameter details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a moderately complex tool with no annotations, the description covers purpose, parameters, safety warnings, and confirmation. It lacks explicit differentiation from sibling tools or details about the exact return structure, but the output schema exists, so the description is complete enough for an agent 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.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 0% schema description coverage, the description thoroughly documents all four parameters. It clarifies that `account_fk` is a database integer, not an account address, and cannot be 0. It also specifies the source for `token` and how to find `asset_id`. This goes well beyond the bare schema and gives an agent the necessary details to correctly supply parameters.
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 action: 'Opts the blockchain wallet out of holding a digital asset.' This specifies a concrete verb and resource, and the action is distinguishable from the sibling tool `netfluid__crypto_optin`, which performs the opposite operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: a confirmation step ('Confirm (yes/no) before executing') and a critical precondition ('Ensure that the blockchain wallet has a zero balance... before performing this action as value may be lost'). While it does not mention alternatives or exclusions, the preconditions and confirmation flow give clear guidance on when and how to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_spendAInspect
Spends a digital asset to a destination blockchain address. Confirm (yes/no) before executing
Spends a digital asset to a destination blockchain address @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk of the sender or from account @param asset_id: The asset_id or contract address of the digital asset (token) on this blockchain, asset_id can be found from /crypto/digitalassets look for "address" in the response @param destination: The destination blockchain address (not the internal account address) @param amount: The amount of the digital asset to send, this amount is 10 to the power of the assets decimals, the asset's decimals can be found from /crypto/digitalassets look for "decimals" in the response. @param note: The note on the transaction
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| asset_id | Yes | ||
| account_fk | Yes | ||
| destination | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It does add behavioral context: 'Confirm (yes/no) before executing' indicates a confirmation step, and the parameter docs clarify that amount is scaled by decimals and destination is an external blockchain address. However, it does not warn about irreversibility, fees, or required balance, which are important for a spend operation.
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 contains redundancy: the first sentence is repeated verbatim after the confirmation note. The parameter documentation is verbose but necessary, and the @return is useless ('a json object'). The repetition wastes space and disrupts front-loading.
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 tool has 7 parameters, no annotations, and an output schema exists. The description covers all parameters and some behavioral context (confirmation), but lacks important operational context for a financial operation: irreversibility, fees, balance requirements, or possible errors. It is adequate as a parameter reference but not fully complete for safe usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description compensates excellently by explaining all 7 parameters. It clarifies that account_fk is a database ID not an address, asset_id can be found via /crypto/digitalassets, amount is scaled by 10^decimals, and destination is a blockchain address not an internal account address. This adds significant meaning beyond the schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Spends a digital asset to a destination blockchain address.' This is a specific verb+resource+destination. However, it does not explicitly differentiate from siblings like account_send or crypto_swap, but the mention of 'blockchain address' distinguishes it from internal transfers.
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 usage context is implied by the description: you would use this tool when you need to spend a digital asset to a blockchain address. However, there are no explicit alternatives, scenarios, or exclusions mentioned. The description lacks guidance on when not to use it or which sibling tool might be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_swapAInspect
Swaps a digital asset for another using a Distributed Exchange (DEX) on the blockchain. Confirm (yes/no) before executing
Swaps a digital asset for another using a Distributed Exchange (DEX). The DEX charges fees in performing the swap This tools forces the use of a swap via a blockchain DEX, rather try /account/swap to swap between digital assets @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk associated with this blockchain wallet @param digital_asset_fk: The origin digital_asset_fk, get value from /crypto/digitalassets @param to_digital_asset_fk: The destination digital_asset_fk, get value from /crypto/digitalassets @param amount: The amount of the digital asset to swap
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| digital_asset_fk | Yes | ||
| to_digital_asset_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It discloses a confirmation step ('Confirm (yes/no) before executing'), DEX fees, and the DEX-forcing constraint. It also clarifies that account_fk is a database ID, not an address. However, it does not mention permissions, reversibility, or failure modes, so transparency is moderate.
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 first sentence is duplicated, creating redundancy. Despite this, the overall structure is clear, with a param list that segments information logically. The duplication is a notable flaw, but the description is not excessively verbose overall.
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 covers essential operational details: purpose, DEX constraint, fees, confirmation, and parameter sourcing. Since an output schema exists, return value details are not required. The main gap is the lack of differentiation from netfluid__crypto_dex_swap, but overall this is sufficient for an agent to invoke the tool in most situations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero description coverage, but the description provides detailed meanings for all six parameters, including source endpoints (e.g., get digital_asset_fk from /crypto/digitalassets) and critical type clarifications (account_fk is a database ID and may not be 0). This goes beyond the schema and is useful for correct invocation.
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 that the tool swaps a digital asset for another via a blockchain DEX, using a specific verb and resource. It explicitly contrasts with /account/swap, but does not differentiate from the similarly named sibling netfluid__crypto_dex_swap, leaving some ambiguity about the exact boundary between the two.
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 mentions that this tool forces DEX swap and suggests using /account/swap for swapping between digital assets, giving some guidance on tool selection. However, it lacks explicit 'use this when...' criteria and does not address the relationship with the sibling netfluid__crypto_dex_swap, leaving potential confusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_token_balanceAInspect
Retrieves a token (asset_id) balance on the blockchain, given a asset_id or token or contract address
Retrieves a token (asset_id) balance on the blockchain, given a asset_id or token or contract address This tool will retrieve any token balance from the blockchain, even those not support by Netfluid @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk associated with this blockchain wallet @param asset_id: The asset_id or contract address of the digital asset on this blockchain, can be found from /crypto/digitalassets
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| asset_id | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the transparency burden. It discloses that the tool retrieves balances for unsupported tokens, that account_fk is a database ID not an address and may not be 0, and lists authentication parameters. However, it does not explicitly state read-only behavior or potential errors/limitations beyond those parameters.
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 first sentence is duplicated verbatim, which wastes space. The @param format is clear and front-loaded, but the duplicate sentence and vague @return ('a json object') detract. Overall it is acceptable but not taut.
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 tool is a simple balance lookup with four required params, all explained. The description clarifies key nuances (account_fk type, asset_id forms, authentication tokens) and notes it covers unsupported tokens. The output schema exists, so the vague return description is acceptable. It does not discuss blockchain-specific behavior, but that is not necessary for basic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description's @param block adds substantial meaning for all four parameters: api_key is application-level, token is a wallet API token from /access/login, account_fk is an integer database ID with specific constraints, and asset_id can be a contract address. This fully compensates for the schema's lack of descriptions.
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 retrieves a token balance on the blockchain, using a specific verb ('Retrieves') and resource ('token (asset_id) balance'). It also specifies input types (asset_id, token, or contract address) and notes it works for any token even unsupported by Netfluid, which differentiates it from sibling 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?
Provides context on when to use it: when you need a token balance for any asset, including unsupported tokens. It does not explicitly name alternatives or exclusions, but the context is clear enough. Since netfluid__crypto_balance exists as a sibling, a direct comparison would have been stronger.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__crypto_verifyAInspect
Verifies a blockchain address as valid for the blockchain
Verifies a blockchain address as valid for the blockchain. Can be any address on that blockchain, if successful it returns a balance of its crypto and digital assets. @param api_key: The api key allocated to your application @param address: The blockchain address @param blockchain_fk: The blockchain_fk of the supported blockchain.
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | ||
| api_key | Yes | ||
| blockchain_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the burden of behavioral disclosure. It discloses that success returns a balance, but does not explain failure modes, side effects (though likely read-only), authentication requirements beyond the api_key parameter, or error behavior. This is a moderate gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is duplicated verbatim ('Verifies a blockchain address as valid for the blockchain' appears twice), wasting space. The rest is reasonably compact, but the repetition is an unnecessary flaw.
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 relatively simple tool, the description covers core functionality and return type (JSON), and an output schema exists so return details need not be spelled out. However, the blockchain_fk ambiguity and lack of error/edge-case context make it only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It clarifies 'api_key' and 'address' but gives only a tautological explanation for 'blockchain_fk': 'The blockchain_fk of the supported blockchain.' This leaves the integer foreign key ambiguous – the agent cannot know which blockchains are supported or how to select a valid value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Verifies a blockchain address as valid for the blockchain' – a specific verb and resource. It also adds that it works for any address and returns a balance, which differentiates it from balance-only tools like crypto_balance.
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 phrase 'Can be any address on that blockchain' provides clear usage context, implying it's for general address verification without restrictions. No exclusions or alternatives are mentioned, but the context is clear enough for an agent to decide when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__currency_cryptoBInspect
Returns a live price in USD for a based commodity
Returns a live price in USD for a based commodity @param api_key: The api key allocated to your application @param code: The crypto code e.g BTC, ETH, ALGO, HBAR
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | ||
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits, but it only states that a live price is returned and that the result is a JSON object. It does not mention read-only nature, authentication requirements beyond the api_key parameter, rate limits, error behavior, or what 'based commodity' means. The description is minimal and lacks safety or side-effect context.
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 short and front-loaded with the main purpose. It uses a clear @param and @return structure. However, the first sentence is duplicated verbatim, which adds unnecessary redundancy and slightly reduces clarity.
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?
Despite being a simple two-parameter lookup tool, the description covers the essential purpose and parameter meanings. It does not explain the response structure or error cases, but since an output schema exists, that isn't strictly required. The overall completeness is adequate for a simple price query, though a bit more context on the 'based commodity' term would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains both parameters: api_key as 'the api key allocated to your application' and code as 'the crypto code' with concrete examples (BTC, ETH, ALGO, HBAR). This adds meaningful context beyond the bare schema, which just lists string types without descriptions.
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 'Returns a live price in USD for a based commodity' and gives concrete examples of crypto codes (BTC, ETH, ALGO, HBAR), making the purpose obvious. It is distinct from sibling tools like currency_forex or currency_rates by specifically focusing on crypto, though the term 'based commodity' is slightly awkward.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that this is specifically for crypto prices or that other tools exist for forex or general rates. No exclusions or contextual usage hints are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__currency_forexCInspect
Returns a live forex price for a commodity in USD
Returns a live forex price for a commodity in USD @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description bears the full burden. It discloses that it returns a live price and that the output is a JSON object, but it does not mention error handling, authentication beyond the api_key, rate limits, or the meaning of 'commodity'. The repeated sentence adds no extra behavioral insight.
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 short and front-loads the key purpose, but the same sentence is repeated verbatim, which is redundant and wastes space. It earns a middle score because it is still brief and structured clearly, but the duplication is unnecessary.
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 tool is simple, but the description lacks critical details: how to query a specific commodity, what the JSON output structure is (despite having an output schema), and any usage constraints. With 0% schema description coverage, the description should compensate, but it does not.
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 only parameter is api_key, and the description adds a generic '@param api_key: The api key allocated to your application'. This provides minimal value beyond the schema, and there is no explanation of how to specify which commodity or currency, leaving a significant gap in understanding the tool's input requirements.
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 with a specific verb ('Returns') and resource ('live forex price for a commodity in USD'). It is distinct from many siblings by mentioning 'commodity' and 'USD', though it does not explicitly differentiate from netfluid__currency_rates or clarify what qualifies as a commodity.
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?
There is no guidance on when to use this tool versus alternatives such as netfluid__currency_rates or netfluid__currency_crypto. The description only states what it does without any context about preferred scenarios, exclusions, or prerequisites beyond providing an api_key.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__currency_ratesBInspect
Returns a live forex price for a commodity in USD against our rates, XAU and XAG is returned as price in USD per gram. Returns "our_rate", the Netfluid rate, use "our_rate" in all forex conversion
Returns a live forex price for a commodity in USD against our rates @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does disclose the live nature, special units for XAU/XAG, and the key 'our_rate' field. However, it omits other behavioral context such as rate basis, update frequency, error conditions, or limits, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description repeats the exact same sentence twice: 'Returns a live forex price for a commodity in USD against our rates.' This redundancy wastes space. The generic '@return: a json object' adds little value and could be omitted.
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 tool only accepts api_key, yet the description refers to 'a commodity' without clarifying how commodities are selected or which ones are covered beyond XAU/XAG. An output schema exists, but the description still lacks a clear scope of what is returned and how the rate applies, leaving ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description explicitly explains the only parameter: '@param api_key: The api key allocated to your application.' This adds meaning beyond the schema's type-only definition, though it doesn't specify where to obtain the key or its format.
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 a specific action: 'Returns a live forex price for a commodity in USD against our rates.' It adds meaningful details like XAU/XAG being returned as USD per gram and the 'our_rate' field, which distinguishes it from sibling currency tools like netfluid__currency_forex.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It mentions 'use our_rate in all forex conversion' but that is an instruction after retrieving the rate, not a usage condition. No exclusions or alternative tool references are included.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__currency_typesBInspect
Returns all system currencies
Returns all system currencies @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the burden of behavioral disclosure. It states the operation (returns currencies) and the return format (a json object), but does not discuss safety, side effects, authentication nuances, or limitations. It is not misleading but leaves gaps about what exactly 'system currencies' includes and any potential restrictions.
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 short but contains an unnecessary duplication: 'Returns all system currencies' appears twice verbatim. The @param and @return lines are useful and well-structured, but the repetition suggests a lack of editing. Overall, it is acceptable but not crisp.
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 one-parameter read-only tool, the description covers the basic operation and return type, and since an output schema exists, detailed return structure is not needed. However, it lacks information on how this tool relates to the many currency-related siblings and does not clarify the scope of 'system currencies,' making it only minimally complete.
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 one parameter, api_key, with no description. The description adds 'The api key allocated to your application,' which is minimal and largely reinforces the parameter name. It does not explain how to obtain the key, its scope, or any format requirements, so the added semantic value is low.
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 'Returns all system currencies' with a specific verb and resource. The qualifier 'all system' plus the name distinguishes it from sibling tools like currency_forex or currency_crypto, indicating a general listing of all system currencies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as netfluid__currency_forex or netfluid__currency_crypto. There is no mention of exclusions, prerequisites, or scenarios where this tool is preferred, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__emailCInspect
Sends email to the wallet owner
Sends email to the wallet owner @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param message: The message body in html, encoded into base64 @param subject: The message subject in plain text (not url or base64 encoded)
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| message | Yes | ||
| subject | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden of behavioral disclosure. It mentions the email sends and specifies encoding requirements, but does not disclose potential side effects, failure modes, authentication requirements beyond the parameters, or any rate limits. This is a meaningful gap for a mutation-like operation.
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 fairly short, but the opening phrase 'Sends email to the wallet owner' is duplicated verbatim, which is unnecessary and wastes the reader's attention. The rest is structured clearly with @param and @return sections, but the repetition prevents a higher score.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no annotations, and no guidance on when to use it, the description is not fully self-sufficient. It explains what each parameter does and notes the return type, but lacks usage guidelines, behavioral effects, and differentiation from sibling tools. An output schema exists, so return details are covered, but the overall context remains incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions are absent (0% coverage), so the description's parameter documentation is valuable. It explains that 'token' and 'wallet_fk' come from /access/login, that 'message' is HTML base64-encoded, and 'subject' is plain text, adding crucial semantics the JSON schema itself does not provide. It stops short of describing constraints like length limits or exact formats, but compensates well for the schema gap.
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 'Sends email to the wallet owner' with a specific verb and resource, making the core purpose unmistakable. However, it does not differentiate from the sibling tool 'netfluid__send_email', which likely performs a similar email-sending function, so it misses the distinction needed for a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as 'netfluid__send_email' or 'netfluid__push_message_send'. It does not mention prerequisites beyond the listed parameters or any scenarios for which it is specifically intended, so the usage context is entirely absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__feesCInspect
Provide the Netfluid fee structure @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden, but it discloses no behavioral traits: no authentication needs, rate limits, safety profile, or response semantics beyond the generic '@return: a json object' which is redundant with the output schema. This adds essentially zero value beyond the structured fields.
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 appropriately terse with two short lines, front-loading the purpose and including a return type annotation. No wasted words, though it borders on under-specification rather than concise clarity.
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?
Despite having zero parameters and an output schema, the description is incomplete because it doesn't clarify the scope of the fee structure or differentiate from the closely named sibling tool 'netfluid__wallet_fee'. An agent cannot determine what specific fees are covered, making the description insufficient for proper tool selection.
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 baseline is 4. The description naturally doesn't add parameter details, but there is nothing to explain since the input schema is empty.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool's function with a specific resource ('Netfluid fee structure') and a clear verb ('Provide'). However, it does not explicitly differentiate from the sibling tool 'netfluid__wallet_fee', so it doesn't earn a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. The description lacks any context for invocation, prerequisites, or exclusions, leaving the agent without direction on selecting this tool over its siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__fund_banksAInspect
Returns a list of local and international bank accounts.
Returns a list of local and international bank accounts. Do not display blank fields. Customer MUST provide the reference as the beneficiary reference. Payments received, minus bank charges, are au @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses non-obvious behaviors: 'Do not display blank fields' indicates output filtering, 'Customer *MUST* provide the reference as the beneficiary reference' is a critical usage constraint, and the payment charges note adds context. The @param block also clarifies that account_fk is a database ID, not an address, and may not be 0. The truncation of the payment sentence slightly reduces completeness.
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 repeats the first sentence ('Returns a list of local and international bank accounts') twice, which is redundant. It also contains a truncated sentence ('Payments received, minus bank charges, are au') that cuts off abruptly, indicating incomplete editing. The structure mixes prose with @param blocks in a way that is informative but not concise.
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 tool has an output schema, so return value details are not required. The description covers purpose, key usage notes, and parameter semantics. However, the truncated sentence about payments leaves a behavioral detail unresolved, and there is no mention of any pagination or filtering behavior. The description is adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the @param block is essential and well-executed. It explains api_key as your application key, token as the wallet_api_token from /access/login, and account_fk as a database ID (int) not an account address and may not be 0, with provenance. This fully compensates for the schema's lack of descriptions.
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 'Returns a list of local and international bank accounts' with a specific verb and resource. This distinguishes it from account-related siblings like wallet_accounts_list, which focus on wallet accounts, and withdraw_to_bank, which initiates transfers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It does include instructions like 'Do not display blank fields' and the customer reference requirement, but these are operational details, not tool-selection criteria. Sibling tools are not mentioned, so the agent lacks context for choosing this over similar list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__fund_card_quoteAInspect
Returns a quote for a VISA/Mastercard card charge.
STEP 1 in charging a tokenised Visa/Mastercard. Returns a quote for a VISA/Mastercard card charge. Cards are charged in ZAR. A fee is levied for each charge. This end point only performs a quote, no cards are charged. The quote is valid for 10 minu @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk provided by /wallet/accounts_list @param amount: The amount in currency of the account_fk. All cards are charged in ZAR but a conversion of this amount to ZAR will be automatically performed. On top of this amount a fee with be charged equal to 3.5% for fees and insurance plus South African VAT of 15% (only on the fee portion).
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully covers the behavioral safety profile: it explicitly states this is a quote-only operation with no charging, details the fee structure (3.5% + 15% VAT), mentions the 10-minute quote validity, and clarifies that conversion to ZAR is automatic. This is critical, non-obvious behavior disclosed clearly.
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 opens with a clear summary but then repeats the exact same sentence 'Returns a quote for a VISA/Mastercard card charge' verbatim, adding redundancy. The parameter list is structured and helpful, but the duplication could be trimmed without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists, return-value documentation is not needed. The description covers the operation's purpose, non-charging nature, fees, quote validity, and parameter semantics comprehensively. It does not explicitly cross-reference the actual charge tool in the workflow, which is a minor completeness gap, but the tool's own context is well covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the inline parameter documentation is essential. It adds strong context for account_fk (database ID, not an address, never 0, sourced from /wallet/accounts_list) and amount (currency, ZAR conversion, fee calculation). api_key and token get minimal explanation, and wallet_fk is tautological, but overall the description compensates for the schema gap effectively.
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 it 'Returns a quote for a VISA/Mastercard card charge' and emphasizes it is 'STEP 1' and that 'no cards are charged', effectively distinguishing it from charge-related sibling tools. The verb+resource are specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says this is 'STEP 1 in charging a tokenised Visa/Mastercard' and that it 'only performs a quote, no cards are charged', making the intended usage clear. However, it does not name the exact charge tool (e.g., netfluid__fund_card_recharge) as an explicit alternative, so a direct when-not-to-use pointer is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__fund_card_rechargeAInspect
Charges a tokenised Visa/Mastercard. Confirm (yes/no) before executing
STEP 2 Charges a tokenised Visa/Mastercard, use /card/quote before this end point The card must have been previously charged using /fund/card_3D_secure_complete @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk provided by /wallet/accounts_list @param wallet_card_id: The wallet_card_id associated with this wallet, can be found with wallet/card_list @param amount: The amount in currency of the account_fk. All cards are charged in ZAR but a conversion of this amount to ZAR will be automatically performed. On top of this amount a fee with be charged equal to 3.5% for fees and insurance plus South African VAT of 15% (only on the fee portion). @param note: The note on the transaction
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| wallet_card_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the fee structure (3.5% plus 15% VAT on the fee), currency conversion behavior, and the prerequisite that the card must have been previously charged via 3D secure. This is significant behavioral context beyond simple 'charges'. However, it does not mention reversibility, failure handling, or idempotency.
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 front-loads the primary purpose but contains redundancy: 'Charges a tokenised Visa/Mastercard' appears twice, and the 'STEP 2' line repeats it. Grammar issues like 'a fee with be charged' add noise. It is not poorly sized but could be tightened to a single clear statement plus prerequisites.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and an output schema that is present but unhelpful ('a json object'), the description covers the required sequence, prerequisites, fees, and all parameter origins. It lacks details on success/failure response shapes, but the output schema exists and the essential operational context is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the @param documentation is essential. Each parameter is explained: account_fk is explicitly distinguished as a database ID not an address, wallet_card_id is tied to wallet/card_list, amount explains conversion and fee computation, and token/api_key specify their provenance. This fully compensates for the missing schema descriptions.
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 explicitly states 'Charges a tokenised Visa/Mastercard' and clarifies it is STEP 2 after /card/quote, distinguishing it from the quote endpoint and other fund tools. The verb+resource is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides prerequisite guidance: 'use /card/quote before this end point' and 'card must have been previously charged using /fund/card_3D_secure_complete'. It also instructs to 'Confirm (yes/no) before executing', indicating a required user confirmation. However, it does not explicitly name alternative tools or when not to use this tool relative to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__fund_ottAInspect
Funds an account with an OTT Voucher. Confirm (yes/no) before executing
Funds an account with an OTT Voucher. Only available in South Africa and can only be redeemed against any currency account, the system will perform the currency conversion @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk provided by /wallet/accounts_list @param pin: The OTT voucher PIN @param mobile: The South Africa mobile number associated with this customer
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| token | Yes | ||
| mobile | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries full transparency burden. It discloses a confirmation step, currency conversion behavior, and geographic restriction. These are meaningful behavioral traits not inferable from the schema. It doesn't cover failure modes, but the disclosed details are substantial.
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 structure is clear with a lead statement, behavioral note, and parameter list. However, the opening sentence is duplicated exactly in the second paragraph, adding unnecessary repetition. Otherwise, every part serves a purpose and the @param block is well-organized.
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 covers purpose, restrictions, parameter semantics, and a confirmation workflow. Since an output schema exists, the generic '@return: a json object' is acceptable. Minor gaps include error handling or post-execution effects, but the overall context is sufficient for a financial transaction tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All five parameters are individually documented with added meaning beyond the schema. Notably, account_fk is clarified as a database ID (int) not an address, must not be 0, and is sourced from /wallet/accounts_list. Mobile is specified as the South Africa mobile number. This is critical given the schema has 0% description coverage.
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: 'Funds an account with an OTT Voucher.' This is a specific verb+resource combo that distinguishes it from sibling tools like fund_banks or fund_card_recharge. The repeated sentence reinforces the purpose without ambiguity.
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?
Provides concrete usage conditions: only available in South Africa, only redeemable against any currency account, and system performs currency conversion. It also instructs to confirm (yes/no) before executing. While it doesn't name alternative tools, these constraints effectively scope when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__fund_payatAInspect
Returns a payment reference for use with Pay@, Pay@ provides point of sale integration to all major retailers in South Africa and Botswana. The customer is issued with a unique Pay@ bill payment code, which he needs to present to the cashier at the retailer
Returns a payment reference for use with Pay@ . Customer uses this payment reference to fund via Pay@ online (South Africa) or at Pay@ supporting retailers in South Africa and Botswana. All payments @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk provided by /wallet/accounts_list @param amount: The amount requested, excluding pay@ merchant fees @param reference: The payment reference, can be any text
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | No | ||
| api_key | Yes | ||
| reference | No | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the customer is issued a unique Pay@ bill payment code and notes that the amount excludes Pay@ merchant fees. However, it does not clarify whether the operation has side effects, requires prior wallet setup, or what the JSON response contains. The dangling 'All payments' fragment adds ambiguity.
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 redundant: 'Returns a payment reference for use with Pay@' appears twice, and there is an incomplete sentence 'All payments'. While the @param block is organized, the prose lacks conciseness and structure, making the description longer than necessary without adding clarity.
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 covers the funding flow, usage venues, and parameter meanings, and an output schema exists to explain return values. However, the repetitive text, the incomplete 'All payments' sentence, and the lack of behavioral context (e.g., side effects, prerequisites) leave it adequate but not fully complete for a 5-parameter tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds significant value beyond the bare schema (0% schema description coverage) by explaining all 5 parameters: api_key, token source, account_fk constraints (database ID, not 0, from /wallet/accounts_list), amount meaning, and reference purpose. This fully compensates for the schema's lack of descriptions.
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 'Returns a payment reference for use with Pay@', specifying a concrete verb and resource that distinguishes it from sibling funding tools like fund_banks or fund_card_quote. However, the repetition of the same statement and an incomplete sentence ('All payments') slightly muddy the clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: 'Customer uses this payment reference to fund via Pay@ online (South Africa) or at Pay@ supporting retailers in South Africa and Botswana.' This implies when to use the tool, though it does not explicitly mention alternatives or 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.
netfluid__fund_payshapBInspect
Funds an account with a PayShap payment, PayShap is low-cost, instant bank-to-bank payments method only available from South African banks
Funds an account with a PayShap payment. Returns bank details for a PayShap payment. Only available in South Africa and can only be redeemed against a ZAR currency account. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk provided by /wallet/accounts_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden but is ambiguous about actual behavior: it says 'Funds an account' yet also 'Returns bank details' without clarifying whether this tool initiates a payment or only provides instructions. It also omits side effects, reversibility, or what happens on failure, leaving significant uncertainty.
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 redundant, repeating 'Funds an account with a PayShap payment' twice. The first sentence is a run-on with a comma splice, and the @param section could be integrated more cleanly. Each sentence does not earn its place, reducing overall clarity.
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?
While an output schema exists, the description still lacks essential context: it does not explain the payment flow, whether this is a deposit instruction or an actual transfer, prerequisites beyond ZAR/South Africa, or error handling. The ambiguity between 'funds' and 'returns bank details' leaves the tool under-specified for practical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates fully with detailed @param lines. It explains the source of api_key, token, and importantly clarifies that account_fk is a database ID (int), not an account address, and may not be 0. This adds significant meaning beyond the raw 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 states the tool's purpose: 'Funds an account with a PayShap payment' and adds 'Returns bank details for a PayShap payment.' The resource (PayShap) is specific, distinguishing it from siblings like fund_payat and fund_ott, though the verb is slightly ambiguous about whether it executes a payment or merely returns instructions.
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 gives clear contextual constraints: 'Only available in South Africa and can only be redeemed against a ZAR currency account.' This tells an agent when to consider using this tool (South African ZAR funding) and implicitly when not to, but it does not name alternative tools or provide explicit when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__help_pingCInspect
Pings the API
Pings the API and returns a response object @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure. It mentions the return of a response object but provides no details on error behavior, authentication requirements beyond the api_key parameter, or what the JSON object contains. The description is minimally transparent.
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 repetitive: 'Pings the API' appears twice, and 'returns a response object' is repeated by '@return: a json object'. The information could be conveyed in a single sentence, and the redundant structure reduces clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's trivial nature and the presence of an output schema, the description is minimally viable but lacks context. It does not explain when to use the ping, what the response object indicates, or how failures are reported. For a simple health check, the absence of these details leaves gaps in the agent's understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaning to the api_key parameter by stating it is 'the api key allocated to your application', which goes beyond the schema's simple type definition. This compensates for the schema's lack of parameter descriptions, making the purpose of the single parameter clear.
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 'Pings the API and returns a response object', which is a specific verb-resource pair. It distinguishes from other tools by its unique 'help_ping' name and simple health-check purpose, though it doesn't explicitly differentiate from similar liveness-check 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?
No usage guidance is provided. The description does not specify when to use this tool versus alternatives like paywall__liveness_check, nor does it give context such as 'use to verify API connectivity'. The agent is left to infer the intended use solely from the name and minimal description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__netfluid_voucher_checkAInspect
Performs a validation on a Netfluid voucher code. The voucher is not redeemed, only validated @param voucher_code: The Netfluid voucher code, format is 4 sets of integers, e.g. 1234-4321-1234-4321
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| voucher_code | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Even with empty annotations, the description discloses the key behavioral trait: the voucher is not redeemed, only validated. It also provides the exact format of the voucher code, which is critical for correct invocation. This goes beyond a simple statement of purpose.
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 concise, front-loaded with the core purpose, and uses standard doc-style sections for parameters and return values. Every sentence adds value with no fluff.
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?
With an output schema present, the description need not detail return structure. It covers the tool's action, the key non-redeem behavior, and the parameter format. This is complete for a simple validation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only a string type with no description, but the description fully explains the voucher_code parameter including format ('4 sets of integers') and an example. This adds significant meaning beyond the input 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 uses a specific verb ('Performs a validation') and names the exact resource ('Netfluid voucher code'). It clearly distinguishes this from redemption by explicitly stating 'not redeemed, only validated', setting it apart from sibling tools like account_merchant_voucher_redeem.
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 implies when to use this tool: for validating a voucher without redeeming it. This creates a clear context and implies that redemption would require a different tool, though no specific alternative is named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__payment_wallet_setBInspect
Set this wallet as a payment wallet. Payments wallets are normal wallets that cannot login to the portal. They are typically used as sub-wallet by a sponsor wallet. A payment wallet's access control such as Secret, PIN and recovery words are held by the sponsor. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so description must carry full burden. It mentions that access control shifts to sponsor but does not disclose side effects like irreversibility or whether the wallet can be unset. The mutation nature is implied but not clarified.
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?
Description is concise with front-loaded main action. The param block is structured but slightly verbose. No superfluous sentences.
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?
Despite output schema existence, the description only says '@return: a json object', lacking detail on success/failure indicators. For a mutation tool, behavioral context is missing, but param explanations partially compensate for 0% schema coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but description includes a @param block for each parameter, adding meaning: api_key is allocated to app, token and wallet_fk come from /access/login. This compensates for the sparse 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 states the main action 'Set this wallet as a payment wallet' and explains what a payment wallet is (cannot login, sub-wallet, sponsor holds access control). It distinguishes from sibling 'netfluid__payment_wallet_signup' which likely creates a new payment wallet.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like creating a payment wallet. The description does not mention prerequisites, when-not to use, or typical scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__payment_wallet_signupAInspect
Creates a payment wallet. Payment wallets are a form of sub-wallet of which the sponsor controls access to the Secret,PIN and recovery keywords. A payment wallet cannot login to the portal and is therefore only accessible to the sponsor via the api or this mcp. In order for this wallet to exists, it needs to be created by a human KYCed wallet. Once created this wallet will be fully enabled to perform any transaction any other wallet is capable of. Including access to virtual bank accounts in Europe and the USA as a funding source. The wallet is automatically minted with a Solana Blockchain wallet. The sponsor would typically only need to save the wallet_fk and PIN of the new wallet in their storage in order to make use of it later. The secret is optional purely to maintain backward compatibility, if not provided the system will generate default values. We suggest you use the mobile and email of the sponsor where available, in order to get access to recovery methods. The human accepts all legal responsibility for this payment wallet. Process can take up to 30 seconds. @param secret: A secret, minimum 8 characters, must be unique system-wide. This is typically the username, but private. Suggestion: Generate 3 natural language words, concatenated, or prompt the human for 3 words. @param pin: The 5 digit PIN associated with the new wallet. Can be any random 5 numbers. @param email: The agents email address, if not available use a blank string. @param mobile: The human's mobile phone number, in e164 format, e.g. 27821234567 (no +). if not available use a blank string. @param currency_fk: The currency of the first account, use 7 (ZAR) for everyone else use 3 (USD) @param sponsor_wallet_fk: The sponsor's wallet_fk, this wallet_fk must be KYCed if not the new wallet will also not be KYCed @param sponsor_wallet_pin: The sponsor's 5-digit PIN
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| No | 27012345678@netfluid.ltd | ||
| mobile | No | 27012345678 | |
| secret | No | 81fc6380-782c-4bde-8d0e-4c26eebca55b | |
| currency_fk | No | ||
| sponsor_wallet_fk | Yes | ||
| sponsor_wallet_pin | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavior: wallet creation process, KYC dependency, Solana blockchain minting, time estimate (30s), and sponsor responsibilities. It also explains optional secret and default generation.
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 verbose but well-structured, starting with the main purpose and then detailing parameters. Every part adds value; however, it could be slightly more concise.
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 covers the new wallet's capabilities, dependencies (sponsor KYC), required outputs (wallet_fk, PIN to save), and time estimate. Although the output schema exists, the description mentions a JSON return, which is adequate. All essential context for using this tool is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries full burden. Each parameter (secret, pin, email, mobile, currency_fk, sponsor_wallet_fk, sponsor_wallet_pin) is explained with constraints, defaults, and suggestions (e.g., secret generation, e164 format, currency codes).
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 it creates a payment wallet, a sub-wallet with specific access restrictions. It distinguishes from other wallet and signup tools by specifying that the wallet cannot log in and is sponsor-controlled.
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 explains the context of use: creating a sub-wallet that cannot login, controlled by a KYCed sponsor. It implies when to use this tool but does not explicitly exclude alternatives or provide direct comparisons to similar tools like netfluid__automated_signup.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__privacyBInspect
Provides Netfluid's privacy policy This tools provides reference information in the "referenced_tools" schema @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should clarify behavior. It notes the tool returns a JSON object and provides reference information, which implies a read-only retrieval with no side effects. However, it does not disclose whether authentication is required, what the JSON structure contains, or any rate limits, leaving moderate gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is concise and front-loaded. The second sentence is poorly worded ('This tools provides... in the "referenced_tools" schema') and adds little value while causing confusion. The @return line is trivial and could be omitted, making the structure less clean than ideal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's extreme simplicity (no inputs, no side effects), the description is nearly sufficient. The output schema exists, so the description need not detail return values. The vague 'referenced_tools' reference is the main flaw, slightly undermining completeness.
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 schema coverage is 100% by default. The description doesn't need to explain parameters, and it doesn't introduce confusion. Baseline 4 applies because no parameter information is needed.
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 phrase 'Provides Netfluid's privacy policy' is a specific verb+resource statement that identifies the tool's function. However, the second sentence about 'referenced_tools' schema is grammatically unclear and introduces ambiguity about whether the tool returns the policy itself or reference data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use this tool versus siblings like terms or compliance. It neither states explicit use cases nor excludes alternatives. For a simple reference tool, this may be acceptable, but the description fails to mention typical scenarios such as 'when the user asks about Netfluid's privacy policy.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__push_message_devicesBInspect
Returns a list of devices registered to receive push messages on this wallet
Returns a list of devices registered to receive push messages on this wallet. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden for behavioral disclosure. It only states that it returns a list and gives parameter sources; it does not mention side effects, authentication requirements, pagination, or any operation-specific behaviors. The '@return: a json object' is minimal and already covered by the output schema.
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 first sentence is duplicated verbatim ('Returns a list of devices registered to receive push messages on this wallet' appears twice), which is redundant and wastes space. The rest is a standard parameter block. This lacks the conciseness expected of a well-crafted description.
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 covers the basic purpose and parameters, and an output schema exists, so return types are not a gap. However, it lacks usage guidance, alternative references, and any caveats (e.g., whether the list is complete or requires specific permissions). For a simple list operation, this is adequate but not comprehensive.
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 0% description coverage, so the @param descriptions add value by explaining the provenance of each parameter (e.g., token provided by /access/login). However, the explanations are thin (e.g., wallet_fk is not actually defined, just its source), so it does not fully compensate for the missing schema descriptions.
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 verb 'Returns' and the resource 'list of devices registered to receive push messages on this wallet', making the tool's purpose obvious. It does not explicitly distinguish from sibling tools like netfluid__push_message_send, but the read-versus-send distinction is implicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context (when you need to see push message devices for a wallet) but gives no explicit guidance on when to choose this tool over alternatives, nor does it mention exclusions or prerequisites beyond the parameter provenance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__push_message_sendBInspect
Sends a push message to customer. Push messages are limited to 160 characters per message
Sends a push message to customer. Push messages are limited to 160 characters per message @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param message: The message content in plain text @param title: The message title in plain text
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | ||
| token | Yes | ||
| api_key | Yes | ||
| message | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses the 160-character limit, but does not mention side effects, permissions, error behavior, or what happens if the limit is exceeded. This is insufficient for a mutating send operation.
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 core description sentence is duplicated verbatim, wasting space and making the structure redundant. While the parameter docs are useful, the unnecessary repetition hurts conciseness.
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 covers the main purpose, the character limit, and all parameters, which is adequate for a simple send operation. An output schema also exists, so the vague '@return: a json object' is not critical. However, it lacks behavioral details like what happens with overlong messages and does not mention any preconditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides explicit @param documentation for all five parameters, explaining api_key, token, wallet_fk, message, and title. This fully compensates for the 0% schema description coverage and adds meaningful context beyond the raw type definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Sends a push message to customer') and identifies the resource (push message). It is specific and understandable, though it does not explicitly distinguish itself from sibling tools like send_email or send_sms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description only states what it does, without exclusions, prerequisites, or comparative context with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__send_emailAInspect
Sends email to the wallet owner
Sends email to the wallet owner @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param message: The message body in html, encoded into base64 @param subject: The message subject in plain text, url encoded
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| message | Yes | ||
| subject | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must disclose behavioral traits. It does reveal prerequisites (token and wallet_fk from /access/login) and encoding requirements (message base64, subject url encoded). However, it does not mention side effects (e.g., email is sent externally), idempotency, rate limits, or error behavior. The fact that it sends an email is implied but not explicitly framed as an action with external consequences.
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 moderately concise but suffers from repetition: 'Sends email to the wallet owner' appears twice verbatim. The rest is a structured parameter list that adds value, but the duplication makes it less polished. A single clear opening plus the parameter breakdown would be more efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers all five required parameters with format and provenance, states the purpose, and notes the return type ('a json object'). For a straightforward email-sending tool, this is nearly complete. It lacks error handling details and doesn't mention the output schema specifically, but the provided information is sufficient for basic invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only lists parameter names and types with zero description coverage. The description adds crucial meaning: api_key is allotted to the application, token and wallet_fk come from /access/login, message must be HTML encoded in base64, and subject must be plain text URL-encoded. This fully compensates for the bare 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 states the tool's function: "Sends email to the wallet owner." This is a specific verb (sends) and resource (email to the wallet owner), which distinguishes it from sibling tools like account_send_sms (SMS) and push_message_send (push notifications).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention that it should be used for emailing the wallet owner specifically, nor does it contrast with sending SMS or push messages. The duplicate phrase 'Sends email to the wallet owner' adds no usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__sessionBInspect
Returns a token given a customer provided session_key Can only be called once per session_key, thereafter the session_key is invalid @param session_key: The customer provided session_key @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| session_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite lacking annotations, the description discloses a critical side effect: 'Can only be called once per session_key, thereafter the session_key is invalid.' This goes beyond the basic schema and informs the agent of non-idempotency and invalidation. No other behavioral traits are mentioned, but for a simple exchange, this is valuable.
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 three lines: a purpose statement, a usage constraint, and structured param/return annotations. It is front-loaded with the core behavior and every line adds information. No fluff.
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 tool with one parameter, an output schema, and no annotations, the description covers the primary function, the one-time-use behavior, and the return type at a high level. It omits error behavior and what the token should be used for, but these are partly covered by the output schema. Overall, it's reasonably complete for such a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description needed to clarify the session_key. It says 'The customer provided session_key,' which adds minimal context (that it originates from the customer) but doesn't explain format, constraints, or example. The param doc is nearly redundant with the parameter name.
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 specifies a concrete action: 'Returns a token given a customer provided session_key.' This clearly identifies the resource (token) and input (session_key). It doesn't explicitly contrast with the sibling netfluid__session_2_token, but the one-time-use caveat adds a distinguishing detail.
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?
There is no guidance about when to use this tool versus alternatives like session_2_token. The one-time-use warning is more of a constraint than a usage directive. No context about prerequisites or typical workflow is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__session_2_tokenAInspect
Returns a token given a customer provided session_key Can only be called once per session_key, thereafter the session_key is invalid @param session_key: The customer provided session_key @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| session_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses the non-obvious side effect that the session_key becomes invalid after one use, but omits other behavioral details such as error conditions or security context.
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: purpose, behavioral constraint, and param/return in three lines. No unnecessary words or repetition.
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?
This is a simple single-parameter tool with an output schema available. The description covers what it does and the critical one-use constraint. It could mention what happens on subsequent calls, but overall it is adequate for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only defines session_key as a string (0% description coverage). The description adds 'customer provided' and notes the one-time-use constraint, giving some context, but does not elaborate on format or validation rules.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Returns a token given a customer provided session_key', using a specific verb and resource. It clearly identifies the tool's function, though it does not explicitly contrast with sibling 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?
Provides the important constraint 'Can only be called once per session_key, thereafter the session_key is invalid', which implies when it should be used. However, it offers no guidance on alternatives or scenarios where another tool would be preferable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__skillAInspect
Returns the latest version of the Netfluid SKILL.md file
Returns the latest version of the Netfluid SKILL.md file Update your files if the version number is greater and refresh all mcp tools
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It clearly indicates a read-only operation ('returns') and provides a directive for the agent to act on the result. No side effects or permissions are mentioned, but for a zero-parameter retrieval tool, this is reasonably transparent.
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 short but contains a duplicated sentence ('Returns the latest version of the Netfluid SKILL.md file' appears twice). This redundancy wastes space, though the overall length is acceptable. The structure is front-loaded but not perfectly concise.
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 zero-parameter tool with an output schema, the description is sufficient to understand the tool's purpose and the recommended follow-up action. It explains what to do with the returned version number, making it contextually complete.
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 no parameters, so there is nothing to document. The baseline of 4 applies, and the description does not need to add parameter details.
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 returns the latest version of the Netfluid SKILL.md file. The verb 'returns' plus the specific resource (SKILL.md file) makes the purpose unambiguous. It is distinct from all sibling tools, which focus on operations like accounts, payments, and wallets.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage instruction: update files if the version number is greater and refresh MCP tools. This implies when to use the tool (to check for updates) and what action to take afterward, though it does not explicitly describe alternative tools or exclusion conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__telco_accountsCInspect
Lists all the available telecommunications accounts
Lists all the available telecommunications accounts @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It is a read-only listing, but the description does not explicitly state that it does not modify data, or disclose any response size, pagination, or authorization requirements beyond the parameter list. This is minimal disclosure for a tool with no annotation support.
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 main description sentence is repeated verbatim twice, which is wasteful and harms clarity. Although the parameter documentation is structured, the redundant opening sentences make the description less efficient than it should be.
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 tool is simple, and all parameters are explained, but with empty annotations and no usage guidance, the overall description is only minimally adequate. The output schema is said to exist but not shown, and the description's redundancy does not add extra context. It does not fully cover the broader context needed for correct selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description provides meaningful explanations for all three parameters: api_key ('allocated to your application'), token ('provided by /access/login'), and wallet_fk ('provided by /access/login'). This compensates well for the lack of schema descriptions and tells the agent where to obtain the values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Lists all the available telecommunications accounts' which clearly identifies the verb (lists) and resource (telecommunications accounts). It is distinct enough from siblings like netfluid__telco_bundles or netfluid__wallet_accounts_list, but it does not explicitly differentiate itself or mention any filtering scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description does not mention any prerequisites, exclusions, or related tools that might also list accounts, such as netfluid__account or netfluid__wallet_accounts_list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__telco_bundlesAInspect
Lists all the available telecommunications bundles
Lists all the available telecommunications bundles @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only says 'Lists', implying a read operation, but does not describe error behavior, pagination, authentication requirements beyond the api_key parameter, or any side effects.
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 main sentence 'Lists all the available telecommunications bundles' is repeated verbatim twice, which is redundant and wastes space. The @param and @return blocks are useful, but the duplication harms conciseness.
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 tool is simple with one parameter, and the description conveys the core purpose and parameter. However, it lacks guidance on when to use it and does not describe the return format in detail, relying on the output schema which is not shown. The duplication also detracts from completeness.
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 @param line clearly explains the api_key parameter as 'The api key allocated to your application', while the input schema provides no description for this parameter. Since schema coverage is 0%, this explanation fully compensates.
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 'Lists all the available telecommunications bundles' uses a specific verb 'Lists' with the resource 'telecommunications bundles', clearly stating what the tool does. It distinguishes itself from sibling tools like netfluid__telco_accounts by focusing on bundles.
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 implies usage when you need to see available bundles, but it does not explicitly say when not to use it or contrast with alternatives. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__termsAInspect
Provides a url from which to fetch Netfluid's terms and conditions of service This tools provides reference information in the "referenced_tools" schema @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior, but it only states the tool returns a URL and a JSON object in the 'referenced_tools' schema. It does not explain any constraints, authentication needs, or what the URL can be used for, leaving significant behavioral ambiguity.
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 short but contains an awkward, grammatically incorrect second sentence ('This tools provides...') that adds limited value. The first sentence is concise, but the second sentence could be clearer or omitted.
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 no-parameter reference tool with an output schema, the description conveys the core purpose but lacks guidance on when to use it or what the returned URL represents. The output schema is referenced but not explained, so contextual completeness is adequate but minimal.
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, and the schema is fully described as an empty object. Per the baseline for 0-parameter tools, the description doesn't need to explain parameters, and it doesn't add anything 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 states the tool 'provides a url' for fetching Netfluid's terms and conditions, using a specific verb and resource. It distinguishes this from sibling tools like netfluid__privacy and netfluid__compliance by its focus on terms of service.
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 implies the tool is for retrieving the terms and conditions URL, but it does not explicitly say when to prefer this over alternatives. No exclusions or alternative tool references are provided, so usage guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_accounts_listCInspect
Provides a detailed list of accounts in a wallet.
Provides a detailed list of accounts in a wallet. Each entry returns an account_fk for later use. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must disclose behavior itself. It indicates the operation returns a list of accounts and provides account_fk for later use, but it doesn't state whether the operation is read-only, if it has side effects, or any rate limits. This is insufficient for a tool with no annotations, warranting a 2.
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 repeats the exact sentence 'Provides a detailed list of accounts in a wallet' twice, adding no value and wasting space. While the remainder is structured with @param and @return lines, the duplication is a clear defect. This reduces the conciseness score to a 2.
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 list tool with an output schema present, the description covers the basic purpose and parameters but lacks important behavioral details like pagination, read-only confirmation, or how to handle errors. It also doesn't mention the relationship to the verbose sibling tool, leaving the agent uncertain about which to choose. Given the empty annotations and the repeated sentence, the description is not fully complete, scoring a 2.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides clear @param documentation for all three parameters, explaining that api_key is the application's key, and token and wallet_fk are obtained from /access/login. This adds meaningful context beyond the schema's bare types and even indicates the source of the values. This fully compensates for the schema's 0% description coverage, earning a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Provides a detailed list of accounts in a wallet') and identifies the resource (accounts within a wallet). It adds that each entry returns an account_fk for later use, which clarifies the output's purpose. However, it does not distinguish itself from the sibling tool wallet_accounts_list_verbose, so it gets a 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus alternatives like wallet_accounts_list_verbose or account_info. It implies the usage context (list accounts for a wallet) but doesn't state prerequisites or exclusions. The param docs reference /access/login for token and wallet_fk, but that's authentication info, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_accounts_list_verboseAInspect
Provides a detailed list of accounts in a wallet with crypto balances included.
Provides a detailed list of accounts in a wallet with crypto balances included. This may take some time to complete. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It mentions the operation may take time and returns a JSON object, but it does not confirm that the listing is read-only, mention pagination or error behavior, or describe any side effects. This is minimal but not misleading.
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 opening sentence is repeated verbatim twice, wasting space and damaging clarity. The rest is structured as a simple param/return block, but the duplication is a notable flaw in conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, not detailing return values is acceptable. However, the description lacks usage distinctions, error handling, and pagination details, which would be valuable for a verbose listing tool with three required params. It is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no parameter descriptions, so the description compensates by explaining that api_key is application-allocated and token/wallet_fk are provided by /access/login. This adds meaningful provenance info beyond the raw schema, though it does not elaborate on formats or constraints.
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 it provides a detailed list of accounts in a wallet with crypto balances included. The verb 'provides' plus the resource 'accounts in a wallet' is specific, and the emphasis on 'detailed' and 'crypto balances included' distinguishes it from the sibling tool netfluid__wallet_accounts_list.
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 notes that the operation may take time, implying it is a heavier query, but it does not explicitly state when to use this tool over alternatives like wallet_accounts_list. It also lacks exclusions or alternative tool references, providing only implied usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_assets_listBInspect
Provides a detailed list of assets available to this wallet. For display only. May be filtered by blockchain
Provides a detailed list of assets available to this wallet as async defined per user grouping and optionally per blockchain. This is for display purposes only as every wallet may still make use of any asse @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param blockchain_fk: The blockchain_fk to use as filter
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| blockchain_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does note the tool is display-only and optionally filterable, which is useful. However, it lacks detail on response behavior, error conditions, or the meaning of 'async defined per user grouping,' and the description is truncated mid-sentence.
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 repeats the same opening sentence nearly verbatim and cuts off mid-phrase with 'any asse,' making it appear incomplete and unpolished. The @param block is useful but the overall structure is redundant and not concise.
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 tool is a relatively simple list operation and an output schema exists, so return values are covered. Still, the description omits usage guidance and contains vague wording about async grouping, leaving the overall context somewhat incomplete. It is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the @param section in the description is essential. It names all four parameters and adds meaningful context: token and wallet_fk are 'provided by /access/login' and blockchain_fk is described as a filter. This compensates well for the lack of schema descriptions.
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 provides a detailed list of wallet assets and can be filtered by blockchain, which communicates the core function. However, it does not explicitly distinguish itself from sibling tools like wallet_accounts_list, and the phrase 'as async defined per user grouping' adds confusion.
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?
It states 'for display purposes only,' which implies a read-only usage context, but there is no explicit guidance on when to use this tool versus alternatives. No exclusions, prerequisites, or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_card_listAInspect
Returns a list of tokenised Visa/Mastercard(s) associated with this wallet
Returns a list of tokenised Visa/Mastercard(s) associated with this wallet. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries full responsibility for disclosing behavior. It only states that it returns a list, which implicitly indicates a read operation, but it does not mention any permissions, idempotency, pagination, or other behavioral details. The repeated sentence adds no extra transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is somewhat bloated because the first sentence is repeated verbatim. The @param and @return sections add structure, but the redundancy makes it less concise than ideal. A single sentence plus parameter details would be cleaner.
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 list operation with a provided output schema, the description covers the essential purpose and parameter origins. However, it lacks usage guidance and behavioral transparency, and the redundant text adds noise. The overall completeness is adequate but not rich, leaving gaps in when and how to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description explicitly documents all three parameters via @param lines: api_key, token, and wallet_fk. It explains the origin and purpose of each, such as 'wallet_api_token provided by /access/login' and 'wallet_fk provided by /access/login', adding significant meaning beyond the bare type declarations in 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 states 'Returns a list of tokenised Visa/Mastercard(s) associated with this wallet', specifying the verb (returns), resource (list of card details), and scope (associated with this wallet). This distinguishes it from sibling tools like 'wallet_card_remove' (removal) and 'wallet_voucher_list' (vouchers).
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 implies usage by describing the function, but it does not explicitly state when to use this tool versus alternatives or provide context on exclusions. There is no mention of alternative tools for listing cards, though the sibling list includes similar list operations like 'wallet_accounts_list'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_card_removeAInspect
Removes a tokenised Visa/Mastercard(s) associated with this wallet, confirm (yes/no) before executing
Removes a tokenised Visa/Mastercard(s) associated with this wallet. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param wallet_card_id: The wallet_card_id provided by /wallet/card_list
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| wallet_card_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the operation is a removal and that confirmation is required, which is useful for a destructive action. However, it does not discuss irreversibility, permission requirements, or what happens after removal, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is repetitive: the opening sentence is duplicated verbatim ('Removes a tokenised Visa/Mastercard(s) associated with this wallet.') followed by the exact same sentence. While the @param structure is clear, the duplication wastes space and distracts.
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 covers the core action, parameter origins, and confirmation requirement, but lacks details about the confirmation flow, side effects, or prerequisites beyond the parameters. The output schema exists, so return values need not be elaborated, but the missing behavioral context makes it only adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains all four parameters with provenance: api_key 'allocated to your application', token and wallet_fk from '/access/login', and wallet_card_id from '/wallet/card_list'. This adds meaning beyond the bare schema types.
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: 'Removes a tokenised Visa/Mastercard(s) associated with this wallet.' It uses a specific verb (removes) and identifies the resource, distinguishing it from siblings like wallet_card_list or wallet_visa_mastercard_card_list.
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 implies usage by stating what it does, but it does not explicitly say when to use this tool over alternatives or mention exclusion criteria. The confirmation note ('confirm (yes/no) before executing') provides some context but not a clear alternative comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_domainBInspect
Returns the wallet white label domain.
Returns the wallet white label domain. Performs a search on any one of the parameters. @param api_key: The api key allocated to your application @param wallet_fk: The wallet_fk @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk @param account_address: The account address @param payat_reference: The payat_reference excluding the merchant code example:111249 would submit 9
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes | ||
| wallet_fk | No | ||
| account_fk | No | ||
| account_address | No | ||
| payat_reference | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior itself. It mentions returning 'a json object' and searching any parameter, but does not explain match semantics, multiple vs single results, required permissions, error behavior, or read-only nature. The repeated 'Returns the wallet white label domain' sentence adds no behavioral depth.
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 opening sentence is duplicated verbatim, wasting the first two lines. The @param list is structured but the redundant first sentence harms conciseness.
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 5-parameter lookup tool with no annotations and no schema property descriptions, the description gives basic purpose and partial parameter clarification but omits key invocation details: which parameter combos are valid, whether all non-required params are optional, and any practical example. An output schema exists but this description doesn't leverage it or compensate otherwise.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the @param block partly compensates: api_key, account_fk (database ID int, not address, not 0), and payat_reference with an example are clarified. However, wallet_fk and account_address are tautological, and optionality/search-combination semantics are not clearly described beyond 'any one of the parameters.'
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 'Returns the wallet white label domain' with a specific verb and resource, and adds 'Performs a search on any one of the parameters,' framing it as a lookup/search tool. This distinguishes it from sibling tools like wallet_accounts_list or wallet_assets_list.
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 only usage guidance is 'Performs a search on any one of the parameters,' which implies the tool can be searched via several identifiers but does not provide explicit when-to-use vs alternatives, restrictions on parameter combinations, or exclusions. It is implied usage, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_feeCInspect
Calculates the transaction fee given an amount.
Calculates the transaction fee given an amount. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param amount: The transaction amount
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure. It states the action ('Calculates') and the return type ('a json object'), but does not disclose whether this is a read-only operation, any side effects, rate limits, or authentication requirements beyond the param descriptions. It does mention token and wallet_fk come from /access/login, which is useful, but overall behavioral transparency is minimal.
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 first sentence is repeated verbatim twice, wasting half the description. The @param structure is clear, but the duplication is a significant structural flaw. Overall it is short, but not concise due to redundancy.
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 tool with 4 required parameters, no annotations, and no visible output schema, the description is incomplete. The @return says 'a json object' without any detail on success/failure fields or structure. It also lacks context on when to use this over sibling tools. The description is insufficient for an agent to fully understand the tool's behavior and integration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does list all four parameters with brief explanations: api_key is 'allocated to your application', token and wallet_fk are 'provided by /access/login', and amount is 'the transaction amount'. This adds meaning beyond the bare schema names and types, especially indicating the source of token and wallet_fk.
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 function: 'Calculates the transaction fee given an amount.' This is a specific verb+resource combination. However, it does not distinguish itself from the sibling tool 'netfluid__fees', which could be confused with this fee calculation function.
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?
There is no guidance on when to use this tool versus alternatives. It does not mention the sibling 'netfluid__fees' or any context for when to calculate a fee vs. listing fees. The only implied usage is that it calculates a fee for a given amount, but no exclusions or alternative references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_google_auth_listAInspect
Returns the wallet's Google Authenticator registration.
Returns the wallet's Google Authenticator registration. An object is returned with a Secret, URL, QR-Code. Any of which can be presented to Google Authenticator app in order to setup a time based OTP @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the burden of disclosing behavior. It describes the return object and its use, but does not explicitly state this is a read-only operation, what happens if no registration exists, or any side effects. It adds useful return structure info but lacks safety or side-effect disclosure.
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 first sentence is duplicated verbatim ('Returns the wallet's Google Authenticator registration.' appears twice), which wastes space and violates the 'every sentence earns its place' rule. While the @param formatting is structured, the repetitive content makes it less concise. It should be condensed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (3 params, no nested objects), the description is quite complete: it states the purpose, outlines the return object fields, provides param semantics, and notes the return format. It lacks error-condition information, but with an output schema present, the return values are sufficiently covered. Minor gaps around prerequisites (e.g., whether the wallet has 2FA enabled) prevent a perfect score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, but the description fully compensates by documenting all three parameters with meaningful context: api_key ('allocated to your application'), token and wallet_fk ('provided by /access/login'). This provides the necessary semantics for correct invocation, exceeding the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Returns the wallet's Google Authenticator registration.' It further elaborates on the returned object components (Secret, URL, QR-Code), making it easy to distinguish from the sibling 'netfluid__wallet_google_auth_verify' which verifies OTPs. The verb 'returns' is specific and the resource is well-defined.
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 implies usage ('in order to setup a time based OTP') but lacks explicit guidance on when to choose this tool over alternatives. There is no mention of the verify sibling or exclusions. It provides clear context on the purpose but no explicit when-not-to-use or alternative tools, so it falls short of higher marks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_google_auth_verifyAInspect
Verifies an OTP against the customer's Google Authenticator App
Verifies an OTP against the customer's Google Authenticator App. The wallet must be configured to generate OTPs, see /wallet/google_auth_generate. 2FA is not enabled until such time as /wallet/google_ @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param otp: The OTP to test against what is displayed on the Google Authenticator
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| otp | Yes | ||
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden. It mentions the prerequisite and that '2FA is not enabled until such time as...' but the sentence is truncated, leaving the exact behavior unclear. It does not disclose side effects, failure modes, or permission requirements beyond the token.
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 first sentence is repeated verbatim, and the 2FA note is cut off mid-sentence ('/wallet/google_'). This redundancy and incompleteness indicate poor editing and 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 covers purpose, prerequisite, parameter semantics, and return type ('a json object'), and the presence of an output schema reduces the need to explain return fields. However, the truncated 2FA note and absence of success/failure behavior details leave gaps for a 4-parameter authentication tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters (api_key, token, wallet_fk, otp) are described in the @param block with meaningful context (e.g., 'The wallet_api_token provided by /access/login'). This compensates for the schema's 0% property description coverage and adds value beyond the raw 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 opens with 'Verifies an OTP against the customer's Google Authenticator App', providing a specific verb and resource. This clearly distinguishes it from sibling tools like wallet_google_auth_list (listing) and wallet_verify (wallet verification).
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 instruction that 'The wallet must be configured to generate OTPs, see /wallet/google_auth_generate' implies a prerequisite, but it does not explicitly contrast with alternative tools or state when this tool is preferred over others. Usage guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_kyc_checkCInspect
Checks whether the wallet/customer has been verified successfully
Checks whether the wallet/customer has been verified successfully @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure. It only stwates the basic check action and notes a JSON return, but does not disclose whether the operation is read-only, what error conditions exist, or any side effects. The duplicated sentence adds no behavioral insight.
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 short but contains an exact duplicate of the first sentence, wasting space. The parameter and return sections are clearly delineated, but the redundancy and lack of editing prevent a higher score.
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?
An output schema exists which covers the return format, but the description does not explain when this check is needed, what 'verified successfully' means, or how it differs from `wallet_kyc_check_lite`. This lack of context could lead to incorrect tool selection among similar KYC tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only types and required flags with 0% description coverage. The description compensates by explaining each parameter: `api_key` is the application key, `token` is the wallet_api_token from /access/login, and `wallet_fk` is also from /access/login. This adds meaningful context beyond the bare 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 states the action ('Checks whether') and the resource ('wallet/customer has been verified successfully'), giving a specific purpose. However, it does not distinguish this tool from its sibling `wallet_kyc_check_lite` or other KYC-related tools, so it does not achieve a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like `wallet_kyc_check_lite` or `wallet_kyc_session_create`. It only states what the tool does without any context for selection or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_kyc_check_liteBInspect
Checks whether the wallet/customer has performed an ID document scan and AML check
Checks whether the wallet/customer has performed an ID document scan and AML check. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of behavioral disclosure. It explicitly mentions that both an ID document scan and AML check are verified, and 'checks whether' implies a read-only operation. However, it does not disclose what the JSON return contains, any side effects, or prerequisites beyond the parameter sources.
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 first sentence is duplicated verbatim, wasting space. The structure with @param and @return is clear, but the redundancy is unnecessary.
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 tool is simple, but the description lacks context about what a 'lite' check means or how it differs from the full wallet_kyc_check. It does not explain when to prefer this tool, and although an output schema exists, the description itself gives no return structure. This leaves the agent without enough context for selection among many sibling KYC-related tools.
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?
All three parameters are explained in the description: api_key is the application key, token and wallet_fk are provided by /access/login. This adds meaningful context beyond the bare input schema, which only names parameters and types.
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 checks whether a wallet/customer has performed an ID document scan and AML check. However, it does not distinguish itself from the sibling tool wallet_kyc_check, and the same sentence is repeated twice.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the more comprehensive wallet_kyc_check or other KYC-related tools. The usage is only implied by the purpose statement, with no exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_kyc_session_createAInspect
Creates a new session for Identity Verification (KYC), only required on wallet that have not been KYC verified. Do not generate a link unless explicitly asked for by the user. There is a cost per session.
Creates a session for Identity Verification. Do not generate a link unless explicitly asked for by the user. This endpoint will return a URL, direct the customer to that URL on their mobile. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param profile: The session profile, values are FULL (ID verification, Face Verification, Liveness check, Email verification, AML) or LITE (ID verification, Face Verification, Email verification, AML) @param callback: The session callback URL which will be called with the verification result. This callback URL must call /callback/didit with the "verificationSessionId" and "status" as received on this callback url
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| profile | Yes | ||
| callback | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses cost ('There is a cost per session'), return behavior ('return a URL'), and follow-up action ('direct the customer to that URL'). Missing details include failure modes, ownership requirements, or what happens for already-verified wallets.
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 somewhat repetitive—'Creates a new session for Identity Verification' and 'Creates a session for Identity Verification' appear twice, and the link-generation warning is also repeated. While it is organized with param docs, the redundancy could be trimmed without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given an output schema exists (not shown but implied), the description adequately covers purpose, prerequisites, parameter semantics, cost, and post-verification callback behavior. It lacks explicit error scenarios or idempotency, but overall it provides sufficient context for an agent to invoke the tool 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 description provides comprehensive parameter documentation despite 0% schema coverage. It explains each param (@param), defines 'profile' values (FULL vs LITE), and details the callback's required format ('must call /callback/didit with the verificationSessionId and status'). This far exceeds the bare 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 states the tool's function: 'Creates a new session for Identity Verification (KYC)' with a specific scope ('only required on wallet that have not been KYC verified'). It distinguishes from check tools like wallet_kyc_check by focusing on session creation, though it does not explicitly name siblings.
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?
Provides explicit when-to-use guidance: 'only required on wallet that have not been KYC verified'. Also includes an important operational instruction: 'Do not generate a link unless explicitly asked for by the user'. However, it does not explicitly reference alternative tools or scenarios where another tool would be preferable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_mnemonicCInspect
Returns the wallet's 24 word mnemonic phrase for future secret recovery.
Returns the wallet's 24 word mnemonic phrase for future secret recovery. It is important that the wallet owner is made aware of this recovery key phrase, for future use, when required @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It only says the tool 'returns' the mnemonic and stresses informing the owner, but fails to disclose that this is a highly sensitive operation, whether special auth is required, or the risk of exposing the phrase. This is a significant gap for a security-critical tool.
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 first sentence is repeated verbatim, which wastes space and harms conciseness. The paragraph about owner awareness is a run-on sentence lacking structure. The parameter list is clean, but overall the description would benefit from tighter editing.
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 tool returns a sensitive mnemonic with an output schema, but the description lacks necessary context about security, authorization, and the significance of the returned data. Given the empty annotations, this incompleteness could mislead an agent about the tool's risk. The warning about owner awareness is the only contextual hint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions (0% coverage), and the description compensates with @param lines that explain each field's origin, e.g., 'wallet_api_token provided by /access/login'. This adds value beyond the schema but remains minimal, providing no format validation or usage details.
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 returns the wallet's 24-word mnemonic phrase for secret recovery, which is specific and distinguishes it from typical wallet inspection tools. However, it doesn't explicitly contrast with sibling recovery tools like access_recover, so it lacks sibling differentiation. The repetition of the first sentence is a minor distraction but doesn't obscure purpose.
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 implies the tool should be used when the wallet owner needs their recovery phrase, stating it is important to make them aware for future use. It does not specify when not to use it or mention alternatives such as access_recover. The guidance is vague ('when required').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_rbaAInspect
Saves a Recipient Bank Account (RBA) for use on future withdrawals. Confirm (yes/no) before executing
Saves a Recipient Bank Account (RBA) for use on future withdrawals. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param beneficiary: The beneficiary name @param bank: The bank's name @param iban: The account's IBAN/Account number @param swift: The account's swift routing code or branch code which ever is applicable @param email: The recipient's email address @param note: The note or recipient reference on the bank transfer @param address_street: The street address of the bank @param address_city: The city in which the bank is located @param address_zip: The postal code of the location of the bank, zip code or "None" @param countryISO2: The 2-digit ISO code of the country in which the bank is located, must match the content of the swift code
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| bank | Yes | ||
| iban | Yes | ||
| note | No | ||
| Yes | |||
| swift | Yes | ||
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes | ||
| address_zip | No | ||
| beneficiary | Yes | ||
| countryISO2 | No | ||
| address_city | No | ||
| address_street | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden. It discloses the write nature ('Saves'), the confirmation requirement, and parameter source hints, but it does not mention side effects, idempotency, validation, or error behavior beyond returning 'a json object'.
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 opening sentence is duplicated verbatim, which is wasteful. The structure is otherwise orderly and front-loaded with purpose and confirmation, but the redundancy prevents a higher score.
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 covers all parameter meanings, gives authentication context, and notes the confirmation step, making it largely sufficient for correct invocation. It lacks explicit alternatives and detailed return/error information, but an output schema exists, reducing the need for a detailed return description.
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?
Even though the input schema has no property descriptions, the tool description provides thorough @param documentation for all 13 parameters, including where auth tokens come from, what IBAN/swift represent, and the constraint that countryISO2 must match the swift code.
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 a specific action ('Saves a Recipient Bank Account'), a specific resource ('RBA'), and a clear purpose ('for use on future withdrawals'), distinguishing it from list/removal siblings like wallet_rba_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: this is for saving an RBA to be used on future withdrawals. It also includes an explicit operative instruction ('Confirm (yes/no) before executing'). However, it does not name alternatives or when not to use the tool among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_rba_listCInspect
List all Recipient Bank Accounts (RBAs) on this wallet
List all Recipient Bank Accounts (RBAs) on this wallet @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It adds that the tool lists 'all' RBAs and scopes to 'this wallet', which is useful. The @param lines clarify that authentication comes from /access/login. However, it does not explicitly confirm a read-only operation, describe error behavior, or mention pagination, so transparency is only partial.
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 first sentence is duplicated verbatim, which is a clear waste of words. The @param block is structured and readable, but the repetition makes the description longer than necessary without adding any new information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list operation, the description covers the core function and all parameters. An output schema exists, so the generic '@return: a json object' is not a major gap. However, it omits any caveats about authentication failures, empty results, or how this differs from related list endpoints, making it minimally complete but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. The @param lines provide provenance for each parameter: api_key is allocated to the application, while token and wallet_fk come from /access/login. This helps, but it does not explain what wallet_fk semantically represents beyond its source, and no format or constraints are given, leaving the compensation shallow.
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 lists all Recipient Bank Accounts (RBAs) on the wallet, using a specific verb and scoping to the wallet. However, it does not distinguish itself from sibling tools like wallet_rba or beneficiaries_list, so it misses the top score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as wallet_accounts_list or wallet_card_list. The parameter notes mention that token and wallet_fk come from /access/login, but this is a prerequisite rather than usage context, and no exclusions or decision criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_referral_codeCInspect
Returns this wallet's referral code.
Returns this wallet's referral code. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description must carry the full burden of behavioral disclosure. It only says 'Returns...' and 'return: a json object'; it does not disclose whether this is read-only, whether special permissions are needed, or any side effects. This is a significant gap for a tool that requires a token and wallet_fk.
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 first sentence is repeated verbatim ('Returns this wallet's referral code.') which is redundant and wastes space. The rest is organized logically with param and return documentation, but the duplication prevents a higher score.
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 tool is simple and has an output schema, so the return value is already covered. The description provides enough to invoke the tool correctly (param sources), but lacks guidance on when to use it or any behavioral context. It is minimally viable but not rich.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds value beyond the schema by explaining where token and wallet_fk come from ('provided by /access/login') and that api_key is allocated to the application. However, it does not provide type details, formats, or constraints beyond what the schema already has. Given the 0% schema description coverage, this partial compensation is adequate but not thorough.
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 'Returns this wallet's referral code' with a specific verb and resource. It distinguishes itself from sibling tools like wallet_voucher_list or wallet_assets_list, though it does not explicitly name alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus other wallet-related tools. The param descriptions mention that token and wallet_fk come from /access/login, which is useful setup context, but there is no explicit when/when-not or alternative tool differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_verifyAInspect
Verifies the status of the wallet token, while keeping the token session alive.
Verifies the status of the wallet token, while keeping the token session alive. Call this regularly to keep the token active. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior itself. It reveals the keepalive side effect, which is important, but lacks details on token status outcomes, error handling, or authentication requirements beyond the params. This is adequate but not rich.
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 core sentence is repeated verbatim, creating redundancy that adds no value. The @param block is well-structured, but the duplication makes the description less concise than it should be.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema is present, the description does not need to detail return values. It covers the tool's purpose, when to call it, and all parameters, which is nearly complete for a simple verify/keepalive tool. Missing details about possible statuses or failures are partly mitigated by the output schema.
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 @param lines provide meaningful explanations for all three parameters: api_key is the application's key, token and wallet_fk are sourced from /access/login. Since the schema properties have no descriptions, this fully compensates for the schema coverage gap.
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 uses a specific verb ('Verifies') and resource ('wallet token'), and clearly states the additional side effect of keeping the token session alive. It distinguishes itself from sibling verification tools (e.g., crypto_verify) by focusing on the wallet token and session keepalive.
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 explicitly says to 'Call this regularly to keep the token active,' providing a clear temporal context for use. Although it does not mention alternatives or when not to use it, the regular-call guidance is a clear directive for the tool's purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__wallet_voucher_listBInspect
Lists all vouchers kept in this wallet's vault.
Lists all vouchers kept in this wallet's vault. These are vouchers issued by any account_fk in this wallet @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden for behavioral disclosure. It implies a read-only 'Lists' operation but does not explicitly state that, nor does it mention pagination, limits, or any side effects. The only behavioral additive is the scoping note about vouchers being issued by any account_fk in this wallet, which is more semantic than behavioral.
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 first sentence is repeated verbatim, which is redundant and wastes space. The @param block is structured and readable, but the duplication and the relatively verbose param explanations could be tightened. The description is not concise, but the formatting makes it scannable.
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 tool is a simple list operation with an output schema, so return values are covered elsewhere. However, the description fails to provide any context about when this tool is appropriate relative to the many sibling tools. It does not mention filtering, sorting, or the relationship to other voucher-related tools, leaving the agent without enough information to choose it confidently among alternatives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description's @param lines are essential. They provide meaning for api_key, token, and wallet_fk, explaining where they come from (e.g., 'wallet_api_token provided by /access/login'). However, the explanations are somewhat generic and do not deeply clarify the semantic role of each parameter in this specific operation, such as what wallet_fk represents in the vault context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Lists all vouchers kept in this wallet's vault.' This is a specific verb+resource combination that distinguishes it from sibling tools like wallet_accounts_list or wallet_card_list, which list other entity types. The additional clarification that these are 'vouchers issued by any account_fk in this wallet' further sharpens the scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or alternative tools such as netfluid_voucher_check. The only context is the @param lines, which explain authentication but not usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__webhook_pauseCInspect
Pauses the webhook on this wallet from receiving events
Pauses the webhook on this wallet from receiving events @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states the basic action and repeats it. It does not disclose whether the pause is reversible, whether events are queued or lost, how long the pause lasts, or any side effects. The duplicate sentence adds no additional behavioral context.
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 primary description sentence is repeated verbatim, which wastes space and adds no value. The parameter documentation is terse but structured. The repetition makes it less concise than a single clear sentence would be.
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?
Although an output schema exists, the description still lacks important context about the pause operation, such as whether it can be undone, what happens to in-flight events, and how it relates to webhook_set and webhook_resume. The duplicate sentence and minimal parameter semantics leave the description incomplete for a tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must explain the parameters. It only restates the parameter names and their source endpoints (/access/login), without explaining what each parameter semantically represents or how they influence the pause operation. This is minimal compensation for the lack of schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Pauses') and identifies the resource ('the webhook on this wallet') and the effect ('from receiving events'). This clearly distinguishes it from sibling tools like webhook_resume and webhook_set, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool does but provides no explicit guidance on when to use it versus alternatives. No mention of webhook_resume or webhook_set, no context about when pausing is appropriate, and no exclusions or prerequisites beyond the parameter list. Usage is only implied by the verb 'pause'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__webhook_resumeCInspect
Resumes a webhook
Resumes a webhook @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden. It only states 'Resumes a webhook' without disclosing effects, idempotency, or required state (e.g., must be paused first). The @param and @return sections provide some context but not behavioral detail.
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 short but redundant, repeating 'Resumes a webhook' twice. The @param/@return structure is clear, but the duplication is unnecessary.
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 lacks essential context about what 'resuming' entails, including whether a webhook must already exist or how the webhook is identified given no webhook-specific parameter. It also doesn't mention any relationship to webhook_set or webhook_view. The output schema exists but the return is vaguely described as 'a json object' in the description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes @param lines that explain the source of each value: api_key is allocated to the application, token and wallet_fk are from /access/login. This adds meaning beyond the bare schema type definitions. However, it doesn't explain the role of wallet_fk or how these are used in the resume operation.
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 uses the verb 'resumes' with the resource 'webhook', clearly indicating the action. It does not explicitly compare with sibling tools like netfluid__webhook_pause, but the opposite nature is implied.
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?
There is no guidance on when to use this tool versus alternatives such as webhook_pause or webhook_set. The description only restates the operation without providing context or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__webhook_setAInspect
Sets a webhook on this wallet
Sets a webhook on this wallet. The webhook URL receives a PUT call containing a JSON object whenever an event in triggered on this wallet. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login @param url: The url on which to receive a PUT containing a JSON object
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden of behavioral disclosure. It does state that the webhook URL receives a PUT call with a JSON object on wallet events, which is useful. However, it does not disclose whether setting a webhook overwrites existing ones, whether the webhook is immediately active, or any authentication verification steps. The description is moderately transparent but lacks key behavioral details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description repeats the opening sentence 'Sets a webhook on this wallet' twice, which is redundant. The @param and @return sections are useful, but the repetition adds noise. It is not as concise as it could be, earning a mid-range score.
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?
An output schema exists, so the description need not explain return values. However, it does not address important contextual aspects such as whether multiple webhooks are allowed, how to update or delete, or the relationship with sibling lifecycle tools (pause/resume/view). The description covers the basic action but leaves notable gaps for an agent to fully operationalize the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 0% schema coverage, the description provides @param lines for all four parameters, adding meaning beyond the bare schema. It explains that api_key is the application key, token and wallet_fk come from /access/login, and url is where to receive PUT calls. This is helpful, though the explanations are brief and lack format constraints (e.g., URL validation).
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 'Sets a webhook on this wallet', using a specific verb and resource. It distinguishes itself from sibling tools like webhook_pause, webhook_resume, and webhook_view by indicating a creation/setting action. The purpose is immediately understandable.
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 implies the usage context: to receive PUT notifications for wallet events. However, it does not explicitly state when to use this tool versus alternatives like webhook_view or webhook_pause, nor does it provide exclusions. The guidance is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__webhook_viewBInspect
View the webhook on this wallet
View the webhook on this wallet. @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param wallet_fk: The wallet_fk provided by /access/login
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It does not disclose side effects, authentication requirements beyond parameter names, or what the JSON response contains. The verb 'view' implies read-only, but no explicit statement or behavioral details are given.
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 repeats 'View the webhook on this wallet' verbatim at the start and again as a standalone sentence. The parameter documentation is clear, but the redundancy makes it slightly less concise than necessary.
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?
Although the tool is simple and an output schema exists, the description is minimal: it lacks usage context, behavioral transparency, and any details about the webhook itself. The parameter origins are helpful but do not make the description complete for an agent deciding whether to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions for the three parameters, so the description compensates by explaining that api_key is the application key, and token and wallet_fk are obtained from /access/login. This gives the agent actionable information on how to source the parameters.
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 uses the specific verb 'view' and identifies the resource as 'the webhook on this wallet', clearly distinguishing it from sibling tools like webhook_set, webhook_pause, and webhook_resume. It states exactly what the tool does.
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?
There is no guidance on when to use this tool versus alternatives. It does not mention any exclusions, prerequisites, or relationships to other webhook tools. The description only states the action, leaving the agent to infer any usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__withdraw_ott_providers_listAInspect
Returns a list of supported providers.
Step 1. Returns a list of supported providers, an array of provider_id is returned, select one and use with /withdraw/to_ott_quote. @param api_key: The api key allocated to your application
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It discloses the return shape (array of provider_id) and prerequisite role, but does not explicitly state the operation is read-only or address potential errors or rate limits.
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 content is brief but redundant—'Returns a list of supported providers' appears twice, and the 'Step 1.' formatting adds minor clutter. Still, it is concise overall.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, one parameter, and an output schema, the description provides sufficient context: it identifies the provider list as input for a follow-up quote call. No further information is necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema only lists api_key as a string with no description. The description adds meaning by stating 'The api key allocated to your application', which helps the agent understand the parameter's purpose.
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 returns a list of supported providers and specifies it as Step 1 for withdraw_to_ott_quote, distinguishing it from sibling withdrawal 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?
It explicitly instructs to select a provider_id and use with /withdraw/to_ott_quote, providing clear usage context. However, it does not mention when not to use it or alternatives that bypass this list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__withdraw_to_bankAInspect
Withdraws to a bank account, anywhere world-wide. Confirm (yes/no) before executing
Withdraws to a bank account, anywhere world-wide. The account currency is the currency in which funds will be paid out. The recipient bank account (rba) must already be set. See /wallet/rba @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which to withdraw the funds. @param rba_fk: The rba_fk (recipient bank account id) to pay out to, can be found /wallet/rba_list. @param amount: The amount to withdraw @param note: The note on the transaction
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | ||
| token | Yes | ||
| amount | Yes | ||
| rba_fk | Yes | ||
| api_key | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a confirmation step ('Confirm (yes/no) before executing') and notes that the account currency is used for payout. With no annotations, it carries the full burden, but it omits important details such as irreversibility, potential fees, or failure modes, which are critical for a money withdrawal tool.
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 starts with a clear one-line summary but then repeats the exact same sentence immediately, wasting space. The rest is organized with @param block and useful context, but the duplication undermines conciseness.
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 covers prerequisites, parameter meanings, and notes the return type. However, for a financial operation with no annotations, it lacks detail about safety, error handling, or the nature of the confirmation step. Since an output schema exists, missing return details are acceptable, but the overall context is only partially complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes @param explanations for all six parameters, adding meaning beyond the bare input schema. It explicitly clarifies account_fk is a database ID (int) not an address and may not be 0, and directs users to /wallet/rba_list to find rba_fk, which is essential for correct invocation.
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 uses a specific verb 'Withdraws' with a clear resource 'to a bank account' and adds scope 'anywhere world-wide'. It distinguishes from sibling tools like netfluid__withdraw_to_ott by explicitly targeting bank accounts and referencing the recipient bank account (rba).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear prerequisite: 'The recipient bank account (rba) must already be set. See /wallet/rba', and clarifies that the account currency determines payout. However, it does not explicitly discuss when to use this tool versus alternatives like withdraw_to_ott or other withdrawal methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__withdraw_to_ottAInspect
Withdraws ZAR to any the OTT Mobile supported providers, confirm (yes/no) before executing
Step 3. Performs the withdrawal based on the quote_id returned from /withdraw/to_ott_quote. The final ZAR amount may differ from the quoted amount. On successfully submission a payment_id will be returned @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which the funds will be withdrawn @param quote_id: The quote_id returned from withdraw/to_ott_quote @param mobile: The recipients South African mobile number, format 27XXXXXXXXX
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| mobile | No | ||
| api_key | Yes | ||
| quote_id | Yes | ||
| account_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It adds meaningful caveats: 'The final ZAR amount may differ from the quoted amount', confirmation is required, and a payment_id is returned on success. However, it omits details about irreversibility, failure modes, or permission requirements, so transparency is adequate but incomplete.
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 reasonably concise and front-loaded with the main purpose, followed by workflow context and parameter details. The parameter list is necessary and structured. The phrasing 'any the OTT Mobile supported providers' is awkward but does not significantly harm clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description need not explain return values in depth, though it does mention payment_id. It captures the key workflow (step after quote), the quote dependency, the confirmation requirement, and the amount variance caveat. It lacks explicit details about the confirmation mechanism or prerequisites, but is sufficiently complete for a 5-parameter transactional tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description fully compensates by documenting all five parameters via @param blocks. It explains that account_fk is a database ID, not an account address, and cannot be 0, and specifies the mobile format as 27XXXXXXXXX. This adds essential meaning beyond the bare 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 states the tool 'Withdraws ZAR to any the OTT Mobile supported providers' and further specifies it performs the withdrawal based on a quote_id from '/withdraw/to_ott_quote'. This distinguishes it from sibling tools like withdraw_to_ott_quote and withdraw_to_ott_query. Despite minor grammar awkwardness, the verb and resource are specific.
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 explicitly identifies this as 'Step 3' and states it uses the quote_id returned from '/withdraw/to_ott_quote', providing clear workflow context. It also instructs to 'confirm (yes/no) before executing'. It does not explicitly name alternatives or exclusions, but the step-wise context is sufficient guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__withdraw_to_ott_queryAInspect
Queries the state of an OTT Mobile withdrawal
Step 4. Optional. Queries the state of an OTT Mobile withdrawal using the payment_id from withdraw/to_ott @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which the funds were withdrawn @param payment_id: The payment_id returned from withdraw/to_ott
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| payment_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden for behavioral disclosure. The verb 'Queries' implies a read-only operation, and it adds a useful caveat about account_fk being a database ID, but it does not explicitly state the lack of side effects or describe potential error conditions. This is adequate but not rich.
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 compact and readable, but the first two lines are nearly redundant ('Queries the state' repeated). The @param list is well-organized and each entry earns its place, so the redundancy is a minor flaw rather than a major issue.
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 query tool with four required parameters and no annotations, the description provides a clear purpose, all parameter semantics, and a note about the return type. The presence of an output schema offsets the lack of return field details. It could be slightly more informative about error states or preconditions, but it is largely complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description fully compensates by explaining each parameter's source and meaning. Notably, it clarifies that account_fk is a DB ID not an account address and may not be 0, and it specifies where to obtain token and payment_id. This 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Queries') and resource ('the state of an OTT Mobile withdrawal'). It distinguishes itself from sibling tools by referencing the payment_id from withdraw/to_ott, making it the dedicated status-check step in the withdrawal flow.
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 explicitly positions the tool as 'Step 4. Optional' and tells the user to use the payment_id returned from withdraw/to_ott, providing clear context on when to invoke it. It does not explicitly mention alternatives or exclusions, but the step-based guidance is sufficient for a straightforward query tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
netfluid__withdraw_to_ott_quoteAInspect
Generates a withdrawal quote to a OTT Mobile supported provider
Step2. Generates a withdrawal quote to a OTT Mobile supported provider On successfully submission a quote_id will be returned, use with /withdraw/to_ott @param api_key: The api key allocated to your application @param token: The wallet_api_token provided by /access/login @param account_fk: The account_fk (this is a database ID (int) not an account address (str) and may not be 0) The account_fk from which the funds will be withdrawn @param provider_id: The provider_id returned from withdraw/ott_providers_list @param amount: The amount to be withdrawn from the account_fk, in its native currency.
@return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | ||
| amount | Yes | ||
| api_key | Yes | ||
| account_fk | Yes | ||
| provider_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It discloses that a quote_id is returned and positions this as a non-executing step, but does not mention quote validity, fee reservation, or other side effects. This is adequate but not deeply transparent.
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 opening sentence is duplicated ('Generates a withdrawal quote to a OTT Mobile supported provider' appears twice), and there are minor grammar issues ('a OTT', 'successfully submission'). The @param structure is readable but the redundancy hurts conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description needn't detail return values. It covers prerequisites, sequential usage, and parameter semantics thoroughly, making the tool's context complete. Minor gaps: no error conditions or quote expiration details.
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?
All five parameters are explicitly described with types, sources, and constraints—e.g., account_fk is a database int not an address and may not be 0, provider_id comes from the providers list, amount is in native currency. This is essential since the schema provides zero descriptions.
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?
Clearly states it generates a withdrawal quote for OTT Mobile providers, with a specific verb+resource. It also distinguishes itself as 'Step2' and instructs to use the returned quote_id with /withdraw/to_ott, separating it from the actual withdrawal execution.
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?
Provides a clear sequence: generate quote first (Step2), then use quote_id with /withdraw/to_ott. It also names a prerequisite (provider_id from withdraw/ott_providers_list). However, it does not explicitly state when not to use this tool or name alternative quote/query tools, so it stops short of full exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__cost_per_fup_unitAInspect
Returns the cost of a FUP token when performing a top-up. Customers may purchase additional workflow tokens on any subscription including the freemium tier The additional tokens do not extend the subscription period @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the transparency burden. It discloses that the operation returns a JSON object with results in a 'values' object, which is helpful. It does not explicitly state that the tool is read-only or lacks side effects, but the wording 'Returns the cost' strongly implies a non-mutating lookup, providing minimal but adequate behavioral guidance.
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 main purpose is front-loaded in the first sentence, with the return format noted at the end. The two sentences about customer purchase behavior are extra contextual detail that may not be strictly necessary for invoking the tool, making it slightly less concise than ideal but still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no parameters and an output schema exists, so the description only needs to indicate the tool's purpose and key behavior. It clearly states the return object schema and the business context around FUP tokens, which is sufficient for a zero-parameter query tool. It could mention authentication or error cases, but these are less critical given the simplicity.
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 zero parameters, so there are no parameter details to document. Per the baseline for 0-parameter tools, this scores a 4; the description appropriately focuses on the return format instead of parameter semantics.
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 opens with a specific verb and resource: 'Returns the cost of a FUP token when performing a top-up.' It also clarifies that FUP tokens are additional workflow tokens purchasable on any subscription including freemium, distinguishing it from sibling tools like paywall__purchase_add_on_units or paywall__customer_deduct_from_fup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: customers may purchase additional workflow tokens on any subscription including freemium, and the tokens do not extend the subscription period. This indicates the tool is for querying cost when considering a top-up. However, it does not explicitly name alternative tools or state when not to use it, so it lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_allowance_workflowBInspect
Returns the customer's available workflow allowance. @param customer_id: The customer's database id @return: a json object, containing the customer id in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full burden of disclosing behavior. It mentions it returns a JSON object with the customer id, but does not disclose any side effects, error handling, security requirements, or limitations. As a read operation, it implies no mutation, but this is not explicitly stated, and the nature of 'workflow allowance' remains unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, with two sentences covering purpose and parameter, plus a return specification. Every word earns its place, and the @param/@return structure provides clear organization without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given its simplicity (one parameter, output schema exists), the description is adequate but lacks important context. The term 'workflow allowance' is undefined, and the description does not explain the meaning or significance of the returned value. It covers the basic mechanics but misses the 'why' or 'when' that would make it fully contextual.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no description for customer_id (0% coverage), so the description compensates by stating it is 'the customer's database id.' This adds meaning beyond the schema's bare integer type, but does not explain how to obtain the id or any constraints. It is minimal but sufficient for basic understanding.
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 returns the customer's available workflow allowance, using a specific verb ('Returns') and a distinct resource ('workflow allowance'). It is ambiguous what 'workflow allowance' means, but it is clearly a separate resource from siblings like credit balance or subscription status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of context, prerequisites, or exclusions. The description simply states the function without explaining typical use cases or distinguishing from similar paywall tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_createAInspect
Creates a customer using the unique identifier (session_key). @param identifier: The customer's unique identifier, typically the session_id @param wallet_fk: The Netfluid wallet_fk to assign to the new customer, defaults to 0, can be set later @param account_fk: The Netfluid account_fk to assign to the new customer, defaults to 0, can be set later @param subscription_type_fk: The database subscription type, defaults to 1 the freemium subscription @return: a json object, containing the customer id in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_fk | No | ||
| account_fk | No | ||
| identifier | Yes | ||
| subscription_type_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses default values for wallet_fk, account_fk, and subscription_type_fk, notes that the first two can be set later, and describes the return format. Since no annotations are present, this information is valuable, though it does not cover error handling or uniqueness constraints.
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 JSDoc-style format is compact and logical, with each parameter described on its own line and a clear return statement. No redundant or filler content.
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 4-parameter create operation with no annotations, the description covers all inputs, defaults, and the return value. It is sufficiently complete for an agent to invoke the tool correctly, especially with the output schema also available.
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?
All four parameters are explained with clear descriptions: identifier as session_id, wallet_fk and account_fk as Netfluid foreign keys with defaults, and subscription_type_fk as a database type defaulting to freemium. This fully compensates for the 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Creates a customer' and specifies the unique identifier (session_key). It distinguishes from sibling tools like paywall__customer_find by indicating creation rather than retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance is provided on when to use this tool versus alternatives such as other customer-related tools. It only describes the action and parameters, leaving the agent to infer appropriate use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_deduct_from_fupAInspect
Deducts a unit from the customer's available workflow allowance. Do not call this tool when the customer is requesting assistance related to the pay wall and its subscriptions. This tool should be called after each AI response that is not pay wall related. @param customer_id: The customer's database id @return: a json object, containing the customer_id and remaining fup token balance in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the mutation (deducts a unit) and the precise timing/condition for the call, plus the return structure. However, it does not mention potential failure modes or side effects like insufficient balance, which could be relevant.
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 concise and well-structured. It uses short sentences and standard @param/@return formatting. No unnecessary words or repetition.
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 covers the core functionality, usage guidance, parameter, and return value. An output schema exists, so return details are redundant but helpful. It lacks edge-case information like error handling or idempotency, but for a simple deduction tool, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has only customer_id with no description, but the description explicitly explains '@param customer_id: The customer's database id'. This fully compensates for the 0% schema coverage.
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?
Clearly states the action (deducts a unit) and the resource (customer's available workflow allowance). Distinguishes from sibling tools by specifying the deduction behavior and the specific context of use.
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 provides when to call (after each non-paywall AI response) and when not to call (when customer is requesting paywall-related assistance). This offers clear operational guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_findAInspect
Searches for a customer using the unique identifier (session_key). @param identifier: The customer's unique identifier, typically the session_id @return: a json object, containing the customer id in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It implies a read-only search but does not explicitly state that it has no side effects or any access requirements. It does mention the return object, which provides some transparency about output, but lacks depth.
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 compact, with a single purpose sentence plus parameter and return documentation. It front-loads the main action and avoids unnecessary filler.
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 one-parameter search tool, the description covers the purpose, parameter, and return. The presence of an output schema reduces the need to explain return values further, and the description is sufficient for basic usage, though it could mention error cases or alternatives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides a detailed explanation of the 'identifier' parameter, noting it is the customer's unique identifier, typically the session_id. This compensates for the schema's lack of description for the parameter, though the slight inconsistency between session_key and session_id could be confusing.
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 a specific verb 'searches' and resource 'customer' using the identifier, and even specifies the return format. This distinguishes it from other customer tools like customer_create or customer_get_credit_balance, which serve different purposes.
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?
There is no explicit guidance on when to use this tool versus alternatives like customer_get_credit_balance or customer_allowance_workflow. The description only states the function, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_get_credit_balanceBInspect
Returns the customer's credit balance in currency. Credit balances are generated when overpaying for a subscription or when purposefully redeeming vouchers to pay for additional fup units @param customer_id: The customer's database id @return: a json object,in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full responsibility for behavioral disclosure. It only says 'returns' a balance, which implies read-only behavior but doesn't explicitly state safety, auth requirements, or potential side effects. The description also omits details on error conditions or response handling beyond mentioning a 'values' object, leaving 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The main description is concise, front-loading the purpose and adding domain context in a short paragraph. The @param and @return lines are appended in JSDoc style, which is somewhat unconventional but keeps info compact. It is not bloated, though minor formatting issues ('json object,in') reduce polish.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity and the presence of an output schema, the description is adequate but not fully complete. It doesn't clarify the currency scope or whether the balance is per-currency or total, and terms like 'fup units' aren't expanded. The existence of an output schema reduces the need for return-value details, but there are still contextual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only the type and requirement for customer_id, with zero description coverage. The description adds the meaning 'The customer's database id', which helps but doesn't explain how to obtain or use it. This minimal addition gives some value but is not thorough enough for a higher score.
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 'Returns the customer's credit balance in currency' with a specific verb and resource. It also provides context on how credit balances arise (overpayment or voucher redemption), which helps differentiate it from similar balance-querying siblings. However, it doesn't explicitly name alternatives or contrast with other getter tools, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used to retrieve a customer's credit balance, and the background explanation suggests typical scenarios. However, it provides no explicit guidance on when to prefer this tool over alternatives, nor any exclusions or prerequisites. Usage is implied rather than directly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_get_invoicesAInspect
Returns the customer's invoices. @param customer_id: The customer's database id @return: a json object,in the "values" object containing one or more data rows in an object array
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses the return structure (a JSON object with a 'values' array of data rows), which is useful. However, it does not explicitly state read-only behavior, error handling, or side effects.
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 compact and front-loaded, consisting of a purpose line, a parameter line, and a return line. There is minimal fluff, though the return statement has a minor grammatical awkwardness ('json object,in') and could be cleaner.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one well-documented parameter, no annotations, no output schema), the description covers the essential aspects: what it does, the parameter semantics, and the return format. It lacks error behavior and comparison to siblings, but those are not critical for a basic getter.
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 only gives the parameter type (integer), but the description adds '@param customer_id: The customer's database id', providing meaning beyond the schema. This compensates for the 0% schema description coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Returns the customer's invoices' with a clear verb and resource. It is specific enough to distinguish from sibling tools like customer_payment_history or customer_get_credit_balance, as it focuses on invoices.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention related sibling tools, prerequisites, or exclusions, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_get_linked_wallet_accountAInspect
Returns the customer's linked Netfluid wallet_fk and account_fk, if available. @param customer_id: The customer's database id @return: a json object, in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the conditional nature ('if available') and the return location ('in the values object'), but does not mention error behavior, permissions, or any side effects. This is minimal but adequate for a simple 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: one sentence for the purpose plus @param and @return lines. Every part is informative with no redundancy.
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 one-parameter getter with an output schema, the description covers the purpose, parameter meaning, and return shape. It lacks usage context but is otherwise complete given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description compensates by defining customer_id as 'The customer's database id'. This adds meaningful context beyond the plain integer type, clarifying that it is an internal database identifier.
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 returns the customer's linked Netfluid wallet_fk and account_fk, if available. This specific verb and resource distinguish it from sibling tools like paywall__customer_link_wallet_account, which performs the linking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It only states what it does, with no mention of use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_link_wallet_accountAInspect
Links a customer_id with a netfluid wallet_fk and account_fk. This tool will overwrite the system Netfluid wallet and PIN auto-created for each subscription client. Always confirm before execution. This wallet will be used to pay for subscriptions. @param customer_id: The customer's database id @param wallet_fk: The Netfluid wallet_fk to link @param account_fk: The Netfluid account_fk to link @param encrypted_wallet_pin: For internal use, submit as a blank string @return: a json object, in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| wallet_fk | Yes | ||
| account_fk | Yes | ||
| customer_id | Yes | ||
| encrypted_wallet_pin | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries full responsibility and discloses a critical behavioral trait: it 'will overwrite the system Netfluid wallet and PIN auto-created for each subscription client.' It also notes the internal-use parameter and return shape, though it omits reversibility and permission requirements.
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 front-loaded with a clear first sentence and every subsequent sentence adds value (overwrite warning, usage context, param docs, return type). The @param lines are redundant with the schema structurally but beneficial because the schema lacks descriptions.
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?
It covers the purpose, all parameters, a destructive side-effect warning, and the return shape ('a json object, in the values object'), which is sufficient for a 4-parameter mutation tool. It stops short of explaining error scenarios, permissions, or what happens to existing subscription payment behavior after linking.
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 @param notes explain every parameter, including the non-obvious 'encrypted_wallet_pin: For internal use, submit as a blank string,' which is not in the schema. This fully compensates for the 0% schema description coverage.
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 opens with a specific verb and resource: 'Links a customer_id with a netfluid wallet_fk and account_fk,' clearly stating what the tool does. It also distinguishes itself from sibling read tools like customer_get_linked_wallet_account by emphasizing the linking/overwrite behavior.
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?
It provides clear context ('This wallet will be used to pay for subscriptions') and a strong caution ('Always confirm before execution') due to the overwrite side effect. However, it does not explicitly name alternative tools or define when not to use it, stopping short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_log_paymentAInspect
Logs payment of an invoice, invoices may be paid in several micro payments. Only once the invoice is paid in full does the subscription activate. Any amount overpaid is saved towards credit for the next subscription @param invoice_id: The customer's database invoice_id @param amount_paid: The decimal amount paid @param customer_payment_reference: An optional payment reference @return: a json object, in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| invoice_id | Yes | ||
| amount_paid | Yes | ||
| customer_payment_reference | No | Paid |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explains important business effects: partial payments are allowed, full payment activates the subscription, and overpayments become credit for the next subscription. This goes beyond simply saying 'logs payment' and provides meaningful side-effect context, though it does not mention failure modes or idempotency.
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 organized with a clear functional statement, two sentences of business context, a @param list, and a @return note. Every sentence contributes meaning, and there is no fluff. It is slightly verbose due to the business context, but that context is valuable and earns its place.
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 covers the tool's purpose, key business rules, all parameters with semantics, and return format (a JSON object in the 'values' object). Given the tool's moderate complexity and the presence of an output schema, this is fairly complete. It could be improved by noting any prerequisites, such as invoice existence or payment validation, but overall it provides a solid understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% coverage, but the description compensates with @param tags that explain the meaning of each parameter: invoice_id as customer's database ID, amount_paid as decimal, and customer_payment_reference as optional. This adds value beyond the raw schema. However, it does not mention the schema's default of 'Paid' for customer_payment_reference, a minor gap.
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's core action with a specific verb and resource: "Logs payment of an invoice." It distinguishes itself from sibling payment tools by explaining that invoices can be paid in micro-payments and that subscription activation only occurs when paid in full, which is unique to this logging function.
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 implies when to use the tool (for logging invoice payments, especially partial micro-payments) but does not explicitly state when to use it over alternatives like paywall__pay_subscription_with_wallet or paywall__payment_3d_secure_link. No exclusions or alternatives are mentioned, so guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_log_subscriptionBInspect
Creates a new subscription for the customer and generates a new invoice. @param customer_id: The customer's database id @param subscription_type_fk: The database subscription type @return: a json object, in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes | ||
| subscription_type_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses the two key side effects (subscription creation and invoice generation) and the return structure ('a json object, in the 'values' object'), but does not mention idempotency, permissions, or duplicate 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: one action sentence followed by clean @param and @return lines. No unnecessary words or redundant information; every element serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with an output schema, the description covers the core action and parameter meanings. However, it omits usage context, prerequisites (e.g., customer existence), and error behavior, and lacks guidance on how it relates to subscription validation or payment tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description explicitly defines both parameters: customer_id as 'customer's database id' and subscription_type_fk as 'database subscription type.' This adds meaningful context beyond the bare integer types, clarifying that these are internal database keys.
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 'Creates a new subscription for the customer and generates a new invoice,' identifying the specific verb and resources. It distinguishes from siblings through the focus on subscription creation and invoice generation, but does not explicitly contrast itself with alternative 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?
No guidance is provided on when to use this tool vs alternatives such as paywall__customer_validate_subscription or paywall__pay_subscription_with_credits. There are no prerequisites, exclusions, or contextual hints beyond the basic action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_netfluid_fund_blockchainAInspect
Returns Netfluid accounts on which USDC/USDT can be received. A further step will be required to sell the USDC/USDt for ZAR before a wallet_transfer can take place. @param wallet_fk: The Netfluid wallet_fk @param pin: The Netfluid wallet PIN @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that a further step is needed to sell USDC/USDT for ZAR, indicating this is only a query. No annotations are provided, so the description carries the burden; it does not mention any destructive side effects, but could explicitly state it is read-only.
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?
Extremely concise: three sentences plus param/return docs with no filler. Front-loaded with main purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple query tool given an output schema exists. However, lacks details on error conditions, context about the 'values' object, or any rate limit info. Basic completion.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. However, the @param descriptions ('The Netfluid wallet_fk', 'The Netfluid wallet PIN') merely restate the parameter names and add no meaningful semantics 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?
Clearly states it returns Netfluid accounts eligible for receiving USDC/USDT, with a specific verb and resource. It distinguishes from siblings like paywall__customer_netfluid_fund_options and paywall__wallet_stablecoin_transfer by focusing on account eligibility.
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?
Implies usage for checking stablecoin-receiving accounts, but lacks explicit when-to-use or when-not-to-use guidance, and no alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_netfluid_fund_optionsAInspect
Returns ALL funding options via the Netfluid wallet. This is a comprehensive list for all Netfluid funding options that include:
Netfluid wallet addresses for Netfluid to Netfluid payments, sender can use any currency;
Electronic Banks Transfers to registered Netfluid Bank Accounts in multiple countries, including South Africa;
Pay@ Online or at till point of most retailers in South Africa and Botswana;
Payshap instant, low-cost bank to bank transfers in South Africa;
Virtual Banks Accounts (fiat on-ramps) accepting instant fiat payments in Europe and the USA and converting the funds to USDC/USDt use wallet_stablecoin_transfer to cash-out to ZAR;
Blockchain wallets that accept instant USDC/USDt transfers use wallet_stablecoin_transfer to cash-out to ZAR;
Tokenised Visa/Mastercards charged in ZAR;
Netfluid vouchers, simple digital vouchers issued by Netfluid wallets;
OTT vouchers, available for purchase in most retailers, online or at local Spaza shops in South Africa. @param wallet_fk: The Netfluid wallet_fk @param pin: The Netfluid wallet PIN @param account_fk: The Netfluid account_fk (not account address but the database account_fk), if set to 0, we'll use the first available account
@return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes | ||
| account_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the burden. It discloses that the tool returns a list of options with details (9 items) and mentions handling of account_fk parameter. However, it does not state side effects, auth requirements beyond parameters, 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long (9 bullet points) but front-loaded with purpose. The bullet structure helps readability, but many details could be condensed for an AI agent without losing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Output schema exists, so return format is covered. However, given 3 parameters with 0% schema coverage and empty annotations, the description should explain more about parameters and provide usage context. It covers the 'what' but not the 'how' or 'when' sufficiently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description only partially explains parameters. Only account_fk is described (database FK, default 0 means first available). pin and wallet_fk are merely named with no additional meaning 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 states it returns ALL funding options via Netfluid wallet, with a specific verb 'Returns' and resource 'funding options'. It distinguishes from sibling tools like paywall__customer_netfluid_fund_blockchain by being comprehensive.
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?
While the description implies use for an overview of funding options, it does not explicitly state when to use this tool versus the more specific sibling tools (e.g., for blockchain or SEPA). No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_netfluid_fund_sepa_and_achAInspect
Returns European (SEPA) and/or United States ACH/Wire near-instant virtual bank account funding options via the Netfluid wallet. The reference in the deposit instruction is extremely important in order to route funds correctly. Funds received in these bank accounts are automatically converted to USDC. A further step will be required to sell the USDC for ZAR before a wallet_transfer can take place. @param wallet_fk: The Netfluid wallet_fk @param pin: The Netfluid wallet PIN @param account_fk: The Netfluid account_fk (not account address but the database account_fk), if set to 0, we'll use the first available account @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes | ||
| account_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses key behaviors: near-instant funding, importance of reference for routing, automatic USDC conversion, and the need to later sell USDC for ZAR. It also explains the account_fk default behavior. However, it does not explicitly state whether the operation is read-only.
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 structured with a main purpose sentence, important usage notes, and parameter/return documentation. It is informative but could be slightly more concise without losing key details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool complexity (3 parameters, output schema present), the description covers the main functionality, parameter semantics, important behavioral notes, and return format. It lacks information on error conditions but is otherwise complete.
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 0% description coverage, but the description provides detailed explanations for all three parameters (wallet_fk, pin, account_fk), including the meaning of setting account_fk to 0. This fully compensates for the missing schema descriptions.
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 it returns European SEPA and US ACH/Wire funding options via Netfluid wallet, with a specific verb and resource that distinguishes it from sibling tools like 'paywall__customer_netfluid_fund_blockchain' and 'paywall__customer_netfluid_fund_options'.
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 specifies the geographic and payment method scope (SEPA/ACH/Wire) but does not provide explicit guidance on when to use this tool versus alternatives such as 'paywall__customer_netfluid_fund_options' or when not to use it. The context of use is implied but not clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_payment_historyBInspect
Returns the customer's payment history @param customer_id: The customer's database id @return: a json object, in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the full disclosure burden. It mentions the return format ('a json object, in the 'values' object') but does not disclose any behavioral aspects such as errors, permissions, pagination, or whether the customer must exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very brief, using a single sentence plus @param and @return annotations. It is concise and front-loaded, though the @return phrasing is somewhat awkward.
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 read tool with one parameter and an output schema, the description is minimally adequate. However, it lacks context on when this is preferred over similar tools like customer_get_invoices, and the return structure is only partially described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides customer_id as an integer with no description, but the description adds '@param customer_id: The customer's database id', clarifying it is the internal DB identifier. This adds meaningful context 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 states the tool 'Returns the customer's payment history', which specifies a verb and resource. It distinguishes from sibling tools like paywall__customer_get_invoices by naming 'payment history', although it does not explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of contexts where payment history is needed or exclusions (e.g., when to use invoices instead).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_subscription_statusAInspect
Returns the customer's current subscription status including the expiry_date @param customer_id: The customer's database id @return: a json object, containing the customer id in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read operation via 'Returns', but with empty annotations it does not explicitly state safety guarantees, prerequisites, or side effects. It also includes a confusing @return note about customer id that may contradict the stated purpose, though not egregiously.
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 main description is compact and front-loaded, but the @return annotation appears potentially inaccurate or confusing, referencing customer id rather than subscription status. This slightly undermines the conciseness and clarity of an otherwise efficient description.
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 one-parameter read tool, the description is largely sufficient: it states the purpose and parameter semantics, and an output schema exists. However, it lacks mention of prerequisites or edge cases, and the return note adds ambiguity, keeping it from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains customer_id as 'The customer's database id', adding meaning beyond the bare integer type. Given 0% schema description coverage, this is valuable, though it does not elaborate on how to obtain the id or any constraints.
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 returns the customer's current subscription status, specifying expiry_date, which distinguishes it from related tools like validation or logging. The verb 'Returns' and the specific resource make the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as paywall__customer_validate_subscription or paywall__customer_log_subscription. No context or exclusions are provided, leaving the agent to infer usage solely from the tool name and description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__customer_validate_subscriptionAInspect
Returns the current state of a customer's subscription. @param customer_id: The customer's database id @return: a json object, with the current state of a customer's subscription, in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries the burden of behavioral disclosure. The verb 'Returns' implies a read-only operation, and the @return line indicates the output is in a 'values' object, providing some transparency. However, it does not explicitly state that no side effects occur, nor does it cover error behavior, missing customers, or any validation logic implied by the tool name.
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 two concise lines with doc comments, front-loading the primary purpose. Every sentence provides value, with no redundancy or fluff.
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 tool is simple (one parameter, no nested objects) and an output schema exists, so a detailed description is not strictly required. However, the description leaves ambiguity about what 'validate' means versus the similar sibling tool, and does not mention error handling or edge cases like non-existent customer IDs, making it only minimally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explicitly documents the single parameter 'customer_id' as 'The customer's database id', which the input schema lacks. The @return description clarifies the output structure as a JSON object within a 'values' field, fully compensating for the 0% schema description coverage.
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 returns the current state of a customer's subscription, using a specific verb and resource. However, it does not differentiate from the sibling tool paywall__customer_subscription_status, and the 'validate' aspect of the name is not explained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as customer_subscription_status. There are no conditions, exclusions, or prerequisite details to help the agent choose appropriately.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__delete_unpaid_invoiceAInspect
Deletes an unpaid invoice, updates payment history. The system allows unpaid invoices to be deleted. This means the subscription will likely revert to it's last state. Only works on unpaid invoices. @param invoice_id: The database invoice_id @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| invoice_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing side effects. It mentions that payment history is updated and that the subscription may revert, which are important behavioral outcomes. It also states that it only works on unpaid invoices, implying failure on paid ones. It could add details on error handling or irreversibility, but the key behaviors are covered.
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 concise and front-loaded. The first sentence captures the action, followed by relevant constraints and consequences. The @param and @return sections are clearly formatted. No superfluous information is included.
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 covers the purpose, parameter, return format, and side effects. The output schema exists, so return values are partially handled. It could be more complete by specifying error scenarios (e.g., what if invoice is paid or not found) and whether deletion is permanent, but for a simple delete operation it is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions for the single parameter (invoice_id), and schema coverage is 0%. The description compensates by stating '@param invoice_id: The database invoice_id', clarifying that the ID is the database identifier, not an external reference. This adds meaningful context beyond the schema's type definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Deletes an unpaid invoice, updates payment history.' It identifies the specific resource (unpaid invoice) and scope ('Only works on unpaid invoices'). This distinguishes it from any sibling tools, none of which perform deletion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool: only for unpaid invoices. It also explains the consequence ('subscription will likely revert to its last state'). However, it doesn't explicitly mention alternatives or when not to use beyond the unpaid invoice restriction, but the constraint is clearly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__liveness_checkBInspect
Provides a tool to test the network availability of the API @return: a json object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full behavioral burden. It only notes that a JSON object is returned, but fails to disclose side effects (expected to be none), what a successful or failed check looks like, or any network/error behavior. Minimal transparency beyond the purpose.
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 one sentence and gets to the point quickly. However, the '@return: a json object' suffix is a docstring artifact that adds no value since an output schema is present, slightly reducing structural cleanliness.
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 liveness check, the description is sufficient: it explains the purpose and notes the JSON return. With an output schema present, the description doesn't need to detail return fields. However, it could mention typical response semantics (e.g., success/failure indicators) to be fully complete.
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, and the input schema confirms an empty object. According to the rubric, the baseline for 0 parameters is 4, and no further parameter description is needed.
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 tests network availability of the API, using a specific verb and resource. It is distinguishable from siblings by its 'liveness_check' name and clear purpose, though it does not explicitly disambiguate from similar ping tools like netfluid__help_ping.
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?
There is no guidance on when to use this tool versus alternatives. The description simply states what it does without any contextual triggers, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__payment_3d_secure_linkAInspect
Returns a 3D secure card payment link for a Netfluid wallet. Customers are required to open and complete the card details form. On a successful transaction, the card will be tokenised. Tokenised cards can be charged instantly, without using a 3D secure link, in the future. The url returned is valid for a single use. @param wallet_fk: The Netfluid wallet_fk @param pin: The Netfluid wallet PIN @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses key behaviors: the link is single-use, card gets tokenized on success, and future charges can be instant without 3D secure. It also mentions the return structure. It lacks details on errors, rate limits, or idempotency, but covers the main traits.
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 concise with seven short sentences, each adding value. It front-loads the main purpose and logically flows through the customer interaction, tokenization benefit, and single-use constraint. 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?
Given the output schema exists, the description supplements it with return format and behavior. It covers purpose, parameters, and tokenization lifecycle. It is missing error scenarios and prerequisites, but for a two-parameter tool, it is largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description adds meaningful context for both parameters: wallet_fk and pin are identified as Netfluid wallet identifiers. This clarifies their role beyond the schema's type/requirement, though constraints (e.g., format) are not specified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Returns a 3D secure card payment link for a Netfluid wallet,' clearly identifying the tool's purpose. It explains the tokenization process, distinguishing it from other payment tools, but does not explicitly contrast with sibling tools like pay__subscription_with_wallet.
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 implies usage by explaining that customers must open the link and complete the form, and that tokenized cards can be charged later. However, it does not explicitly state when to use this tool versus alternatives (e.g., direct wallet charge) or provide conditions for skipping it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__payment_payat_linkAInspect
Returns a Pay@ payment link and payat_reference for a Netfluid wallet.
Pay@ provides both online and physical payment options.
Physical at till points at most retailers in South Africa.
At the till the customers performs a bill payment and provides the unique payat_reference (SA) or payat_reference_bw (BW).
Online payments via the payat_link, provides a funding method with direct integration in South African banking apps.
Both the url and the payat_reference(_bw) code returned is valid for multiple use.
The amount is decided by the customer at till point or on the link.
Pay@ charges a minimum of R12 in fees which is deducted from the fund received in the wallet.
The funds remain in the Netfluid account until wallet_transfer.
@param wallet_fk: The Netfluid wallet_fk
@param pin: The Netfluid wallet PIN
@param account_fk: The Netfluid account_fk into which the funds will be deposited, if 0 the system will select the first available ZAR account.
@return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes | ||
| account_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries the full burden. It discloses several behavioral traits: Pay@ charges a minimum R12 fee deducted from funds received, funds remain in the Netfluid account until wallet_transfer, and both link and reference are valid for multiple uses. It also explains the account_fk=0 fallback behavior. This is substantive transparency, though it does not mention potential error conditions or idempotency of link creation.
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 longer than average, but each sentence earns its place by explaining the payment context, fee structure, parameter semantics, and return value. It is logically structured with clear @param and @return sections. Slight redundancy exists (e.g., 'Both the url and the payat_reference(_bw) code returned is valid for multiple use' could be merged with earlier sentence), but overall it is efficient given the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (payment link generation, South African context, fee deduction, multi-use codes, cross-border reference variants), the description covers all essential aspects: what it returns, how the payment flow works, fee implications, and parameter behavior. It also benefits from an output schema (not shown) which likely documents the return structure further. This is a complete and self-sufficient description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description fully compensates by documenting all three parameters: wallet_fk (Netfluid wallet_fk), pin (Netfluid wallet PIN), and account_fk (destination account, with 0 meaning auto-select first available ZAR account). It also clarifies the return object. This adds meaning well beyond the bare schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Returns a Pay@ payment link and payat_reference for a Netfluid wallet.' This is a specific verb+resource construction that distinguishes it from sibling tools like paywall__payment_3d_secure_link and netfluid__fund_payat. It also explains what Pay@ offers (online and physical payment options), making the tool's scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: it explains when to use Pay@ (for receiving payments via Netfluid wallet, both online and at physical till points) and details how the payment process works (customer chooses amount, unique reference, multi-use validity). However, it does not explicitly mention alternatives or exclusions, such as when to use a different payment method or sibling tool like netfluid__fund_payat instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__pay_subscription_with_creditsAInspect
Accepts a subscription payment from the customers prepaid credit. These credits could have arrived from an over-payment or calling netfluid_wallet_transfer tool. The invoice_id is the result of a call to customer_log_subscription tool @param customer_id: The database customer_id @param invoice_id: The database invoice_id @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| invoice_id | Yes | ||
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the operation (accepts payment), the credit source, and return format (json with 'values'). But it does not mention potential side effects (balance deduction, invoice status change), failure modes (insufficient credit), or reversibility. This adds some context but remains incomplete.
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 three sentences, front-loaded with the primary action, followed by useful context and clear parameter annotations. No redundant words or filler—every sentence adds value.
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 two-parameter payment tool, this description covers the core aspects: operation, credit source, invoice origin, and return envelope. The output schema exists, so detailed return fields are not necessary. Missing preconditions and failure behavior, but overall adequate for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It provides explicit @param docs for both parameters, identifying them as database IDs and tying invoice_id to customer_log_subscription. This gives useful meaning beyond the schema's bare integer types, though customer_id lacks detail on how to obtain 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 states a specific action: 'Accepts a subscription payment from the customers prepaid credit.' It clearly identifies the resource (subscription payment via prepaid credit) and differentiates from siblings like paywall__pay_subscription_with_wallet and paywall__pay_subscription_with_ott_voucher by specifying the credit source. It also links the invoice to customer_log_subscription.
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?
Provides clear context on when to use the tool: when paying with prepaid credits, and explains how credits arrive (over-payment or netfluid_wallet_transfer). It also states invoice_id originates from customer_log_subscription. However, it does not explicitly exclude alternatives or state when not to use it, so it misses the full 'when-not' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__pay_subscription_with_ott_voucherAInspect
Accepts a subscription payment using an OTT Voucher PIN. If successful it will issue and make payment on a subscription invoice, which in turn will either extend or create a customer subscription. This is the preferred tool to use for activating subscriptions using OTT as a payment method @param identifier: The customer unique identified, hint: the session_id is normally also the mobile number @param ott_pin: The OTT voucher PIN, typically a 10-digit number @param subscription_type_fk: The database subscription_type, a number starting at 1, defaults to 1 @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| ott_pin | Yes | ||
| identifier | Yes | ||
| subscription_type_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosure. It details the payment flow: accepts a PIN, issues and pays on an invoice, and either extends or creates a subscription. It also specifies the return value shape. It does not mention failure modes or whether the PIN becomes consumed, but it provides a clear and non-trivial behavioral overview beyond the schema.
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 front-loaded with the core purpose, followed by impact and usage guidance, then organized @param and @return documentation. Every sentence adds value, no filler or repetition. It manages to be thorough without being verbose, and the structure supports quick agent scanning.
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 tool with no annotations and sparse schema, the description covers the main action, the preferred use case, parameter hints, side-effect information (invoice issuance and subscription lifecycle), and return value structure. It omits error cases, prerequisites (e.g., customer existence) and whether the voucher is destroyed, but given the output schema exists and sibling context, it is reasonably complete for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no descriptions (coverage 0%), but the description's @param documentation adds substantial meaning: identifier is linked to session_id/mobile number, ott_pin is typically 10 digits, and subscription_type_fk is a database number defaulting to 1. These hints go far beyond bare names and types, making parameter usage clear and actionable.
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 a specific action: 'Accepts a subscription payment using an OTT Voucher PIN.' It identifies the resource (subscription) and the method (OTT voucher), and distinguishes itself from sibling payment tools like paywall__pay_subscription_with_credits and paywall__pay_subscription_with_wallet by explicitly being the 'preferred tool' for OTT-based activation.
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 explicitly says this is the preferred tool for activating subscriptions using OTT as a payment method, giving clear usage context. It does not name alternative tools or state exclusions, but the distinction from other payment subscription tools is implied by the OTT-specific focus. This exceeds a vague hint but stops short of full alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__pay_subscription_with_walletAInspect
Accepts a subscription payment from a tied Netfluid wallet and account. The customer's attached wallet's PIN is required to perform the transaction. @param identifier: The customer unique identified, hint: the session_id is normally also the mobile number @param from_wallet_pin: The assigned Netfluid wallet PIN, 5 digits as a string @param subscription_type_fk: The database subscription_type, a number starting at 1, defaults to 1 @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| identifier | Yes | ||
| from_wallet_pin | Yes | ||
| subscription_type_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It reveals that the wallet PIN is required and mentions the return JSON, which gives some behavioral insight. However, it does not disclose side effects (e.g., fund deduction, failure conditions, reversibility) or prerequisites beyond the PIN, leaving gaps for a financial mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with @param annotations, each line adding value. It is slightly longer than necessary but contains no fluff. The first two sentences convey purpose and prerequisite efficiently.
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 payment tool with no annotations and an output schema only implied by @return, the description covers parameters and return shape but lacks explicit use-time guidance, alternatives, and failure/error behavior. This leaves the agent under-informed about when to choose this over credit or voucher payment methods.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates fully by documenting all three parameters with meaningful hints: identifier (session_id/mobile), from_wallet_pin (5 digits string), and subscription_type_fk (number starting at 1, defaults to 1). This far exceeds what the raw schema provides.
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: 'Accepts a subscription payment from a tied Netfluid wallet and account.' This uses a specific verb and resource, and distinguishes it from sibling tools like paywall__pay_subscription_with_credits and paywall__pay_subscription_with_ott_voucher by focusing on wallet-based payment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: the customer's wallet PIN is required, and the identifier hint (session_id is the mobile number) helps with parameter usage. However, it does not explicitly contrast this tool with alternative payment methods or state when to choose it over them, though the sibling names imply alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__purchase_add_on_unitsAInspect
Purchases addition subscription units. The systems use the available credit balances (if available) when no OTT voucher PIN is provided. When an OTT voucher is provided, the voucher is redeemed and the fup allocated to the customer. Any amount OTT voucher may be used. OTT Merchant Fees are 7%, these are deducted before the units are purchased. The total amount used in allocating FUP tokens = credit + (OTT amount - OTT Merchant Fee of 7%) This will work on any subscription including the freemium tier, meaning non-paying subscribers become pay-as-you-go customers Buying additional tokens does not extend your subscription period, it merely adds to your available tokens. @param customer_id: The database customer_id @param mobile: The customers mobile number, typically his session_id @param ott_pin: The OTT Voucher PIN, a 10-digit number @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| mobile | No | ||
| ott_pin | No | ||
| customer_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description carries full responsibility for behavioral disclosure. It reveals credit balance usage, OTT voucher redemption, the 7% merchant fee, the exact FUP allocation formula, and that buying tokens does not extend the subscription period. This is exemplary transparency, including edge cases like freemium conversion.
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 longer than average but every sentence contributes operational detail. The flow from purpose to mechanics to parameter documentation is logical. The @param lines at the end could be integrated or formatted more concisely, but no information is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and the absence of annotations, the description thoroughly covers the tool's functionality, parameters, fee structure, and side effects (no subscription extension). There are no significant gaps for an agent to invoke this tool correctly, even among many sibling tools.
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?
Despite 0% schema description coverage, the description includes @param lines for customer_id, mobile, and ott_pin, explaining their meanings (e.g., ott_pin is a 10-digit number, mobile is typically the session_id). The prose also explains the behavior when ott_pin is omitted. This compensates fully for the schema's lack of descriptions.
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 it purchases additional subscription units, which distinguishes it from sibling tools that handle subscription payments (e.g., pay_subscription_with_credits). It also notes it works on freemium tiers, adding specificity about scope. The verb 'Purchases' and resource 'additional subscription units' are explicit.
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 implies its use for adding trial or add-on units, mentioning credit balances and OTT vouchers. However, it does not explicitly compare to alternatives or state when not to use it. The applicability to freemium is useful context but lacks direct exclusions or alternative tool references.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__subscription_typesBInspect
Returns the available subscription types @return: a json object, containing the customer id in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description must fully disclose behavior. It only states that it returns a JSON object with a customer id, without clarifying read-only status, side effects, or error conditions. The return description also appears inconsistent with the tool's stated purpose, undermining trust in the behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the main purpose. However, the second sentence containing '@return' is awkward and likely inaccurate, failing to earn its place and detracting from the overall clarity.
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, parameterless tool with an output schema, the description need only state the purpose clearly. It does that, but the return-value clause introduces potential misinformation, so the description is only minimally complete and not fully reliable.
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 takes zero parameters, and the input schema is an empty object with 100% coverage. According to the rubric, 0 parameters warrants a baseline of 4; the description correctly adds no parameter-related information since there are none to explain.
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 'Returns the available subscription types' clearly identifies the tool as a read-only lookup for subscription types, distinguishing it from siblings that handle subscriptions differently. However, the '@return' clause mentioning 'customer id' introduces confusion about what is actually returned, slightly weakening the clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as paywall__customer_subscription_status or other 'types' tools. There is no mention of prerequisites, typical use cases, or exclusions, leaving the agent without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__wallet_accounts_and_balanceCInspect
Returns the Netfluid wallet's accounts and balances. @param wallet_fk: The Netfluid wallet_fk @param pin: The Netfluid wallet PIN @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are empty, so the description carries full burden. It only mentions the return structure vaguely ('results in the values object') but does not disclose read-only nature, authentication needs, or other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the main action. The @param and @return formatting is structured, though it could be more readable with bullet points.
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 tool is simple with 2 params and an output schema (not shown). The description provides minimal return structure but omits details on account types, balance fields, or differentiation from similar tools. Adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, requiring the description to compensate. The @param descriptions merely restate the parameter names ('wallet_fk: The Netfluid wallet_fk', 'pin: The Netfluid wallet PIN') without adding format, constraints, or source guidance.
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?
Clearly states it returns Netfluid wallet accounts and balances with a specific verb and resource. However, there is a sibling tool 'netfluid__wallet_accounts_list' which likely serves a similar purpose, and the description does not differentiate when to use which.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'netfluid__wallet_accounts_list' or 'netfluid__wallet_accounts_list_verbose'. The description lacks context for appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__wallet_stablecoin_transferAInspect
Converts stable coins to ZAR in a Netfluid wallet account.
Use this tool to convert the entire USDC, EURC or USDT balance available across all accounts to ZAR.
There needs to be ZAR (min 5.00) in the fiat wallet or crypto in the blockchain wallet otherwise the transfer will fail due to gas fees.
The ZAR remains in the Netfluid account until wallet_transfer.
@param wallet_fk: The Netfluid wallet_fk
@param account_fk: The Netfluid account_fk on which to conver the stablecoin to fiat
@param pin: The Netfluid wallet PIN
@param stable_coin: The stable coin to convert, options are usdc or usdt
@return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes | ||
| account_fk | No | ||
| stable_coin | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the entire balance is converted, requires gas fees, and ZAR stays until wallet_transfer. This covers key behavioral traits, though it doesn't mention reversibility or side effects beyond transfer.
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 well-structured with a clear purpose paragraph followed by a parameter list. It is concise enough while covering necessary details, though the parameter list adds length. Front-loading of purpose is effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity, the description covers purpose, usage, prerequisites, parameters, and return format (JSON with 'values' object). It is sufficiently complete, especially since an output schema exists and the description doesn't need to detail return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description provides explanations for all 4 parameters: wallet_fk, account_fk, pin, and stable_coin with options. It adds meaning beyond the schema, though there's a minor inconsistency (description mentions EURC but param options say only usdc/usdt).
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 converts stablecoins (USDC, EURC, USDT) to ZAR in a Netfluid wallet, distinguishing it from sibling tools like wallet_transfer. The verb 'converts' and resource 'stable coins to ZAR' are specific, and the scope 'entire balance across all accounts' is explicit.
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 explicitly says when to use ('convert the entire USDC, EURC or USDT balance') and provides a prerequisite (min ZAR 5.00 or crypto for gas fees). It lacks explicit when-not or alternative tool references but gives sufficient context for correct use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__wallet_transferAInspect
Transfers amount from wallet_fk, account_fk to the system wallet This tool only transfers the amount, it does not activate or act on the transfer. The sending wallet's PIN is required to perform the transaction. Use it for account top-ups or if successful to log a customer payment. The benefit of using a Netfluid wallet is that Netfluid does not charge a fee on internal transfers, implying a cost saving. Funds received in the system account become credits on the customer account. These credits can then be used to purchase subscriptions. On a successful payment this wallet and account can OPTIONALLY be linked to a customer's subscription. @param from_wallet_fk: The sender Netfluid wallet_fk @param from_wallet_pin: The sender Netfluid wallet PIN @param from_wallet_account_fk: The sender Netfluid account_fk (not account address but the database account_fk), if set to 0, we'll try and find an account_fk that matches the currency_fk=7 (ZAR) and has more than amount available @param amount: The decimal amount to transfer, 2 decimal points @param customer_id: The customer's database id @return: a json object, containing the OTT voucher amounts in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | ||
| customer_id | No | ||
| from_wallet_fk | Yes | ||
| from_wallet_pin | Yes | ||
| from_wallet_account_fk | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With empty annotations, the description discloses critical behavioral details: the tool only transfers and does not activate ('does not activate or act on the transfer'), requires a PIN, has no Netfluid fee on internal transfers, converts received funds to customer credits, and optional linking to a subscription. It also explains the auto-search behavior for from_wallet_account_fk=0.
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 verbose and not tightly structured. The core purpose is mixed with promotional language ('implying a cost saving') and a somewhat rambling explanation of credits and optional linking. The @param section is necessary but could be better formatted. Some sentences could be combined or cut.
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?
Covers purpose, use cases, prerequisites (PIN), side effects (credits, optional linking), and return format. It lacks explicit failure/error information but is otherwise complete for a transfer tool, especially given the extensive parameter documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has no property descriptions (0% coverage), but the @param block fully explains all five parameters, including special behavior for from_wallet_account_fk=0 (currency_fk=7 auto-find), amount decimal precision, and the return object. This fully compensates for the missing schema documentation.
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 primary action ('Transfers amount from wallet_fk, account_fk to the system wallet') and the context (account top-ups, logging payments). However, it doesn't explicitly distinguish from sibling transfer tools like netfluid__account_send or paywall__pay_subscription_with_wallet, so it is clear but lacks direct sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit use cases ('Use it for account top-ups or if successful to log a customer payment') and mentions a cost-saving benefit. It doesn't specify when not to use or name alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__wallet_visa_mastercard_card_listAInspect
Returns the Netfluid wallet's tokenised Visa/Mastercards. For a card to be tokenised, one previous 3D secure transaction is required, see payment_3d_secure_link. Use wallet_visa_mastercard_recharge to charge the card. @param wallet_fk: The Netfluid wallet_fk @param pin: The Netfluid wallet PIN @return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| wallet_fk | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It explains the prerequisite and return format (JSON with 'values' object). It doesn't mention auth requirements beyond the required parameters, but given the tool is a read-only list, this is acceptable. Slightly missing details on response structure but output schema exists.
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?
Three concise sentences plus parameter documentation. Front-loaded with main purpose. No fluff. Every sentence adds value.
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?
Covers prerequisites, return format, and links to related tools. For a listing tool with an output schema, this is complete. The description ensures an agent understands what the tool does and how to use it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% coverage, so the description must compensate. It provides @param comments defining both wallet_fk and pin. While basic, it adds meaning beyond the schema properties. Could be more specific about formats or constraints, but sufficient.
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 that the tool returns the Netfluid wallet's tokenised Visa/Mastercards. It differentiates from siblings by mentioning the prerequisite of a prior 3D secure transaction and linking to related tools for charging or obtaining the 3D secure link.
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 states when to use this tool: after a 3D secure transaction for tokenisation. Also tells when not to use it: to charge the card, use wallet_visa_mastercard_recharge. Provides clear context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paywall__wallet_visa_mastercard_rechargeAInspect
Charges the Netfluid wallet's tokenised Visa/mastercards.
The funds received from the card will remain in the Netfluid account_fk balance until transferred, see wallet_transfer.
Only tokenised cards can be charged, use payment_3d_secure_link, when wallet_visa_mastercard_card_list returns empty in order to tokenize the card.
Use wallet_visa_mastercard_card_list to retrieve the wallet_card_id
Minimum amount is 1 ZAR.
Merchant fees (3.5%) plus Netfluid Card Deposit fees (2.5%) will be deducted from the amount received.
Always set the amount to charge at least 6% more than what's required in the wallet.
@param wallet_fk: The Netfluid wallet_fk
@param pin: The Netfluid wallet PIN
@param wallet_card_id: The Netfluid tokenised card id, use wallet_visa_mastercard_card_list to retrieve this id.
@param amount: The amount in ZAR to charge the card, must be 2 decimals.
@param account_fk: The Netfluid account_fk into which the funds will be deposited, if 0 the system will select the first available ZAR account.
On completion, use wallet_transfer to transfer funds to the paywall wallet.
@return: a json object, containing the results in the "values" object
| Name | Required | Description | Default |
|---|---|---|---|
| pin | Yes | ||
| amount | Yes | ||
| wallet_fk | Yes | ||
| account_fk | No | ||
| wallet_card_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It discloses fees (3.5% + 2.5%), minimum amount (1 ZAR), required overcharge (6%), destination of funds (account_fk balance), and return format. No contradictions identified.
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?
Well-structured with action, context, fees, param list, and return. Some redundancy (e.g., 'use wallet_transfer' mentioned twice) but overall efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and no output schema, the description explains return type and workflow. References related tools (wallet_transfer, payment_3d_secure_link). Could be improved by mentioning error handling or idempotency, but remains fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description gives detailed explanations for all 5 parameters, including purpose, source (wallet_visa_mastercard_card_list), default behavior (account_fk=0), and formatting (2 decimals for amount). Adds significant meaning 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?
Clearly states the action 'Charges' and the resource 'Netfluid wallet's tokenised Visa/mastercards'. Distinguishes from sibling tools like wallet_transfer and payment_3d_secure_link by explaining the place of this tool in the workflow.
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 states when to use (tokenised cards), when not to (use payment_3d_secure_link to tokenize if card list empty), and provides follow-up action (use wallet_transfer). Includes specific prerequisites and recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityAmaintenanceGTM signal intelligence suite for AI agents. Six tools: hiring signals, tech stack detection, company-to-LinkedIn resolution, ICP scoring, job board scanning, and a combined signals aggregator. Built for outbound sales workflows.117371MIT

industrylens-mcpofficial
Flicense-qualityCmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
Sociality MCPofficial
Alicense-qualityDmaintenanceSocial media analytics, post insights, and competitor benchmarking for AI agents.6MIT- AlicenseAqualityAmaintenanceDetects hiring intent signals by scanning job boards for specific companies. Returns structured role data for outbound sales targeting.1761MIT