neuron
Server Details
AI-powered WhatsApp chatbot platform with 196 tools for bots, campaigns, and contacts.
- 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.9/5 across 189 of 196 tools scored. Lowest: 2.9/5.
Each tool targets a distinct resource and action, with clear verb_noun patterns. Even tools with similar verbs like send_message, send_whatsapp, send_broadcast are differentiated by their descriptions. No ambiguity.
All tools follow a consistent 'neuron_verb_noun' snake_case pattern. No mixing of conventions like camelCase or inconsistent verb styles.
At 196 tools, the count is far beyond the typical well-scoped range (3-15). While the domain is broad, this volume is excessive for an MCP server and likely to overwhelm agents.
The tool set provides comprehensive CRUD and lifecycle operations for all major resources (bots, channels, contacts, campaigns, knowledge bases, etc.). No obvious gaps in functionality.
Available Tools
196 toolsneuron_add_bot_channelAdd Bot ChannelAInspect
Connect an additional WhatsApp channel to a bot as a secondary number. The bot will respond to messages on this channel.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot | |
| channelId | Yes | Unique identifier (UUID) of the WhatsApp channel to connect |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the bot will respond to messages on the channel, providing behavioral context beyond annotations. However, it does not discuss prerequisites, side effects, or whether the operation is reversible. Given annotations already convey non-read-only and non-destructive traits, the description contributes moderate value.
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?
Two short sentences, front-loaded with the action and resource. No superfluous words. 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?
The description covers the core action and its effect. Missing elements include prerequisites (e.g., bot and channel existence, primary channel requirement) and return value. For a simple mutation tool, this is nearly 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 100% with descriptions for both parameters (botId and channelId). The description adds no additional semantic detail beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Connect an additional WhatsApp channel to a bot as a secondary number' with a specific verb and resource. It distinguishes from siblings like neuron_assign_bot_to_channel by emphasizing 'additional' and 'secondary', 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?
Description provides context by mentioning 'additional' and 'secondary number', implying it is for adding extra channels rather than initial setup. However, it does not explicitly state when not to use or list alternatives, resulting in clear but incomplete guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_add_to_contact_listAdd to Contact ListAInspect
Add one or more contacts to a list by contact ID or phone number. Phone numbers without existing contacts are auto-created as minimal contact records.
| Name | Required | Description | Default |
|---|---|---|---|
| entries | Yes | Array of contacts to add, each identified by contactId or phone number | |
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the target contact list |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals a key behavioral trait: phone numbers without existing contacts auto-create minimal contact records. This goes beyond the annotations (which are minimal: readOnlyHint=false, destructiveHint=false). It adds valuable context about side effects, though it doesn't address idempotency 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 a single, well-structured sentence that front-loads the main action. Every part adds value: the verb, resource, identifiers, and auto-creation behavior. No wasted 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?
For a tool with 2 parameters, full schema coverage, and no output schema, the description covers the essential aspects: what it does, how to identify contacts, and auto-creation. It could mention idempotency or error cases for completeness, but for its 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?
The schema description coverage is 100%, meaning the schema already explains each parameter well. The description reiterates the identifiers (contactId, phone) but adds no extra meaning beyond the auto-creation hint. Baseline 3 is appropriate because the description doesn't degrade but doesn't enhance parameter understanding significantly.
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 'Add' and the resource 'contact list', and distinguishes from siblings like neuron_create_contact_list (creates list) and neuron_remove_from_contact_list (removes). It specifies the identifiers (contact ID or phone number) and the auto-creation behavior, 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 implies when to use this tool (add contacts to an existing list) but does not explicitly state when not to use it or mention alternatives. For example, it doesn't contrast with neuron_import_contacts or neuron_create_contact. However, the context is clear enough for an AI agent to infer appropriate use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_add_tool_secretAdd Tool SecretBIdempotentInspect
Store or update a secret credential (API key, token, etc.) for a custom tool integration. Secrets are encrypted at rest.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the tool to add the secret to | |
| key | Yes | Secret key name used in templates (e.g., 'API_KEY', 'AUTH_TOKEN') | |
| value | Yes | Secret value to store securely (will be encrypted) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the encryption-at-rest detail beyond annotations, which is useful. However, it does not disclose potential side effects (e.g., overwriting existing keys), limits, or required permissions. Annotations already indicate idempotency and non-destructive behavior, so the description adds moderate value.
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?
A single, well-structured sentence conveys the essential purpose and an important detail (encryption). No unnecessary words; earns its place 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 simple tool with full schema coverage and meaningful annotations, the description is nearly complete. It could benefit from explicitly stating the idempotent update behavior or the requirement that the tool already exists, but overall it adequately informs the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed parameter descriptions. The description's mention of 'API key, token, etc.' adds slight context to the 'value' parameter but does not significantly enhance understanding 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 action (store/update) and resource (secret credential for custom tool) with security context (encryption). However, it does not explicitly distinguish from sibling tools like neuron_remove_tool_secret or neuron_create_tool, leaving some ambiguity for the 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 provides no guidance on when to use this tool versus alternatives, no mention of prerequisites (e.g., tool must exist), or behavior for duplicates (e.g., update semantics). This leaves the agent without context for proper selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_approve_reflectionApprove ReflectionAIdempotentInspect
Approve a bot-generated reflection to incorporate the learned insight into the bot's future behavior and responses.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the reflection to approve |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotency and non-destructiveness. The description adds context that the insight is incorporated into future behavior, which is beyond the 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?
A single sentence of 16 words that directly states the purpose and effect. No unnecessary 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?
The description is complete for a simple tool with one parameter and no output schema. It explains the purpose and outcome sufficiently, though could mention the approval process.
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 100%, so the baseline is 3. The description does not add any parameter-level detail beyond the schema's description of the 'id' parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Approve' and the resource 'reflection', and explains the effect of incorporating the insight into future behavior. It distinguishes from sibling tools like neuron_reject_reflection.
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 (to approve a reflection for incorporating insights), but does not explicitly state when not to use or provide alternatives like rejecting or listing reflections.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_assign_bot_to_channelAssign Bot to ChannelAIdempotentInspect
Assign a bot to handle incoming messages on a specific WhatsApp channel. Replaces any previously assigned bot.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel | |
| botId | Yes | Unique identifier (UUID) of the bot to assign |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that it replaces any previously assigned bot, a behavioral trait beyond annotations. Annotations indicate idempotentHint=true and destructiveHint=false, which are consistent with the 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?
Two sentences, zero waste. First sentence states the action and context, second adds critical detail about replacement. Highly efficient 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?
Simple tool with 2 required params and no output schema. Description covers purpose, replacement, and channel type. Could mention prerequisites (e.g., channel and bot must exist) but acceptable for 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 coverage is 100% with clear descriptions for both parameters. Description does not add any additional meaning beyond the schema, so baseline of 3 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?
Description uses specific verb 'assign' and resource 'bot to channel', clearly distinguishing from siblings like 'unassign_bot_from_channel' and 'remove_bot_channel'. Mentions replacement behavior, adding 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?
States the scenario (assign bot to handle incoming messages on WhatsApp channel) and replacement behavior, but does not explicitly exclude cases or mention alternatives. Siblings provide context for when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_attach_knowledge_baseAttach Knowledge BaseAInspect
Attach a knowledge base to a bot to enhance its responses with domain-specific knowledge. Optional priority determines retrieval order when multiple knowledge bases are attached.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot | |
| priority | No | Priority level for knowledge base retrieval (higher values are checked first) | |
| knowledgeBaseId | Yes | Unique identifier (UUID) of the knowledge base to attach |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint=false, destructiveHint=false) indicate a non-destructive mutation, and the description confirms an attach operation. No additional behavioral details (e.g., overwrite behavior, duplicate handling) are provided beyond what annotations imply.
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?
Two concise sentences with no unnecessary words. The action is front-loaded, and every sentence adds value: the first states purpose, the second clarifies an optional parameter.
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 attach operation with no output schema, the description adequately covers the action and parameter semantics. It assumes prerequisite knowledge (bot and KB exist) but is otherwise self-contained.
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 100% with descriptions for all parameters. The description adds minimal extra context by explaining the priority parameter's role in retrieval order, but this is already implied in the schema. Meets the baseline for high 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?
Description clearly states the verb 'attach', the resource 'knowledge base to a bot', and the purpose 'enhance responses with domain-specific knowledge'. It distinguishes from sibling tools like detach_knowledge_base and create_knowledge_base, making the tool's role 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 mentions the optional priority parameter for retrieval order, hinting at when to use it. However, it does not provide explicit guidance on when to use this tool versus alternatives (e.g., when multiple attachments exist) or any limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_audio_contactExtract Contact from AudioAInspect
Transcribe an audio recording and extract contact information (name, phone, email, notes, tags). Automatically saves the extracted contact to the organization's address book.
| Name | Required | Description | Default |
|---|---|---|---|
| audioBase64 | Yes | Base64-encoded audio data containing spoken contact information | |
| audioFormat | No | Audio format hint for decoding (default: 'webm') | webm |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool saves the contact to the address book, which aligns with annotations (readOnlyHint=false). However, it does not cover edge cases (e.g., duplicate contacts, unclear audio) or success/failure behavior, adding some value but 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?
Two concise sentences front-load the core function and key side effect. No unnecessary words or redundancies.
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 output schema, but the description does not mention return value or error scenarios. For a mutation tool with only two parameters, information about what is returned (e.g., saved contact details) is 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?
Schema coverage is 100% with descriptions for both parameters. The description adds no additional parameter-specific information, though it mentions extracted fields generally. Baseline score 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 transcribes audio and extracts contact information (name, phone, email, notes, tags) and automatically saves it. It distinguishes from sibling tools like neuron_create_contact (manual creation) and neuron_import_contacts (file-based import) by its audio processing and automated saving.
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 use when audio contains contact info, but does not explicitly state when not to use or provide alternatives. It lacks guidance on input requirements (e.g., language, clarity) or scenarios where other tools (e.g., manual creation) might be preferable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_bot_api_chatBot API ChatBInspect
Send a message to a bot via the API and receive a streaming or complete AI-generated response. Requires a valid API key with 'nrn_' prefix.
| Name | Required | Description | Default |
|---|---|---|---|
| apiKey | Yes | Bot API key with 'nrn_' prefix for authentication | |
| message | Yes | The message text to send to the bot | |
| contactName | No | Display name of the contact for conversation context | |
| contactPhone | Yes | Phone number of the contact sending the message (E.164 format, e.g., '+2348012345678') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the main behavior (send and receive response) and mentions authentication requirements. Annotations provide no additional safety hints (all false), so the description carries the burden. It lacks details on idempotency, side effects on conversation state, or rate limits, which would be helpful for a tool that creates messages.
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: two sentences that front-load the core action. No unnecessary words or repetition. Every sentence contributes 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 simple chat tool with 4 parameters and no output schema, the description covers input and expected output. It could mention conversation persistence or streaming details, but overall it is largely 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?
Schema coverage is 100%, so parameters are already well-described. The description adds minimal context beyond the schema, such as the streaming response and API key format. This provides some additional value, but not enough to raise the score above 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 action (sending a message to a bot) and the expected output (streaming or complete AI response). It uses specific verbs and resources. However, it does not differentiate from the sibling tool 'neuron_bot_api_send', which could cause confusion about which to use for sending messages.
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 'neuron_bot_api_send' or other chat-related tools. The description does not mention prerequisites, when not to use, or compare to similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_bot_api_get_botBot API Get BotARead-onlyIdempotentInspect
Retrieve configuration and status information about the bot associated with the provided API key.
| Name | Required | Description | Default |
|---|---|---|---|
| apiKey | Yes | Bot API key with 'nrn_' prefix for authentication |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, non-destructive, idempotent. Description merely restates 'retrieve', adding no extra behavioral context beyond 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?
Single sentence with no waste. Front-loaded with action and resource.
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?
No output schema, so description should clarify return value structure. It only mentions 'configuration and status information', which is vague but minimally acceptable for a simple retrieval 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 coverage is 100% with description of apiKey parameter. Tool description does not add semantic meaning beyond what 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?
Description clearly states it retrieves configuration and status for a bot by API key. Distinguishes from sibling 'neuron_get_bot' by specifying API key-based association.
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 vs alternatives like neuron_get_bot. Implies usage via API key but does not exclude other methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_bot_api_get_messagesBot API Get MessagesARead-onlyIdempotentInspect
Retrieve message history for a specific conversation with cursor-based pagination. Requires a valid API key.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of messages to return (default: 50) | |
| apiKey | Yes | Bot API key with 'nrn_' prefix for authentication | |
| before | No | Cursor for pagination — retrieve messages created before this message ID or ISO 8601 timestamp | |
| conversationId | Yes | Unique identifier (UUID) of the conversation to retrieve messages from |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint; description adds useful behavioral context about cursor-based pagination and authentication requirement, going beyond the 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?
Two sentences, front-loaded with primary purpose and pagination method, no redundant information. Highly 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?
Description explains pagination mechanism and auth requirement, but could mention ordering or response structure given no output schema. Sibling differentiation is implicit but not explicit. Mostly complete for a simple read tool with good 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 coverage is 100%, and descriptions like 'Maximum number of messages to return (default: 50)' are clear. The tool description adds no new semantic 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?
Description states 'Retrieve message history for a specific conversation with cursor-based pagination' - clear verb+resource+key feature, and distinguishes from siblings like neuron_get_messages and neuron_bot_api_chat by specifying bot API and pagination.
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?
Mentions 'Requires a valid API key' but does not specify when to use this vs alternative tools like neuron_get_messages or neuron_bot_api_chat. No explicit when-not or alternative naming.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_bot_api_list_conversationsBot API List ConversationsARead-onlyIdempotentInspect
Retrieve a paginated list of conversations managed by the bot. Supports filtering by conversation status. Requires a valid API key.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of conversations per page (default: 20) | |
| apiKey | Yes | Bot API key with 'nrn_' prefix for authentication | |
| status | No | Filter by conversation status: 'active', 'closed', or 'pending' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds value by specifying that the result is paginated and supports filtering by status, which goes beyond the annotation hints. No contradictions 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 consists of two concise sentences that are front-loaded with the primary purpose. Every sentence is informative and there is no extraneous 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?
Despite having no output schema, the description effectively covers the tool's core functionality (retrieve paginated list, filter by status, require API key). It provides sufficient context for an agent to understand what the tool does. A slight improvement could be mentioning that it is read-only (though annotations already cover this).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for all four parameters (page, limit, apiKey, status), each with clear descriptions. The tool description does not add any additional information about parameters beyond what the schema already provides. Per the scoring rubric, high schema coverage sets a baseline of 3, and the description adds no extra 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?
Description clearly states 'Retrieve a paginated list of conversations managed by the bot', specifying the verb and resource. It also mentions filtering by status and authentication. However, it does not explicitly distinguish this tool from sibling tools like neuron_list_conversations or other list tools, which would be helpful.
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 'Supports filtering by conversation status' and 'Requires a valid API key', providing some context on when to use it. However, it lacks explicit guidance on when to prefer this tool over alternatives (e.g., neuron_list_conversations) or when not to use it. No exclusions or alternative mentions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_bot_api_sendBot API SendBInspect
Send an outbound message through the bot API to a specified phone number. Supports text and media messages. Requires a valid API key.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Recipient's phone number (E.164 format, e.g., '+2348012345678') | |
| apiKey | Yes | Bot API key with 'nrn_' prefix for authentication | |
| message | Yes | The message text to send to the recipient | |
| mediaUrl | No | Public URL of the media file to attach (required for non-text message types) | |
| channelId | No | Unique identifier (UUID) of a specific WhatsApp channel to send from. Uses the bot's primary channel if omitted. | |
| messageType | No | Type of message to send: 'text', 'image', 'video', 'audio', or 'document' (default: 'text') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations are all false (no readOnlyHint, no destructiveHint, etc.), so the description carries the burden of behavioral disclosure. It states that it sends an outbound message (a write operation) and supports text/media, which adds some value. However, it does not describe return values, error behavior, or side effects, leaving some gaps for the agent.
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 short sentences totaling 26 words. It is front-loaded with the main action and wastes no words. Every sentence provides essential information: the action, the target, supported types, and a prerequisite.
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 the schema covers all parameters and there is no output schema, the description adequately defines the tool's purpose but does not mention what the tool returns or how to handle errors. For a send tool, return information (e.g., message ID or status) would be helpful. The description is minimally complete 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?
Schema description coverage is 100%, so the schema already documents each parameter's meaning. The description adds 'Supports text and media messages' which is general but does not enhance understanding of any specific parameter beyond what the schema provides. The baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Send' and the resource 'outbound message through the bot API to a specified phone number', indicating a specific action and target. However, it does not explicitly differentiate from sibling tools like neuron_send_message or neuron_send_whatsapp, which have similar purposes but might use different APIs or channels.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides minimal guidance: it mentions that the tool supports text and media messages and requires a valid API key, but it does not advise when to use this tool over alternatives (e.g., neuron_send_message, neuron_send_broadcast) or when not to use it. No context about prerequisites beyond the API key is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_browse_list_poolBrowse List PoolARead-onlyIdempotentInspect
Browse verified contact lists available in the shared marketplace pool. Filter by category, region, or search term.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of items per page (default: 20) | |
| region | No | Filter by geographic region (e.g., 'lagos', 'abuja') | |
| search | No | Search term to filter by description or category | |
| category | No | Filter by audience category (e.g., 'delivery', 'tech', 'consumers') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds that lists are 'verified' and from 'shared marketplace pool' but does not disclose pagination behavior or rate limits. Adequate given 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?
Single sentence, 14 words, front-loaded with main purpose. No redundant 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?
Covers core functionality and main filters. Lacks explicit mention of pagination (though schema has page/limit) and result format, but for a simple browse tool this is nearly 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 100% with clear descriptions per parameter. Description only repeats three filter types (category, region, search term) without adding new meaning beyond schema. Baseline 3.
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 clearly states it browses 'verified contact lists' in the 'shared marketplace pool', distinguishing it from siblings like neuron_browse_pool or neuron_list_contact_lists. Action 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?
Mentions filtering options (category, region, search term) but gives no guidance on when to use this vs. alternative tools like neuron_browse_pool or neuron_list_contact_lists. No explicit when-not-to-use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_browse_poolBrowse PoolARead-onlyIdempotentInspect
Browse the shared marketplace pool of published bots, tools, knowledge bases, and reflections with optional filtering by type, category, tags, or search query.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| tags | No | Filter by tags (comma-separated list, e.g., 'ai,chatbot') | |
| type | No | Filter by resource type (e.g., 'bot', 'tool', 'knowledge_base', 'reflection') | |
| limit | No | Number of items per page (default: 20) | |
| query | No | Free-text search query to filter pool items by name or description | |
| category | No | Filter by category name | |
| featured | No | When true, return only featured items |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds context about the shared marketplace pool but no additional behavioral traits like pagination details or result format. It is sufficient but does not go beyond 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 a single concise sentence that front-loads the main action and lists key filters. Every word adds value with no repetition 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?
For a read-only browse tool with 7 optional, well-documented parameters, the description covers the core purpose and filtering. It does not mention pagination or output format, but given no output schema and simple use case, it is nearly 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 100% with parameter descriptions. The description lists filter types (type, category, tags, query) already present in the schema, adding no new meaning. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool browses a shared marketplace pool of published bots, tools, knowledge bases, and reflections, with optional filtering by type, category, tags, or query. This specific verb and resource listing distinguishes it from siblings like neuron_browse_list_pool.
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 use for discovery with optional filters, but does not explicitly contrast with sibling tools like neuron_browse_list_pool or neuron_install_from_pool. It provides clear context but lacks formal when-to-use or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_bulk_toggle_builtin_toolsBulk Toggle Built-in ToolsAIdempotentInspect
Enable or disable multiple built-in tools at once for a bot. More efficient than toggling tools individually.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to update tools for | |
| settings | Yes | Array of tool toggle settings to apply in bulk |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=false, idempotentHint=true, and destructiveHint=false, covering safety and mutation profile. Description adds efficiency context but no additional behavioral traits beyond what annotations convey.
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?
Two concise sentences. First sentence states purpose, second adds value proposition. No unnecessary words. Front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward idempotent mutation with no output schema, description covers the essential: what it does and efficiency advantage. No return format needed. Adequate given simplicity and 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 coverage is 100%, so baseline 3 is appropriate. Description does not add meaning beyond schema; schema already clearly describes botId and settings array with toolId and enabled.
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 clearly states it enables or disables multiple built-in tools for a bot. It distinguishes itself from the sibling 'neuron_toggle_builtin_tool' by highlighting bulk operation. Verb+resource is 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?
Description states it is more efficient than toggling individually, implying use when multiple tools need toggling. Does not explicitly exclude scenarios, but context is clear. No alternative named but sibling tool provides contrast.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_campaign_marketplaceBrowse Campaign MarketplaceARead-onlyIdempotentInspect
Browse available campaigns in the marketplace that your organization can join to earn rewards by sending messages.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of campaigns per page (default: 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds context about rewards but does not expand on behavior like pagination or sorting, which is acceptable given annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence, front-loaded with purpose, no redundant 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?
Adequately explains the tool's role in marketplace browsing and rewards, though could mention sorting or filtering but not required for a simple read-only list with pagination.
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 covers both parameters (page, limit) with descriptions. Tool description adds no additional parameter meaning beyond schema, so baseline 3 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?
Description clearly states the tool browses available campaigns in the marketplace for joining and earning rewards, using specific verb 'Browse' and resource 'campaigns in the marketplace', distinguishing from sibling 'list_campaigns' which may list own campaigns.
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?
Description implies use when wanting to see campaigns to join, but provides no explicit when-not or comparison to sibling browse tools like 'neuron_browse_list_pool' or 'neuron_browse_pool'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_campaign_participantsList Campaign ParticipantsARead-onlyIdempotentInspect
Retrieve all participants who have joined a campaign you own, including their delivery counts and earned rewards.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the campaign you own |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safe-read nature is clear. The description adds value by specifying that results include delivery counts and rewards, going beyond annotations. No contradictions.
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?
Single sentence, front-loaded with the action, no filler. Every word carries 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?
The description informs about the data included (delivery counts, rewards), but lacks output format details (e.g., list, pagination). Given the simple parameter and no output schema, it is mostly complete but could benefit from a brief note on return structure.
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 100% and the parameter 'id' already has a clear description in the schema. The tool description does not add additional meaning beyond 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 the verb 'retrieve', the resource 'participants who have joined a campaign you own', and adds meaningful detail about included data (delivery counts, earned rewards). It distinguishes this tool from siblings like 'get_campaign' or 'get_group_participants'.
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 participants of a campaign the user owns, but does not provide explicit guidance on when to use it versus alternatives, nor any 'when not to use' context. The sibling list includes related tools like 'neuron_my_participations' and 'neuron_list_campaigns', but no comparison is made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_cancel_subscriptionCancel SubscriptionADestructiveIdempotentInspect
Cancel the current active subscription. Access continues until the end of the current billing period.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it as destructive and idempotent. The description adds important context: that access continues until end of billing period. No contradiction; it supplements annotations well.
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?
Two short, front-loaded sentences with no unnecessary words. Every sentence adds value: purpose and a key behavioral note.
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 parameters and no output schema, the description fully covers the tool's behavior. It explains the cancellation effect and the post-cancellation access period, which is sufficient 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?
No parameters exist, so schema coverage is 100%. The description does not need to add parameter details. Baseline 4 for 0 params is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool cancels the current active subscription, specifying verb and resource. It adds a key behavioral detail (access continues until end of billing period) that distinguishes it from sibling billing tools like 'get_billing'.
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 wanting to cancel subscription but does not explicitly state when to use vs alternatives or provide exclusions. Since it's the only cancellation tool, context is clear but lacks direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_checkoutCheckout SubscriptionAInspect
Initiate a checkout session for a subscription plan upgrade. Returns a checkout URL or confirmation to complete the purchase.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | Yes | Subscription plan to purchase: 'pro' or 'business' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate this is a write operation (readOnlyHint false). The description adds that it returns a 'checkout URL or confirmation,' which is useful. But it does not disclose whether the action deducts funds immediately or requires user interaction, 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 is only two sentences (one main sentence and one explaining return value), front-loaded with the primary action, and contains no redundant words. It efficiently conveys 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?
Given the tool's simplicity (one parameter, no output schema), the description adequately covers the main aspects: what it does, what it returns. However, it lacks information about error conditions or prerequisites, which would round out 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 has 100% coverage for the sole parameter 'plan' with a description and enum. The tool description repeats the enum values implicitly but adds no additional meaning beyond the schema. Therefore, baseline score of 3 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 action: 'Initiate a checkout session for a subscription plan upgrade.' It uses a specific verb ('Initiate') and resource ('checkout session'), and distinguishes it from sibling tools like 'neuron_cancel_subscription' by focusing on upgrade initiation.
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 by specifying 'for a subscription plan upgrade,' which limits its scope to upgrades rather than initial purchases or cancellations. However, it does not explicitly mention when not to use it or provide alternative tools, but the context is clear enough for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_close_conversationClose ConversationAIdempotentInspect
Close an active conversation, marking it as completed. The bot will stop responding and the conversation is archived.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation to close |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating that the bot stops responding and the conversation is archived. This complements the idempotentHint and destructiveHint annotations. No contradictions found.
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?
Two sentences, no wasted words. The description is front-loaded with the core action and provides key consequences succinctly.
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 functionality and outcome. Lacks details on error states (e.g., closing already-closed conversations) or permissions, but given the tool's simplicity, it is adequately 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 already describes the 'id' parameter fully. The tool description does not add any additional parameter-level semantics. With 100% schema coverage, baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the action ('Close'), the resource ('active conversation'), and the outcomes ('bot will stop responding', 'conversation is archived'). The verb 'close' distinguishes it from sibling tools like 'release_conversation' or 'takeover_conversation'.
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 (e.g., release_conversation, takeover_conversation). The description only states what the tool does, not the context or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_compose_messageCompose MessageAInspect
Compose and send a new message to a phone number via a specific channel. Automatically creates a new conversation if one does not exist.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Recipient phone number (E.164 format, e.g., '2348012345678') | |
| text | Yes | Message text content | |
| mediaUrl | No | URL of media to attach (required for non-text message types) | |
| channelId | Yes | Unique identifier (UUID) of the WhatsApp channel to send through | |
| contactName | No | Display name for the recipient contact | |
| messageType | No | Type of message: 'text' (default), 'image', or 'document' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are present but minimal (readOnlyHint=false, etc.). The description adds one behavioral trait: automatic conversation creation. It does not disclose other side effects, idempotency, or error conditions. The description does not contradict annotations. With annotations covering the safety profile partially, the added value 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 description is two sentences with front-loaded action and key behavior. It is concise without unnecessary words. Could potentially include a brief note about required parameters or outcome, but it remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters (3 required) and no output schema, the description covers the main action and auto-creation behavior. However, it does not explain what the tool returns after sending (e.g., a message ID or status), which is a gap for an action that likely produces a result. Additional context about conversation creation behavior could enrich 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 description coverage is 100%, so all parameters already have descriptions. The tool description mentions 'phone number' and 'channel', which are already clear from the schema. No additional semantics or context are provided beyond the schema. Baseline 3 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 composes and sends a new message to a phone number via a specific channel, and distinguishes itself from similar tools by mentioning automatic conversation creation. The verb 'compose and send' along with the resource 'message' provides a specific, actionable 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 sending messages through a specified channel, but it does not explicitly state when not to use this tool or provide alternatives. The sibling list includes 'neuron_send_message', 'neuron_send_whatsapp', etc., but no comparison is made. The auto-creation hint is helpful but not a complete guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_ad_requestCreate Ad RequestAInspect
Create an ad distribution request to send a message to contacts in pool lists matching target demographics. Deducts from wallet upon approval.
| Name | Required | Description | Default |
|---|---|---|---|
| budget | Yes | Total ad budget in kobo (e.g., 500000 = NGN 5,000) | |
| message | Yes | The ad message content to distribute to matched contacts | |
| mediaUrl | No | Media URL for non-text messages (required when messageType is 'image', 'video', or 'document') | |
| targetGoal | Yes | Target number of successful message deliveries | |
| messageType | No | Message content type: 'text', 'image', 'video', or 'document' (default: 'text') | |
| targetDemographics | Yes | Demographic criteria to match against pool list entries |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the wallet is deducted upon approval, which is important behavioral info not covered by annotations. However, it lacks details on approval process, failure modes, or other side effects. Given annotations are sparse, this adds some value but is 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?
Two sentences front-load the purpose and key financial consequence. No redundant information; every word 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?
Given the tool has 6 parameters including a nested object, the description is brief. It does not explain the approval process, wallet deduction timing, or how the targeting works beyond the schema. Adequate but missing context for a full 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?
Schema coverage is 100%, so the description does not need to add much. The description's mention of 'matching target demographics' vaguely aligns with the targetDemographics parameter but adds no new semantic details. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool creates an ad request for sending messages to contacts matching target demographics, with a financial implication. It uses a specific verb ('create') and resource ('ad request'), and the mention of wallet deduction differentiates it from simple messaging 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 like neuron_create_broadcast, neuron_create_campaign, or other ad-related tools. The description does not specify conditions, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_api_keyCreate API KeyAInspect
Create a new API key for programmatic access to a specific bot. Store the key securely as it cannot be retrieved later.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Descriptive name for the API key to identify its purpose (e.g., 'Production CRM Integration') | |
| botId | Yes | Unique identifier (UUID) of the bot to create the API key for | |
| expiresAt | No | ISO 8601 date-time when the key should expire (e.g., '2026-12-31T23:59:59Z'). Key never expires if omitted. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by warning that the key cannot be retrieved later and must be stored securely. Annotations only indicate readOnlyHint=false and destructiveHint=false, so this warning provides important security-related 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 extremely concise with two sentences that convey the essential information. It is front-loaded with the action and resource, and every word 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 is mostly complete given the schema coverage and annotations, but it does not specify what the tool returns (e.g., the API key value). Since there is no output schema, this missing detail slightly 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?
All parameters have descriptions in the input schema (100% coverage), so the description does not add new meaning. The baseline of 3 is appropriate as the schema already explains each 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 that the tool creates a new API key for programmatic access to a specific bot. It uses a specific verb ('Create') and resource ('API key'), and it distinguishes itself from sibling tools like neuron_list_api_keys and neuron_revoke_api_key.
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 generating API keys for bot access, but it does not explicitly state when to use this tool versus alternatives or provide any exclusions. It lacks guidance on prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_blog_postCreate Blog PostAInspect
Create a new blog post in draft or published status with specified title, content, and optional metadata such as tags, excerpt, and SEO fields.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | List of tag names or slugs to categorize the post | |
| title | Yes | Title of the blog post (max 500 characters) | |
| status | No | Initial publication status of the post (default: 'draft') | draft |
| content | Yes | Full body content of the blog post in markdown format | |
| excerpt | No | Short summary or preview text for the blog post | |
| seoTitle | No | Custom SEO title override for search engine results | |
| authorType | Yes | Whether the post is authored by an individual user or the organization | |
| seoKeywords | No | List of SEO keywords for search engine optimization | |
| coverImageUrl | No | URL of the cover image displayed at the top of the post | |
| seoDescription | No | Meta description for search engine result snippets |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and destructiveHint=false, so the description's claim of 'create' is consistent but adds no extra behavioral context (e.g., side effects, rate limits, or auth needs). The description is adequate but not enriching beyond the 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 a single, efficient sentence (27 words) that front-loads the core action and key parameters. Every word adds value without 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?
While the description covers purpose and key optional groups, it omits any information about the return value or response format. Since there is no output schema, the agent is left without guidance on what the tool returns. For a creation tool with 10 parameters, this is a gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter described in the schema. The description groups some optional fields (tags, excerpt, SEO fields) but does not add significant new meaning beyond the schema descriptions. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and the resource 'blog post', and specifies key attributes like status (draft/published), title, content, and optional metadata. This distinguishes it from sibling tools like neuron_delete_blog_post, neuron_update_blog_post, and neuron_publish_blog_post.
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 provide explicit guidance on when to use this tool versus alternatives (e.g., neuron_publish_blog_post for publishing drafts, neuron_update_blog_post for modifications). There is no mention of prerequisites 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.
neuron_create_botCreate BotAInspect
Create a new AI bot with specified name, model, and behavior instructions. Returns the created bot object.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name for the bot | |
| llmModel | No | OpenRouter model ID (e.g., 'google/gemini-2.5-flash-lite-preview-09-2025', 'openrouter/auto') | |
| maxTokens | No | Maximum number of tokens the bot can generate per response | |
| assignment | No | One-sentence role definition for the bot (max 2000 chars) | |
| systemPrompt | Yes | System prompt that defines the bot's behavior, personality, and response guidelines | |
| llmTemperature | No | Temperature parameter controlling response randomness (0 = deterministic, 2 = creative) | |
| fallbackMessage | No | Message sent when the bot cannot understand user input (max 2000 chars) | |
| greetingMessage | No | Automatic greeting sent when a new conversation starts (max 2000 chars) | |
| escalationPrompt | No | Prompt template used when escalating to a human agent (max 5000 chars) | |
| responsibilities | No | Array of responsibility descriptions defining what the bot handles | |
| whatsappChannelId | No | Unique identifier (UUID) of the WhatsApp channel to associate with the bot |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotation contradictions. Description adds minimal behavioral context (creates and returns). Does not disclose permissions, side effects, or costs. Annotations are neutral so description carries burden but is 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?
Two sentences, no fluff. Front-loaded with action and key parameters. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 11 parameters and no output schema, the description is brief. Lacks guidance on optional parameters, creation process, or what the bot object contains. 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 coverage is 100% with clear descriptions. Description mentions only three parameters (name, model, instructions). Adds no extra meaning beyond schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states action (create), resource (AI bot), key parameters (name, model, behavior instructions), and return value. Distinguishes from sibling 'create_' tools by specifying bot.
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?
Usage is implied but not explicit. No when-to-use or when-not-to-use guidance, nor alternatives mentioned. Adequate but lacks explicit direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_broadcastCreate BroadcastAInspect
Create a new broadcast message in draft status. Provide recipients directly or use recipientSources to resolve from contact lists. The WhatsApp channel is auto-resolved if not specified.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name or label for the broadcast | |
| message | Yes | Message content to broadcast to recipients | |
| mediaUrl | No | URL of media to attach (required for image or document message types) | |
| channelId | No | Identifier (UUID) of the WhatsApp channel to send through (auto-resolved from default channel if omitted) | |
| recipients | No | Direct list of recipients (alternative to recipientSources) | |
| messageType | No | Type of message to send (e.g., 'text', 'image', 'document') | |
| recipientSources | No | Resolve recipients dynamically from contact lists with filtering and exclusion |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate a non-read-only, non-destructive write operation. The description adds that it creates in 'draft status,' which is important behavioral context. However, it does not disclose what the response contains (e.g., the created broadcast ID) or what happens with conflicting parameters (e.g., both recipients and recipientSources). No permissions or rate limits mentioned. Lacks detail beyond 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?
Three sentences: first states purpose, second explains recipient options, third notes channel auto-resolution. No redundant information. Every sentence adds value and the description is front-loaded with the core action.
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 output schema, the description should hint at the return value (e.g., broadcast ID) but does not. It also doesn't mention that the broadcast is a draft that must be sent later (though implied). With 7 parameters including nested objects, the description covers the main workflow but misses post-creation steps and response 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 100%, so parameters are well-documented. The description adds value by explaining the two alternative recipient methods (recipients vs recipientSources) and noting channel auto-resolution, which is present in the schema but reinforced. No additional syntax or format details beyond schema for nested objects. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates a broadcast in draft status. It distinguishes from siblings like neuron_send_broadcast (which sends) and neuron_update_broadcast. However, it doesn't explicitly differentiate from neuron_create_newsletter, which might be similar but for newsletters. The verb 'create' and resource 'broadcast' are specific, and the scope is clear.
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 guidance on providing recipients directly or via recipientSources, and channel auto-resolution. It implies this is for initial creation in draft status, but does not explicitly state when not to use this tool (e.g., when to use update or send instead) or mention prerequisites like needing a WhatsApp channel. No alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_campaignCreate CampaignBInspect
Create a new outreach campaign with target audience, messaging template, and schedule configuration. Requires a Pro or Business plan.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Campaign title displayed in marketplace and dashboard | |
| message | Yes | The WhatsApp message template to send to contacts | |
| deadline | Yes | Campaign deadline in ISO 8601 date format (e.g., '2025-12-31') | |
| guidelines | No | Instructions and guidelines for campaign participants | |
| description | No | Campaign description shown in the marketplace listing | |
| totalBudget | Yes | Total campaign budget in kobo (e.g., 500000 = NGN 5,000) | |
| rewardPerDelivery | Yes | Reward per successful delivery in kobo (e.g., 5000 = NGN 50) | |
| requireMutualContact | No | Only allow sends to contacts who have previously responded (default: false) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With all annotations false, the description carries full burden for behavioral traits. It only states 'Create' and mentions a plan requirement—it does not disclose side effects, such as whether the campaign starts immediately, sends messages, or requires additional steps (e.g., funding). The description is too brief 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?
Two concise sentences: first states purpose and key components, second gives prerequisite. No wasted words, front-loaded with essential information. Excellent structure for quick comprehension.
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 is incomplete for a tool with 8 parameters and no output schema. It does not explain the return value, campaign lifecycle (e.g., need to fund or submit), or any post-creation steps. Given the complexity and lack of output schema, more context is needed for the agent to correctly invoke 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?
The input schema covers all 8 parameters with descriptions (100% coverage). The description groups parameters conceptually ('target audience, messaging template, schedule configuration') but adds no new semantic detail beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates an 'outreach campaign' and lists components (target audience, messaging template, schedule). However, it does not differentiate from similar creation tools like neuron_create_broadcast or neuron_create_newsletter, which could cause 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?
The description mentions a prerequisite ('Requires Pro or Business plan'), which is helpful. However, it provides no guidance on when to choose this tool over alternatives (e.g., broadcast vs. campaign), nor does it indicate 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.
neuron_create_channelCreate ChannelAInspect
Create a new WhatsApp channel with either Meta Cloud API or Baileys (direct WhatsApp) integration. Meta Cloud channels require metaPhoneNumberId and metaAccessToken.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name for the channel | |
| type | Yes | Integration type: 'meta_cloud' for Meta Cloud API or 'baileys' for direct WhatsApp connection | |
| phoneNumber | No | Phone number for the channel (E.164 format, e.g., '+2348012345678') | |
| metaAccessToken | No | Meta Access Token (required for meta_cloud type) | |
| metaPhoneNumberId | No | Meta Phone Number ID (required for meta_cloud type) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false, indicating a standard creation operation. The description adds the requirement info for Meta Cloud but does not disclose other behavioral traits like idempotency or side effects. Given annotations cover the basic safety profile, this is adequate.
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?
Two concise sentences, zero fluff. Each sentence serves a purpose: first states what the tool does, second clarifies a key requirement.
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 explains the two integration types and their key requirements. However, it does not clarify the role of 'phoneNumber' for each type (e.g., needed for Baileys?). With 5 parameters and conditional dependencies, this is a minor gap. No output schema needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds value by clarifying that metaPhoneNumberId and metaAccessToken are required for the meta_cloud type, which is not explicit in the schema (they are not in 'required' list). This conditional dependency is crucial.
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 WhatsApp channel with two integration types (Meta Cloud or Baileys), and distinguishes from sibling tools like update or delete by specifying 'Create'.
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 that Meta Cloud channels require metaPhoneNumberId and metaAccessToken, providing conditional guidance. However, it does not explicitly advise when to use this tool versus alternatives like update_channel, nor does it compare the two integration types.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_contactCreate ContactAInspect
Create a new contact in the organization's address book. If notes are provided, they are saved as a structured note entry with source tracking.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Full name of the contact | |
| tags | No | Tags to categorize the contact (e.g., ['vendor', 'lagos']) | |
| No | Email address of the contact | ||
| notes | No | Additional notes about the contact, saved as a structured entry | |
| phone | Yes | Contact phone number in E.164 format (e.g., +2348012345678) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by specifying that notes are saved as structured entries with source tracking. Annotations only provide hints (readOnlyHint: false, destructiveHint: false), leaving the description to cover behavior. It does not discuss idempotency or potential duplicates, but the added note behavior 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 two sentences, front-loaded with the main purpose, and contains no redundant information. Every part 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?
Given 5 parameters and no output schema, the description covers the main purpose and a key behavioral detail (notes). However, it does not describe the return value (e.g., created contact ID or confirmation), which would be helpful for AI agents. Missing that information prevents 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?
Schema coverage is 100%, so parameters are already described. The description adds no new meaning to individual parameters beyond what the schema provides; it only notes a behavioral effect for the 'notes' parameter. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and the resource 'contact in the organization's address book', and adds a detail about notes. It distinguishes itself from sibling tools like neuron_update_contact or neuron_import_contacts.
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 creating new contacts but does not explicitly state when to use this tool versus alternatives (e.g., neuron_import_contacts, neuron_add_to_contact_list). No exclusions or 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.
neuron_create_contact_listCreate Contact ListAInspect
Create a new contact list. Slug is auto-generated from name if not provided. For dynamic lists, provide criteria with rules and/or an AI prompt.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name for the contact list | |
| slug | No | URL-friendly identifier (auto-generated from name if omitted) | |
| type | No | List type (default: 'static') | |
| criteria | No | Dynamic list criteria object: { rules?: { operator, conditions }, aiPrompt?, aiMaxResults? } | |
| description | No | Human-readable description of the list's purpose | |
| refreshSchedule | No | Refresh schedule for dynamic lists (default: 'manual') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false, so the description must bear the burden. It discloses slug auto-generation and criteria usage, but does not address potential side effects or prerequisites for creation, such as permissions or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using two sentences to convey the core action and key nuances without any waste. Front-loaded with the 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?
Given the tool's 6 parameters and nested objects, the description covers essential creation aspects but omits details on 'merged' list type and refresh schedule implications. Still, it provides sufficient context 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?
With 100% schema coverage, the baseline is 3. The description adds value by explicitly noting slug auto-generation and explaining criteria for dynamic lists, which enhances understanding 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 creates a new contact list, with specific details on slug auto-generation and criteria for dynamic lists. It effectively distinguishes from siblings like 'neuron_add_to_contact_list' and 'neuron_update_contact_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 guidance for creating lists, especially for dynamic lists requiring criteria. However, it lacks explicit exclusions or comparisons to alternatives, leaving some usage ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_kb_entryCreate Knowledge Base EntryCInspect
Add a new entry (note, document, or information piece) to a knowledge base.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base | |
| title | Yes | Title of the entry | |
| folder | No | Folder to organize the entry: 'general', 'skills', 'contexts', 'documents', or 'faqs' (default: general) | |
| source | No | Source type of the entry (default: manual) | |
| content | Yes | Content or body of the entry | |
| metadata | No | Optional metadata key-value pairs for the entry |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are neutral and provide no behavioral cues. The description does not mention permissions, idempotency, error conditions, or side effects like overwriting existing entries. For a creation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. However, it could be slightly more informative without becoming verbose.
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 6 parameters and no output schema, the description is too brief. It lacks context on how to use folders, sources, or metadata, and doesn't explain what happens after creation (e.g., return value).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The tool description adds no extra meaning beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Add a new entry') and the resource ('to a knowledge base'), with examples of entry types. It distinguishes from siblings like create_knowledge_base, but does not explicitly differentiate from similar tools like ingest_knowledge.
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. No mention of required prerequisites (e.g., existing knowledge base), 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.
neuron_create_knowledge_baseCreate Knowledge BaseCInspect
Create a new knowledge base to store and organize information, documents, and entries.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the knowledge base | |
| description | No | Optional description of the knowledge base purpose | |
| rootInstruction | No | Optional root instruction or context for the knowledge base |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate it's not read-only, not idempotent, not destructive. The description adds no behavioral context beyond 'create'. It does not mention side effects, required permissions, or what happens to existing data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no wasted words. It is appropriately short and front-loaded, earning 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?
Given the tool has 3 parameters (all with schema descriptions) and no output schema, the description is minimal. It lacks context about what a knowledge base is, when to create one, and what the return value is. More detail would be helpful 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?
Schema description coverage is 100%, so the schema itself documents all parameters. The tool description adds no additional meaning or guidance beyond what the schema provides, meeting the baseline expectation.
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 'Create' and the resource 'knowledge base', and the purpose is to store/organize information. It distinguishes from siblings like `neuron_create_kb_entry` (which creates entries inside a knowledge base) by naming the resource, but does not explicitly contrast with other create 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 provides no guidance on when to use this tool vs alternatives (e.g., `neuron_create_kb_entry`, `neuron_update_knowledge_base`). No prerequisites, context, 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.
neuron_create_newsletterCreate NewsletterAInspect
Create a new WhatsApp Channel newsletter for one-way broadcast updates. Requires a connected Baileys session on the specified channel.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name of the newsletter visible to subscribers | |
| channelId | Yes | Identifier (UUID) of the WhatsApp session channel to create the newsletter on | |
| description | No | Description of the newsletter's purpose and content |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate a write operation. Description adds context about the required session and one-way nature, but does not disclose idempotency or side effects like potential duplicates.
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?
Two sentences front-loading the purpose and a key requirement. No redundant 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?
No output schema; description fails to explain what the response contains (e.g., created newsletter ID). Missing details about the Baileys session requirement.
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 100%, so baseline is 3. Description reiterates 'channelId' and 'name' but adds no new meaning beyond schema; 'description' parameter is not mentioned.
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 creates a WhatsApp Channel newsletter for one-way broadcast updates, specifying verb and resource. Distinguishes from siblings by mentioning 'WhatsApp Channel' and requiring a Baileys session.
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 prerequisite (connected Baileys session) but does not mention when to avoid this tool or suggest alternatives like 'neuron_create_broadcast'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_outbound_webhookCreate Outbound WebhookAInspect
Register a new outbound webhook that sends HTTP POST requests to an external URL when specified bot events occur. Supported events: message.created, message.assistant, conversation.created, conversation.escalated, conversation.closed, bot.paused, bot.resumed.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Destination URL that will receive webhook event payloads (HTTPS recommended) | |
| name | Yes | Human-readable name for the outbound webhook | |
| botId | Yes | Unique identifier (UUID) of the bot to create the outbound webhook for | |
| eventTypes | Yes | Array of event types that should trigger this webhook | |
| filterPrompt | No | Optional LLM prompt to selectively filter which events are forwarded (e.g., 'only forward escalations about billing') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that the webhook sends POST requests and triggers on events, but does not disclose side effects like authentication needs, URL validation, or idempotency behavior. Annotations already indicate non-read-only but the description could provide more 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 a single, concise sentence followed by a bullet list of events. It is front-loaded with the core purpose and avoids unnecessary 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 explains the tool's function and supported events but omits the return value (e.g., webhook ID) and prerequisites (e.g., bot existence). Given the lack of output schema, the agent might need more information about what to expect from the creation.
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?
With 100% schema coverage, the description still adds value by explaining the webhook's overall behavior and listing event types in narrative form, reinforcing the schema's enum values. It doesn't elaborate on filterPrompt or url format but provides sufficient conceptual 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 registers a new outbound webhook that sends HTTP POST requests to an external URL on specified bot events. It lists supported event types, making the purpose specific and distinct from sibling webhook 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 guidance on when to use this tool versus alternatives. While the name 'outbound_webhook' hints at the use case, the description does not contrast with similar tools like neuron_create_webhook or specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_toolCreate ToolAInspect
Create a custom API tool that the bot can invoke during conversations to fetch external data or trigger actions.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Human-readable name for the tool | |
| type | Yes | Type of the tool integration (e.g., 'http', 'webhook') | |
| botId | Yes | Unique identifier (UUID) of the bot to create the tool for | |
| config | Yes | Tool configuration specifying the HTTP endpoint and request details | |
| authType | No | Authentication type for the endpoint (e.g., 'bearer', 'basic', 'apiKey', 'none') | |
| rateLimit | No | Maximum number of requests per minute allowed for this tool | |
| timeoutMs | No | Request timeout in milliseconds (default: 30000) | |
| description | No | Description of what the tool does and when the bot should use it |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate it is a mutation (readOnlyHint=false) and not idempotent. The description adds that it is for bot-invoked external interactions. It does not disclose potential side effects like name conflicts or permission requirements, but annotations cover destructiveness and 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 a single sentence that is clear, concise, and contains no extraneous information. It efficiently communicates 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?
Despite having 8 parameters (4 required) and nested objects, the description is minimal. It does not explain what the tool returns (no output schema), auth implications, or configuration details. This leaves the agent uncertain about the full context of using 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?
Schema description coverage is 100% with each parameter having a clear description. The tool description adds no additional parameter details, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create', the resource 'custom API tool', and its purpose: 'the bot can invoke during conversations to fetch external data or trigger actions.' This distinguishes it from other create tools like create_bot or create_channel.
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 want a bot to invoke a custom API to fetch data or trigger actions. However, it does not explicitly mention when not to use it or provide alternatives like create_webhook.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_create_webhookCreate WebhookBInspect
Register a new inbound webhook endpoint that triggers bot actions when called by an external service.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Human-readable name for the webhook | |
| slug | No | URL-friendly slug for the webhook endpoint (auto-generated if omitted) | |
| botId | Yes | Unique identifier (UUID) of the bot to create the webhook for | |
| isActive | No | Whether the webhook is active and accepting requests (default: true) | |
| eventType | No | Type of event this webhook handles (e.g., 'order.created', 'payment.received') | |
| processingPrompt | No | Prompt instructions to guide bot processing of incoming webhook data |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description minimally adds 'triggers bot actions' but doesn't disclose what happens after creation (e.g., returns endpoint URL), rate limits, authentication requirements, or side effects. Annotations provide little extra (openWorldHint vague), so description should carry more weight.
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?
Single concise sentence that efficiently conveys the core purpose. Could be improved by adding brief context about what the webhook does after creation, but currently 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?
No output schema, so description should explain what the tool returns (e.g., webhook ID, URL). No info on idempotency or potential multiple registrations. With 6 parameters and no output schema, the description is insufficiently 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 100%, so schema already explains all 6 parameters. Description does not add any additional meaning beyond 'registers webhook'. Baseline 3 is appropriate as no extra value provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool registers an inbound webhook endpoint that triggers bot actions when called externally. It uses specific verbs ('register', 'triggers') and distinguishes from the sibling 'neuron_create_outbound_webhook' by specifying 'inbound'.
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 outbound webhooks or other integration methods. No prerequisites or constraints mentioned (e.g., need existing bot, permission requirements).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_blog_postDelete Blog PostADestructiveIdempotentInspect
Permanently delete a blog post by its ID. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the blog post to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description is consistent with annotations (destructiveHint: true, idempotentHint: true) by stating 'permanently delete' and 'cannot be undone'. However, it adds minimal new behavioral insight beyond the annotations. No mention of auth requirements 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 extremely concise at two sentences. The first sentence immediately states the purpose, and the second reinforces permanence. 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?
For a simple deletion tool with no output schema, the description covers the essential inputs and consequences. It could be improved by mentioning the expected response (e.g., success confirmation). However, given the low complexity, the description is nearly 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 provides a 100% coverage description for the single 'id' parameter. The tool description does not add any additional semantic information about the parameter beyond the schema, so the baseline score of 3 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 action ('permanently delete') and the resource ('blog post') with the identifier method ('by its ID'). It distinguishes from sibling tools like neuron_get_blog_post and neuron_update_blog_post, which perform different operations.
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 unpublishing or archiving. The only contextual hint is that the deletion is permanent, but there is no explicit when-to-use or when-not-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_botDelete BotADestructiveIdempotentInspect
Permanently delete a bot and all its associated data. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description reinforces the destructiveHint annotation with 'cannot be undone' and specifies 'all associated data'. Does not address idempotentHint, which may be misleading but not contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no extraneous content. Front-loads the action and consequence effectively.
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 delete tool with one parameter, the description fully covers purpose, scope, and consequence. No output schema needed, annotations cover safety.
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 single 'id' parameter is already well-described in the schema (UUID). Description adds no additional meaning beyond the schema, which has 100% 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 'Permanently delete a bot' and that it removes 'all its associated data'. Distinguishes from sibling tools like pause_bot and other delete 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 on when to use this tool versus alternatives (e.g., pausing instead of deleting). Only states irreversibility but lacks context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_broadcastDelete BroadcastADestructiveIdempotentInspect
Permanently delete a broadcast and its recipient data. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the broadcast to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true. The description adds that the action is permanent and affects recipient data, providing useful context beyond 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 two sentences with no extraneous information. Every sentence adds value: first states the action, second emphasizes irreversibility.
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 (single param, no output schema), the description adequately explains its effect and permanence. Annotations further clarify safety profile.
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 covers 100% of parameters with clear description for 'id'. The description adds no further meaning beyond what the schema provides, so baseline score 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 action ('permanently delete a broadcast'), the resource ('broadcast and its recipient data'), and uses specific verbs. It distinguishes from sibling delete tools by specifying 'broadcast'.
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 or avoid this tool. Alternatives are not mentioned. The user must infer from context that it's for existing broadcasts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_campaignDelete CampaignADestructiveIdempotentInspect
Permanently delete a campaign that is in 'draft' status. Active or funded campaigns cannot be deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the draft campaign to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating the campaign must be in draft status and that deletion is permanent. Annotations already indicate destructive and idempotent, but the status restriction is critical 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?
Two concise sentences with no unnecessary words. Key information is front-loaded: 'Permanently delete a campaign that is in 'draft' status.' 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 one-parameter delete tool with no output schema, the description adequately covers the precondition and action. It could mention what the response looks like, but the core behavior is 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?
With 100% schema coverage, the parameter description already exists. The tool description reinforces the relationship between the 'id' parameter and the draft campaign, providing 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 action ('permanently delete'), the resource ('campaign'), and the specific condition ('draft status'). It distinguishes from other delete tools by indicating that active or funded campaigns cannot be deleted.
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 tells when to use the tool (for draft campaigns) and when not to (active/funded). It provides clear context for usage, though it does not mention alternative tools for deleting other campaign statuses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_channelDelete ChannelADestructiveIdempotentInspect
Permanently delete a WhatsApp channel and disconnect any active sessions. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already label it as destructive and non-read-only. The description adds 'disconnect any active sessions' and 'cannot be undone', which provides useful context beyond annotations. However, it does not detail whether all associated data (e.g., messages, logs) is also permanently deleted, leaving some 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?
Extremely concise: two sentences front-loading the destructive action and irreversibility. No superfluous words or rephrasing of schema content. Every sentence adds critical 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 delete operation with one simple parameter, the description covers the core action and irreversible consequence. No output schema exists, but a delete tool typically requires only a confirmation. The mention of session disconnection adds valuable context. Slight deduction for not specifying return behavior.
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 100% with a single 'id' parameter already described as a UUID. The description adds no further meaning about how to obtain the ID or format expectations. Baseline score of 3 is appropriate since the schema already does the job adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'permanently delete' and the resource 'WhatsApp channel', distinguishing it from other sibling delete tools like 'delete_blog_post' or 'delete_bot'. It also specifies the side effect of disconnecting active sessions, leaving no ambiguity about the tool's 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?
No guidance on when to use this tool versus alternatives such as 'neuron_remove_bot_channel' or 'neuron_stop_channel_session'. There are no prerequisites or conditions mentioned (e.g., should the channel be stopped first?), nor any indication of 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.
neuron_delete_contactDelete ContactADestructiveIdempotentInspect
Permanently delete a contact and remove them from all contact lists. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the contact to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description aligns with annotations (destructiveHint: true) and adds behavioral context: contact is removed from all contact lists and the action cannot be undone. It does not contradict any 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?
Both sentences are concise and front-loaded with the action. The first sentence states the core purpose, the second emphasizes irreversibility. No redundant 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?
For a single-parameter delete tool, the description covers the key behavioral detail (removal from lists) and permanence. It does not address error conditions or authorization, but annotations and simplicity 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?
Schema coverage is 100% and the parameter description is already clear. The tool description adds no additional meaning beyond the schema, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('permanently delete a contact') and the resource ('contact'), and distinguishes from siblings by adding 'remove them from all contact lists'. This is specific and leaves no 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?
No guidance on when to use this tool versus alternatives like delete_contact_list or other delete tools. There is no mention of prerequisites or scenarios where this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_contact_listDelete Contact ListADestructiveIdempotentInspect
Permanently delete a contact list. System-protected lists (e.g., 'Do Not Contact') cannot be deleted.
| Name | Required | Description | Default |
|---|---|---|---|
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the contact list to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description confirms permanent deletion and adds the system-protected list constraint, which adds some context but does not significantly enhance transparency beyond what annotations provide.
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?
Two short, direct sentences that convey the essential information without any extraneous text. The key point (permanent deletion) 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?
For a simple delete operation with a single parameter and no output schema, the description covers the main behavior and a key constraint. It is complete enough for an agent to understand the tool's effect.
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 already provides a full description for the single parameter idOrSlug. The tool description adds no additional semantic detail, so it meets the baseline expectation for high 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 explicitly states 'Permanently delete a contact list' with a clear verb and resource. It also adds a nuanced exclusion for system-protected lists, distinguishing it from create/update/list 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 when to use (permanent deletion) and mentions system-protected lists cannot be deleted, giving a when-not boundary. However, it does not explicitly suggest alternatives for non-permanent removal or other contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_kb_entryDelete Knowledge Base EntryADestructiveIdempotentInspect
Permanently delete a specific entry from a knowledge base.
| Name | Required | Description | Default |
|---|---|---|---|
| kbId | Yes | Unique identifier of the knowledge base | |
| entryId | Yes | Unique identifier of the entry to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and idempotentHint=true. The description adds 'Permanently delete' which confirms irreversibility but does not provide additional behavioral context beyond what annotations offer.
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 that is front-loaded and contains no unnecessary words. It is as concise as possible for the 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 delete operation with no output schema, the description is sufficient. It could mention prerequisites or side effects, but given the tool's straightforward nature, it is nearly 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?
Input schema covers both parameters with clear descriptions (kbId, entryId). The tool description does not add extra meaning, so baseline 3 applies due to high 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 action 'delete' and the resource 'a specific entry from a knowledge base', effectively distinguishing it from siblings like neuron_delete_knowledge_base or neuron_update_kb_entry.
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; no prerequisites or scenarios provided. The description lacks any context for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_knowledge_baseDelete Knowledge BaseADestructiveIdempotentInspect
Permanently delete a knowledge base and all its associated entries and documents.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and idempotentHint=true. Description adds that deletion is permanent and cascades to entries/documents. However, it does not reveal specific behaviors like error handling for re-deletion 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?
Single sentence that is front-loaded with key action ('Permanently delete a knowledge base') and efficiently includes additional context ('and all its associated entries and documents'). 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?
Description is adequate for a destructive operation but lacks details on what happens to attached bots, whether the KB must be empty, and return behavior (no output schema). Annotations cover some gaps, but overall completeness is 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?
Schema coverage is 100% with parameter 'id' described as 'Unique identifier of the knowledge base to delete'. Description does not add extra meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'permanently delete a knowledge base and all its associated entries and documents', providing a specific verb and resource with scope. Distinguishes from siblings like neuron_delete_kb_entry (which deletes only an entry).
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 vs alternatives (e.g., update_knowledge_base, detach_knowledge_base, delete_kb_entry). Does not mention prerequisites or consequences such as needing to detach from bots first.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_messageDelete MessageADestructiveIdempotentInspect
Permanently delete a specific message from a conversation. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation | |
| msgId | Yes | Unique identifier (UUID) of the message to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds 'permanently delete' and 'cannot be undone', reinforcing the destructive nature. However, it does not add significant behavioral context beyond what annotations provide.
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 sentences with no wasted words. It front-loads the core action and resource, then adds the critical warning about irreversibility. Every sentence 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 straightforward delete operation, the description is complete. It identifies required parameters (conversation and message IDs), clarifies the irreversible nature, and aligns with annotations. No output schema is needed for this action.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both parameters (conversation ID and message ID). The tool description adds no additional meaning beyond the schema. Baseline score of 3 is appropriate given high 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 specifies the action ('permanently delete'), the resource ('a specific message'), and the context ('from a conversation'). It distinguishes this tool from siblings like 'neuron_edit_message' and other delete tools by focusing on messages within conversations.
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 tool is for permanent deletion ('cannot be undone') but does not provide explicit guidance on when to use this tool versus alternatives like editing or archiving. It implies finality but lacks contrast with similar actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_newsletterDelete NewsletterADestructiveIdempotentInspect
Permanently delete a WhatsApp Channel newsletter and remove it from WhatsApp. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the newsletter to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses irreversibility ('cannot be undone') and scope ('remove from WhatsApp'), adding value beyond annotations that already indicate destructiveHint=true.
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?
Two concise sentences with zero wasted words. Front-loaded with action and permanence.
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 destructive tool with one parameter and no output schema, description covers all necessary context: action, effect, and irreversibility.
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?
Single parameter id is fully described in schema (100% coverage). Description adds no additional meaning beyond 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 clearly states verb 'delete', resource 'newsletter', and effect 'permanently remove from WhatsApp'. Distinguishes from siblings like create/update.
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 use for permanent deletion, but no explicit when-to-use or when-not-to-use instructions. No mention of prerequisites or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_outbound_webhookDelete Outbound WebhookADestructiveIdempotentInspect
Permanently remove an outbound webhook. The external endpoint will no longer receive event notifications from this bot.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the outbound webhook to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by explicitly stating the deletion is permanent and explaining the real-world effect (endpoint no longer receives events). 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?
Two concise sentences front-load the action and consequence with no unnecessary 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?
For a delete operation with one parameter and no output schema, the description is complete. It explains the purpose, effect, and requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the 'id' parameter fully described. The description does not add additional parameter-level guidance 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 action ('permanently remove') and the resource ('outbound webhook'), and explains the consequence ('will no longer receive event notifications'). It distinguishes from create and update webhook 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 (when you want to delete a webhook) but does not provide explicit when-to-use or when-not-to-use guidance, nor does it differentiate from other delete tools like neuron_delete_webhook.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_toolDelete ToolADestructiveIdempotentInspect
Permanently remove a custom API tool integration from a bot. The bot will no longer be able to invoke this tool in conversations.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the tool to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by emphasizing permanence and the direct effect on bot functionality. It is consistent with destructiveHint=true and adds context about irrevocability.
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?
Two sentences with no extraneous information. The first sentence states the action, the second the consequence. Highly concise 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?
For a simple one-parameter delete operation, the description is largely complete. It covers the action and effect, but could optionally mention error behavior (e.g., if ID not found) for full 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 100% and the parameter 'id' is well-described in the schema. The tool description does not add further meaning to the parameter, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('permanently remove a custom API tool integration from a bot') and its consequence ('bot will no longer be able to invoke this tool'). This distinguishes it from sibling delete tools which delete other resource 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 implicitly guides usage by specifying the resource (custom API tool integration), allowing differentiation from other delete tools. However, it lacks explicit when-to-use or when-not-to-use guidance, such as not using for built-in tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_delete_webhookDelete WebhookADestructiveIdempotentInspect
Permanently remove an inbound webhook from a bot. External services will no longer be able to trigger this endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the webhook to delete |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true, but the description adds context by specifying 'permanently remove' and detailing the effect on external service triggers. This clarifies the irreversible nature and is consistent 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 two concise sentences with no unnecessary words. It front-loads the action and effect, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete tool with one parameter and clear annotations, the description covers the essential information: what it does, its permanent nature, and the impact. No output schema is needed, and the description feels 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 covers the single parameter 'id' fully with a description. The tool description does not add further semantic value beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool permanently removes an inbound webhook, distinguishing it from outbound webhooks via the 'inbound' specification. It also explains the consequence: external services can no longer trigger the endpoint. This is specific and helpful.
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 deleting inbound webhooks but provides no explicit guidance on when to use it over alternatives like 'neuron_update_webhook' or 'neuron_create_webhook'. No mention of prerequisites or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_detach_knowledge_baseDetach Knowledge BaseADestructiveIdempotentInspect
Remove a knowledge base from a bot. The bot will no longer reference this knowledge base when generating responses.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot | |
| kbId | Yes | Unique identifier (UUID) of the knowledge base to detach |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide destructiveHint=true and readOnlyHint=false. The description adds that the bot stops referencing the KB, which is helpful but does not disclose reversibility or side effects. IdempotentHint=true is not addressed.
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?
Two concise sentences that front-load the action and effect. Every word is necessary, 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 mutation with two parameters, the description covers the core behavior. However, it lacks mention of return value or confirmation, and could note that the KB itself remains. Still, it is fairly complete given low 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 coverage is 100% with parameter descriptions. The description adds no extra meaning beyond the schema, so baseline 3 is appropriate. No parameter-level details are given in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (remove) and resource (knowledge base from bot), and explains the effect (bot will no longer reference KB). It effectively distinguishes from sibling tools like neuron_attach_knowledge_base and neuron_delete_knowledge_base.
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 or when not to use this tool. It does not mention prerequisites (e.g., KB must be attached) nor contrast with alternatives like deleting vs detaching. The description is minimal and lacks usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_edit_messageEdit MessageAIdempotentInspect
Edit the content of a previously sent message in a conversation. Only the message sender can edit their messages.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation | |
| msgId | Yes | Unique identifier (UUID) of the message to edit | |
| content | Yes | New text content to replace the existing message |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotent, non-readOnly, non-destructive. The description adds the important behavioral constraint that only the sender can edit. No contradictions. It doesn't detail what happens on edit (e.g., timestamp update) but is adequate.
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?
Two sentences with no waste. The constraint is front-loaded. Every sentence 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?
For a simple mutation tool with three well-described parameters and no output schema, the description covers the essential behavior and constraint. Missing details like response format or time limits, but not necessary for core 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 has 100% coverage with clear descriptions for each parameter. The description adds no extra meaning beyond what is in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'edit' and the resource 'content of a previously sent message', and adds a key constraint ('only the message sender can edit'). This distinguishes it from siblings like send_message or delete_message.
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 implicitly provides usage context by stating the sender constraint, but does not explicitly list when to use versus alternatives like delete_message or send_message. However, the purpose is clear enough for an agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_export_contactsExport ContactsARead-onlyIdempotentInspect
Export all contacts as a downloadable dataset for the current organization.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering safety and idempotency. The description adds that output is a 'downloadable dataset' but does not elaborate on format, size limits, or whether it blocks until ready. Helps but adds modest value beyond 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?
One concise sentence that front-loads the action and scope. No unnecessary words, every part 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 zero-parameter tool with annotations covering behavioral traits, the description is adequate but leaves out details like output format (e.g., CSV, JSON), file naming convention, and how the download is initiated. No output schema to supplement.
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?
No parameters in input schema, so description correctly avoids param details. With 0 params, baseline is 4. The description does not need to add parameter information.
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 'Export all contacts as a downloadable dataset for the current organization,' specifying the verb (Export), resource (all contacts), and scope (current organization). This distinguishes it from siblings like list_contacts (which lists but does not provide a downloadable dataset) and import_contacts (reverse operation).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as list_contacts for previewing or get_contact for individual retrieval. The description does not mention when not to use it or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_find_contact_lists_for_contactFind Contact Lists for ContactARead-onlyIdempotentInspect
Retrieve all contact lists that a specific contact belongs to.
| Name | Required | Description | Default |
|---|---|---|---|
| contactId | Yes | Unique identifier (UUID) of the contact to look up |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the description's 'retrieve' adds no extra behavioral details. No additional traits disclosed.
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?
Single sentence, no fluff. Efficiently communicates the tool's purpose without 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?
Simple tool with one well-documented parameter, complete annotations, and no output schema needed. The description fully covers what the agent needs to know.
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 100% with a clear description for contactId. The tool description adds no further meaning beyond the schema's 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 verb 'retrieve' and resource 'contact lists' for a specific contact, distinguishing it from sibling tools like get_contact_list (single list) and list_contact_lists (all lists).
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 or when not to use this tool compared to alternatives. The description does not provide context for selection among related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_fund_campaignFund CampaignAInspect
Fund an approved campaign by deducting the total budget from the organization's wallet balance. Requires sufficient wallet funds.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the approved campaign to fund |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds context about wallet deduction and funds requirement beyond annotations. Annotations indicate mutation (readOnlyHint=false) and non-destructive (destructiveHint=false), which matches 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?
Two concise sentences, front-loaded with the core action, 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?
Covers key aspects for a simple funding operation: what it does, prerequisite, and effect. Lacks details on error conditions or success response, but sufficient given low 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?
Single parameter 'id' is fully described in schema; description adds minimal extra meaning by specifying 'approved campaign'—a subtle enhancement but not substantial.
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 clearly states the action (fund), target (approved campaign), and mechanism (deduct from wallet). Distinguishes from sibling campaign tools like create, update, delete.
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?
States prerequisite of sufficient wallet funds and that campaign must be approved, but does not explicitly contrast with alternatives or state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_fund_walletFund WalletAInspect
Initialize a wallet funding transaction via Paystack. Returns a checkout URL to complete the payment in a browser.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Email address to receive the payment receipt | ||
| amount | Yes | Amount to fund in the smallest currency unit — kobo for NGN (e.g., 500000 = NGN 5,000) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false, providing no safety cues. Description discloses it is a mutation (initializes a transaction) and returns a checkout URL, but lacks details on side effects (e.g., does it create a pending transaction?), authorization requirements, or error scenarios (e.g., if amount too low). With zero annotation support, the description should carry more 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?
Two sentences, front-loaded with core action and outcome. Every word adds value; no 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?
Description mentions return value (checkout URL), partially compensating for missing output schema. However, lacks details on currency (only implied via amount example), error handling, or post-transaction steps. For a payment tool, additional context like required wallet existence or funding limits 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?
Schema coverage is 100% with clear descriptions for both parameters ('email' for receipt, 'amount' in kobo). Description does not add additional meaning beyond schema; baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Initialize a wallet funding transaction via Paystack' and notes it returns a checkout URL. Verb 'initialize' with specific resource 'wallet funding transaction' sets precise scope. Distinguishes from siblings like neuron_fund_campaign by focusing on wallet funding rather than campaign funding.
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?
Description implies usage for initiating wallet funding payments via Paystack but does not explicitly state when to use this tool versus alternatives like neuron_fund_campaign or neuron_wallet_balance. No guidance on prerequisites (e.g., must wallet exist?) or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_ad_request_analyticsGet Ad Request AnalyticsBRead-onlyIdempotentInspect
Retrieve delivery analytics and performance breakdown for a specific ad request, including delivery rates and cost metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| adRequestId | Yes | Unique identifier (UUID) of the ad request to get analytics for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint: true, destructiveHint: false, idempotentHint: true) already cover safety. Description adds no new behavioral context such as rate limits, data freshness, 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?
Single sentence of 16 words, efficient and front-loaded with the key action and resource.
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 no output schema, description mentions 'delivery rates and cost metrics' but lacks full detail on return shape. Adequate for a simple read tool but could be more specific.
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 covers 100% of parameters with clear description for adRequestId. Description implicitly references the parameter but adds 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 the verb 'Retrieve', the resource 'delivery analytics and performance breakdown for a specific ad request', and specifies scope ('specific'). It distinguishes from siblings like neuron_list_ad_requests and neuron_create_ad_request.
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 vs alternatives like neuron_list_ad_requests. No prerequisites or when-not-to-use conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_bank_accountGet Bank AccountARead-onlyIdempotentInspect
Retrieve the saved bank account details currently configured as the organization's payout destination.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, and description consistently says 'retrieve'. No additional behavioral details (e.g., auth requirements, default behavior) are added beyond 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?
Single sentence, 14 words, front-loaded with verb, no redundant phrasing. Every word 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?
Tool is simple (no parameters, no output schema) with good annotations. Description fully covers purpose and scope for a read-only retrieval of a single entity.
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?
Input schema has zero parameters, so baseline is 4. Description doesn't need to add parameter info as there are none.
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 clearly states verb 'retrieve' and resource 'saved bank account details' with context 'organization's payout destination', distinguishing it from sibling tools like save/verify.
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 implicit usage context (current payout destination) but lacks explicit guidance on when to use versus alternatives like save_bank_account or verify_bank_account.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_billingGet Billing InfoARead-onlyIdempotentInspect
Retrieve the current billing information, subscription plan, and usage details for the organization.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly=true, idempotent=true, destructive=false. The description adds that it returns current billing information, subscription plan, and usage details, which aligns with the read-only nature and provides specific context beyond the 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?
Single sentence of 15 words, efficient and front-loaded. No wasted text.
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 is complete for a parameterless get tool: it specifies what is retrieved and the scope (organization). No output schema exists, so the description covers the essential behavioral contract.
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?
There are no parameters, so the description does not need to add parameter meaning. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves billing info, subscription plan, and usage details for the organization, with a specific verb and resource. This distinguishes it from sibling tools like cancel or checkout.
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 solely states the purpose, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_blog_postGet Blog PostARead-onlyIdempotentInspect
Retrieve a single blog post by its URL-friendly slug, including full content and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | URL-friendly slug of the blog post (e.g., 'my-first-post') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that the tool returns 'full content and metadata', providing additional context beyond the annotations. There is no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that conveys all essential information without any superfluous words. It is front-loaded with the action and resource.
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 identifier parameter and no output schema, the description sufficiently explains what the tool does and what it returns. It could elaborate on what 'metadata' includes, but not necessary for a minimal viable 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 input schema has 100% coverage with a clear description for the only parameter 'slug'. The description echoes this by mentioning 'URL-friendly slug', but adds no new meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Retrieve'), resource ('a single blog post'), method ('by its URL-friendly slug'), and scope ('including full content and metadata'). It distinguishes this tool from siblings like 'neuron_list_blog_posts' and 'neuron_update_blog_post'.
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 (when you have a slug and need a single post). It does not explicitly rule out alternative uses or mention when not to use it, but the context is clear enough for an AI to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_botGet BotARead-onlyIdempotentInspect
Retrieve detailed information about a specific bot including its configuration, status, and associated resources.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, destructiveHint=false, idempotentHint=true, so the agent knows it's a safe read. The description adds value by specifying the returned content (configuration, status, associated resources), which goes beyond the 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 a single, efficient sentence with no wasted words. It is appropriately sized and front-loaded with the key action.
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 output schema, the description adequately describes the return value (detailed information, configuration, status, associated resources). For a simple read tool with one parameter, this is complete enough.
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 covers the single parameter 'id' with a clear description. The tool description does not add any additional semantics beyond what the schema provides (100% 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 verb 'Retrieve' and the resource 'a specific bot', and distinguishes this from sibling tools like neuron_list_bots (which lists all bots) by focusing on a single bot.
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 details of one bot but does not explicitly compare to alternatives like neuron_bot_api_get_bot or provide when-not-to-use guidance. Usage 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.
neuron_get_bot_analyticsGet Bot AnalyticsARead-onlyIdempotentInspect
Retrieve analytics and usage statistics for a specific bot, including message counts, response times, and conversation metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot to retrieve analytics for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, non-destructive. Description adds useful context about the specific metrics included (message counts, response times, conversation metrics). No contradiction.
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?
Single, concise sentence (17 words) that front-loads the action and resource. No extraneous 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?
No output schema, so description partially compensates by listing the types of metrics returned. However, it does not specify return format or structure (e.g., aggregated vs. per-period). Still sufficient for 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?
Schema has 100% coverage for the single 'id' parameter with a clear description. The tool description does not add 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?
Description clearly states it retrieves analytics for a specific bot, with specific metrics (message counts, response times, conversation metrics). It distinguishes from sibling tools like 'neuron_get_bot' which gets general bot details.
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 such as 'neuron_get_bot' or 'neuron_list_bots'. No conditions or exclusions stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_broadcastGet BroadcastARead-onlyIdempotentInspect
Retrieve detailed information about a specific broadcast, including its status, message content, and recipient summary.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the broadcast to retrieve |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds context about returned fields (status, message content, recipient summary) but does not disclose additional behavioral traits beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no extraneous words. It efficiently conveys the essential purpose and return 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?
Given the tool is simple and has no output schema, the description adequately covers what is returned (status, message content, recipient summary). It is complete for a retrieval tool, though it does not mention potential errors or edge cases.
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 already describes the single parameter 'id' with full coverage (100%), including its type and purpose. The tool description adds no additional parameter 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 verb 'Retrieve' and the resource 'broadcast', and specifies the included details: status, message content, and recipient summary. This distinguishes it from sibling tools like neuron_list_broadcasts, which only lists broadcasts.
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 use for retrieving details of a specific broadcast but does not explicitly state when to use vs alternatives such as neuron_list_broadcasts or neuron_get_broadcast_recipients. No when-not or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_broadcast_recipientsGet Broadcast RecipientsARead-onlyIdempotentInspect
Retrieve the paginated list of recipients for a specific broadcast with their individual delivery status.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the broadcast | |
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of recipients per page (default: 20) | |
| status | No | Filter recipients by delivery status (e.g., 'delivered', 'failed', 'pending') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description adds behavioral details: pagination and individual delivery status. This helps the agent understand the output structure and that multiple pages may 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 a single, concise sentence that is front-loaded with the core action. It contains 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?
Given the tool is a simple read operation with full schema coverage and no output schema, the description adequately explains the purpose and key behavior. It could optionally mention the return format, but it's not missing critical information.
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?
With 100% schema coverage, baseline is 3. The description mentions 'paginated list' and 'delivery status' which relate to page, limit, and status parameters, but does not add significant new meaning beyond the 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 retrieves a paginated list of recipients with delivery status for a specific broadcast. It uses a specific verb ('Retrieve') and resource ('recipients for a broadcast'), distinguishing it from sibling tools like neuron_get_broadcast.
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 state when to use this tool versus alternatives, such as neuron_get_broadcast for broadcast details or neuron_get_contact_list_members for contact list members. The context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_campaignGet CampaignARead-onlyIdempotentInspect
Retrieve detailed information about a specific campaign including its status, budget, participants, and delivery metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the campaign |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the description doesn't need to repeat safety traits. It adds value by listing specific return fields (status, budget, participants, delivery metrics), which is helpful beyond 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 a single sentence with no fluff. It front-loads the action and resource, then lists specific contents. Every word is necessary and earned.
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-by-ID tool with strong annotations and a single parameter, the description provides sufficient context about what is returned. It doesn't need to describe pagination or complex behavior. The listed fields give agents a clear expectation.
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 100% coverage with a single required parameter 'id' described as 'Unique identifier (UUID) of the campaign'. The description does not add any additional semantic detail to the parameter beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Retrieve detailed information about a specific campaign', specifying the verb (Retrieve) and resource (campaign). It lists specific content (status, budget, participants, delivery metrics), distinguishing it from listing tools like neuron_list_campaigns.
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 needing detailed info on a campaign, but lacks explicit guidance on when not to use it or how it differs from alternatives like neuron_get_broadcast or neuron_get_contact. No 'when to use' or 'when not to use' statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_channelGet ChannelARead-onlyIdempotentInspect
Retrieve detailed information about a specific WhatsApp channel, including its configuration, type, and connection status.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond the annotations by specifying what detailed information is returned (configuration, type, connection status). It is consistent with annotations (readOnlyHint, idempotent, non-destructive) and provides additional 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 a single, concise sentence that immediately conveys the action and scope. Every word is necessary and contributes to clarity, 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?
Given the tool's simplicity (one parameter, read-only, idempotent), the description is complete. It covers the purpose, output scope, and is consistent with annotations. No additional information is needed for an agent to correctly invoke 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?
The schema describes the only parameter 'id' with a clear description. The tool description does not add further meaning beyond what is in the schema. With 100% schema coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Retrieve' and the resource 'WhatsApp channel', and specifies the kind of information included (configuration, type, connection status). It distinguishes itself from sibling tools like neuron_get_channel_status and neuron_get_channel_events.
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 state when to use this tool versus alternatives, nor does it provide exclusion criteria or prerequisites. The usage is implied by the tool's purpose, but no explicit guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_channel_eventsGet Channel EventsARead-onlyIdempotentInspect
Retrieve the event log for a channel, including connection events, message events, and errors. Supports pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel | |
| page | No | Page number for pagination (starts at 1) | |
| limit | No | Number of events to return per page |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint, so the description adds value by specifying the event types included and pagination support. No contradictions.
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?
Single sentence, front-loaded with action and resource, includes key details without redundancy. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, good annotations, and full schema coverage, the description is sufficient. Lacks output format details but not critical without 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?
Schema coverage is 100% with descriptions for each parameter. The description only mentions pagination generally but adds no further meaning beyond the schema's 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 retrieves the event log for a channel, listing specific event types (connection, message, errors), and mentions pagination. It distinguishes from sibling tools like get_channel (channel info) and get_channel_status (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?
The description provides clear context but does not explicitly state when to use this tool over alternatives or when not to use it. Lacks exclusions or comparisons with similar tools like get_channel_status or list_channels.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_channel_qrGet Channel QR CodeARead-onlyIdempotentInspect
Retrieve the current QR code for pairing a Baileys channel with WhatsApp. A session must be started first.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the Baileys channel |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the description correctly focuses on the main behavior: retrieving a QR code. It adds the crucial context that a session must be started first, disclosing a prerequisite. No contradictions.
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 short sentences (14 words), front-loaded with the main action. Every word is meaningful; no unnecessary details 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?
Given the tool's simplicity (1 parameter with full schema coverage, clear annotations), the description covers the purpose and prerequisite. It could optionally mention the output format (e.g., data URL), but for a read-only 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 description coverage is 100%, with the parameter 'id' already described as 'Unique identifier (UUID) of the Baileys channel'. The tool description does not add extra meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Retrieve') and resource ('current QR code for pairing a Baileys channel with WhatsApp'), clearly distinguishing it from sibling tools like neuron_get_channel, neuron_get_channel_status, and neuron_get_channel_events, which deal with general channel info, status, or events.
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: use to get a QR code for pairing, and explicitly states a prerequisite ('A session must be started first'). It implicitly tells when to use this tool (after starting a session, when a QR code is needed) but does not explicitly list 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.
neuron_get_channel_statusGet Channel StatusARead-onlyIdempotentInspect
Retrieve the current connection status and session details for a specific channel (e.g., connected, disconnected, qr_pending).
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and idempotent, so the description's addition of status examples provides some value but not extensive behavioral context. 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?
Single sentence, front-loaded with action verb, includes example values. No wasted words; 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?
Given no output schema, the description hints at return values (status and session details with examples). Could be more explicit about the structure, but adequate for a simple read operation with strong 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 describes the 'id' parameter sufficiently (UUID). The description does not add additional meaning beyond referencing 'a specific channel.' With 100% schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves connection status and session details for a specific channel, with examples like connected, disconnected, qr_pending. It distinguishes from sibling tools like neuron_get_channel (general info) and neuron_get_channel_qr (QR code).
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 (e.g., neuron_get_channel). It does not specify prerequisites, such as the channel must exist, or provide context like checking connectivity before sending messages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_contactGet ContactARead-onlyIdempotentInspect
Retrieve detailed information about a specific contact including their tags, notes, and associated lists.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the contact |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by specifying that tags, notes, and lists are returned. Annotations already indicate read-only, non-destructive behavior, so the description complements them well without contradiction.
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 clear sentence with no unnecessary words. It is front-loaded with the action 'retrieve detailed information' and uses precise language.
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 retrieval tool with annotations covering read-only and idempotent hints, and a well-documented single parameter, the description is complete. It mentions the type of data returned (tags, notes, lists), which is sufficient for an agent to understand the tool's function.
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 100% coverage for the single parameter 'id' with description. The tool description does not add additional meaning or context to the parameter beyond what the schema already states, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves detailed information about a specific contact, including tags, notes, and lists. It distinguishes itself from siblings like list_contacts and search_contacts by focusing on a single contact's details.
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 detailed info on a specific contact is needed, but does not explicitly state when not to use it or name alternatives. The sibling tool names (e.g., neuron_list_contacts, neuron_search_contacts) provide context, but the description lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_contact_listGet Contact ListARead-onlyIdempotentInspect
Retrieve detailed information about a specific contact list, including member count and configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the contact list |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, making the tool's safe, read-only nature clear. The description adds that it returns 'member count and configuration', which provides some detail beyond the annotations but does not significantly enhance behavioral disclosure. No contradictions.
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?
Single sentence with clear verb and resource, front-loaded 'Retrieve detailed information'. No redundant words, every word adds value. Appropriate length for the tool's simplicity.
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 one simple parameter, annotations covering safety, and no output schema, the description is fairly complete. It specifies the key information returned (member count, configuration). Could be slightly more detailed about the return structure, but overall 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 coverage is 100% with a single parameter 'idOrSlug' described in the schema. The tool description does not add any extra meaning or usage guidance for the parameter beyond what the schema already provides. Baseline 3 applies since schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it retrieves detailed info of a specific contact list, with verb 'Retrieve' and resource 'contact list'. It mentions included details (member count, configuration). However, it does not explicitly distinguish from sibling tools like 'neuron_list_contact_lists' which lists all lists, though the name implies specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives (e.g., listing all contact lists via 'neuron_list_contact_lists' or filtering via 'neuron_find_contact_lists_for_contact'). Usage is implied by the action of getting a single list, but no 'when to use' or 'when not to use' context is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_contact_list_membersGet Contact List MembersARead-onlyIdempotentInspect
Retrieve the members of a specific contact list with optional search filtering and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of items per page (default: 20) | |
| search | No | Search term to filter members by name or phone number | |
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the contact list |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is clear. The description adds value by noting optional search and pagination, but does not disclose additional behavioral traits such as response format, ordering, rate limits, or maximum page size.
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 that conveys the core functionality and optional features without extraneous text. Every word 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?
For a simple read-only retrieval tool with one required parameter and three optional ones, the description covers the essential purpose and optional features. However, it does not mention the return value (a list of members) or any limitations, but given no output schema, some inference is acceptable.
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 100%, with each parameter having a clear description. The tool description summarizes the optional search and pagination but does not add meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'retrieve', the resource 'members of a specific contact list', and mentions optional features (search filtering and pagination). It distinguishes this tool from siblings like neuron_get_contact_list (which returns the list itself) and neuron_list_members (which may be generic).
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 (when you need members from a specific list with optional filtering/pagination) but does not explicitly state when to use this tool versus alternatives like neuron_list_members, neuron_search_contacts, or neuron_get_contact_list. No exclusions or explicit when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_conversationGet ConversationARead-onlyIdempotentInspect
Retrieve detailed information about a specific conversation, including its status, participants, and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint, idempotentHint, and non-destructive nature, so the description adds context about what is retrieved (status, participants, metadata) but does not contradict annotations. No extra behavioral details beyond that.
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, clear sentence that conveys the essential purpose without any unnecessary 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 simple single-parameter input, clear annotations, and no output schema, the description is largely complete. However, briefly mentioning the return format or typical usage could enhance 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 description coverage is 100%; the parameter 'id' is described as a UUID. The tool description adds no additional semantics beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves detailed information about a specific conversation, including status, participants, and metadata. This distinguishes it from sibling tools like list_conversations or close_conversation.
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 a conversation ID is known and details are needed, but lacks explicit guidance on when to use this vs alternatives like neuron_list_conversations or neuron_get_messages.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_eligible_contactsGet Eligible ContactsARead-onlyIdempotentInspect
Retrieve contacts eligible to receive a campaign message. Respects deduplication rules and mutual contact requirements.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the campaign to check eligibility for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations by mentioning deduplication rules and mutual contact requirements. Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description enriches transparency without contradiction.
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 sentences long, front-loaded with the core purpose, and contains no extraneous information. Every word contributes to understanding.
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 no output schema, the description sufficiently covers the tool's behavior and constraints. It provides enough context for an agent to understand when 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 coverage is 100% and the only parameter (id) is already well-described in the schema. The tool description does not add additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Retrieve' and the resource 'contacts eligible to receive a campaign message'. It distinguishes itself from sibling tools like neuron_list_contacts by focusing on eligibility for a campaign, providing a specific and actionable 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 context (when checking eligibility for a campaign message) but does not explicitly state when to use this tool versus alternatives like neuron_list_contacts or neuron_search_contacts. No exclusion or 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.
neuron_get_group_participantsGet Group ParticipantsBRead-onlyIdempotentInspect
Retrieve the list of participants in a specific WhatsApp group accessible through a channel.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel | |
| groupJid | Yes | JID (Jabber ID) of the WhatsApp group (e.g., '120363XXX@g.us') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already confirm the tool is read-only, idempotent, and non-destructive (readOnlyHint=true, idempotentHint=true, destructiveHint=false). The description adds no further behavioral details such as authentication requirements, rate limits, or error conditions, offering no additional value beyond the 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 a single, clear sentence that conveys the essential information without extraneous words. It is front-loaded with the action and resource.
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 simple nature of the tool and the presence of comprehensive annotations and parameter descriptions, the description is adequate. However, it lacks details about the return format or any prerequisites, such as ensuring the channel has access to the specified group. A score of 3 reflects a minimal viable 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?
Both parameters ('id' and 'groupJid') are fully described in the input schema (100% coverage). The description adds no additional semantic meaning beyond the schema, such as clarifying the relationship between the channel id and the group JID. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Retrieve the list of participants') and the specific resource ('a specific WhatsApp group accessible through a channel'). It is specific and distinct from sibling tools like neuron_get_channel (which retrieves channel properties) and neuron_list_channel_groups (which lists groups).
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 or when not to use this tool, nor any mention of alternatives. The description only implies usage when needing group participants, without providing context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_knowledge_baseGet Knowledge BaseARead-onlyIdempotentInspect
Retrieve detailed information about a specific knowledge base by its ID.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint as true/true/false, which signal safe read behavior. The description simply confirms a retrieval action without adding further behavioral details (e.g., response format, pagination, or access requirements). No contradiction.
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, clear sentence with no unnecessary words. It immediately conveys the tool's purpose and required input.
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 operation with one parameter and comprehensive annotations, the description is sufficient. However, it does not specify what 'detailed information' includes, which could be important given the absence of an output schema. Still, it provides a complete functional summary.
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 100% with a single parameter 'id' described as 'Unique identifier of the knowledge base'. The description does not add semantic value beyond what the schema already provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Retrieve detailed information') and the target resource ('specific knowledge base'), with the required identifier ('by its ID'). It effectively distinguishes from sibling tools like 'create_knowledge_base' or 'list_knowledge_bases'.
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 (e.g., 'list_knowledge_bases' for listing all), nor does it mention any prerequisites or exclusions. The usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_messagesGet Conversation MessagesARead-onlyIdempotentInspect
Retrieve messages from a specific conversation in chronological order, with optional cursor-based pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation | |
| limit | No | Maximum number of messages to return per page | |
| cursor | No | Opaque pagination cursor from a previous response for retrieving the next page |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds 'chronological order' and 'cursor-based pagination' beyond the annotations. Since annotations already declare readOnlyHint=true and idempotentHint=true, the description provides some additional behavioral context but not substantial depth (e.g., no mention of rate limits or required 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 description is a single, front-loaded sentence that efficiently conveys the core functionality and features. No extraneous 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 read-only tool with three parameters and no output schema, the description adequately covers the basic function and pagination. It does not mention return format or potential limitations (e.g., maximum limit), but these are acceptable gaps 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?
Schema description coverage is 100%, with clear descriptions for all three parameters. The description only reinforces that pagination is cursor-based, which is already implied by the schema. No additional parameter semantics are provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Retrieve' and clearly identifies the resource as 'messages from a specific conversation'. It also specifies ordering ('chronological order') and pagination, which clearly distinguishes it from sibling tools like 'neuron_get_conversation'.
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 'neuron_bot_api_get_messages' or 'neuron_get_conversation'. It does not mention any prerequisites or conditions that would make it more appropriate than others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_newsletterGet NewsletterARead-onlyIdempotentInspect
Retrieve detailed information about a specific WhatsApp Channel newsletter, including subscriber count and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the newsletter to retrieve |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds value by specifying the return includes 'subscriber count and metadata', which is not covered by annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no redundant words. It efficiently communicates the tool's purpose and output.
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 operation with one parameter and no output schema, the description is adequate. It states what it does and what it returns. Minor improvement could mention additional fields but not 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 already describes the 'id' parameter with 100% coverage. The description does not add new meaning about the parameter beyond the schema, but it implies the id identifies a newsletter. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the verb 'retrieve', the resource 'newsletter', and specifies it's for a specific newsletter by id. It distinguishes from sibling tools like 'neuron_list_newsletters' (which retrieves all) and mutation tools like 'neuron_create_newsletter'.
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 context is clear: use when you need detailed info on a specific newsletter (by id). It implicitly contrasts with listing, but does not explicitly state when not to use or suggest alternatives like 'neuron_list_newsletters'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_organizationGet OrganizationARead-onlyIdempotentInspect
Retrieve detailed information about a specific organization, including its name, settings, and configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization to retrieve |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey read-only and non-destructive nature. Description adds that it returns name, settings, and configuration, providing expected content beyond annotations. No contradictions. Does not cover error handling or permissions, but annotations reduce burden.
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?
Single sentence, no redundancy. Front-loaded with 'Retrieve detailed information', no unnecessary words. Perfectly concise for the tool's simplicity.
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?
Tool is simple (get by ID), annotations cover safety, no output schema needed. Description sufficiently explains purpose and return content. Lacks details on error behavior (e.g., not found) but acceptable for a straightforward retrieval 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 coverage is 100% with a clear description of orgId as a UUID. Description does not add additional meaning beyond 'specific organization'. Baseline 3 is appropriate since schema already documents the parameter adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Retrieve' and resource 'detailed information about a specific organization'. It lists concrete aspects (name, settings, configuration) differentiating it from sibling tools like neuron_list_organizations (list all) and neuron_update_organization (modify).
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?
Implicitly clear when to use (when you need detailed info about a specific org by ID) but does not explicitly state when not to use or mention alternatives like listing or updating. Given the simplicity and distinction from siblings, it's adequate but not explicitly guiding.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_outbound_webhook_logsGet Outbound Webhook LogsARead-onlyIdempotentInspect
Retrieve delivery logs for an outbound webhook to monitor event dispatch history and debug delivery failures.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the outbound webhook to get logs for | |
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of log entries per page (default: 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering safety. The description adds that logs are for delivery monitoring and debugging, which is consistent. No contradictions or additional behavioral traits beyond 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 a single, front-loaded sentence of 14 words with no wasted words. It efficiently conveys purpose and context.
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 (read-only list retrieval), annotations cover safety, and schema covers parameters, the description is mostly complete. It could mention the return format (e.g., array of log entries) but is not essential. Slightly incomplete due to lack of output 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 description coverage is 100%, so baseline is 3. The description does not add any parameter-level meaning beyond what the schema already provides (id, page, limit). No extra value from 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 explicitly states the action (Retrieve delivery logs), the resource (outbound webhook), and the purpose (monitor event dispatch history and debug delivery failures). It clearly distinguishes from sibling tools like 'neuron_get_webhook_logs' (likely for inbound) and 'neuron_list_outbound_webhooks' (lists webhooks themselves).
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 monitoring and debugging a specific outbound webhook, providing clear context. However, it does not explicitly state when not to use this tool or contrast with alternatives like 'neuron_get_webhook_logs'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_pool_itemGet Pool ItemARead-onlyIdempotentInspect
Retrieve detailed information about a specific item in the marketplace pool, including its description, category, tags, and install count.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the pool item to retrieve |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds value by specifying the exact fields returned (description, category, tags, install count), which is beyond what annotations provide.
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 with no fluff, directly stating the tool's purpose and key outputs. Every word 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?
With one parameter and no output schema, the description lists several fields returned. It could be more explicit about the full response structure, but it covers main points adequately.
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 100% with a single parameter 'id' clearly described. The tool description does not add any additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Retrieve detailed information about a specific item in the marketplace pool', using a specific verb and resource. It distinguishes from sibling tools like neuron_browse_pool (listing) and neuron_install_from_pool (installation).
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 provide any guidance on when to use this tool versus alternatives or when not to use it. No explicit usage context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_profileGet User ProfileBRead-onlyIdempotentInspect
Retrieve the authenticated user's profile information including name, email, role, and current organization.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is clear. Description adds that it returns specific profile fields, which is useful but does not elaborate on authentication requirements 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?
One sentence that is front-loaded with the action verb 'Retrieve'. It is concise and contains no unnecessary 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?
No output schema exists, so description should sufficiently describe return values. It lists some fields but not all possible fields or the structure. Could be more exhaustive.
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?
No parameters exist, so schema coverage is 100%. Description does not need to add parameter semantics, and baseline for 0 parameters is 4.
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 retrieves the authenticated user's profile with specific fields (name, email, role, organization). However, it does not distinguish from a sibling tool 'neuron_whoami' which may serve a similar 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?
No guidance on when to use this tool versus alternatives like 'neuron_whoami'. Does not provide context for when it is appropriate to call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_get_webhook_logsGet Webhook LogsBRead-onlyIdempotentInspect
Retrieve execution logs for an inbound webhook to monitor incoming requests and debug processing issues.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the webhook to get logs for | |
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of log entries per page (default: 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds no additional behavioral details such as pagination behavior, log retention, or response format. It does not contradict 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 a single, clear sentence with no redundancy. It is front-loaded with the main action and purpose. Slightly more structure (e.g., ordering of log entries) could improve it, but it remains 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?
For a simple retrieval tool with three parameters and safety annotations, the description is adequate. However, it lacks information about the content of log entries (e.g., timestamp, status) which would be helpful since there is no 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?
All three parameters have descriptions in the input schema (100% coverage), so the schema already defines them. The description adds no parameter-specific meaning beyond stating the tool's overall purpose, meeting the baseline for high 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 uses a specific verb ('retrieve') and resource ('execution logs for an inbound webhook'), clearly stating the purpose for monitoring and debugging. It implicitly distinguishes from the sibling tool neuron_get_outbound_webhook_logs by specifying inbound webhooks.
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 use for monitoring and debugging incoming requests, but does not provide explicit when-to-use vs when-not-to-use guidance or mention alternatives. The sibling tool for outbound webhooks is not mentioned, so context is minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_import_contactsImport ContactsAInspect
Bulk import multiple contacts into the organization's address book. Accepts an array of contact objects with name, phone, and optional fields.
| Name | Required | Description | Default |
|---|---|---|---|
| contacts | Yes | Array of contact objects to import into the organization |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description states 'import' which implies write operation, consistent with annotations (readOnlyHint=false). However, lacks details on side effects (e.g., duplicate handling, max array size, validation), especially with no idempotent hint.
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?
Two sentences, front-loaded with core purpose. No redundant or unnecessary words. Efficiently conveys key 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?
Adequate for a simple tool with one parameter and no output schema. However, lacks behavioral details (e.g., duplications, validations) that would make it fully complete for an import 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 coverage is 100% with descriptions for all properties. The description reinforces required fields (name, phone) and optional fields, but adds no new 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 action (bulk import), resource (contacts into organization's address book), and key specifics (array of contact objects, required fields: name and phone). Distinguishes from sibling tools like 'neuron_create_contact' (single) and 'neuron_export_contacts'.
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 term 'bulk' implies use case for multiple contacts at once, but no explicit when-to-use or when-not-to-use guidance. No comparison with alternatives like 'neuron_create_contact' for single imports.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_ingest_knowledgeIngest KnowledgeAIdempotentInspect
Ingest content into a knowledge base. Supports deduplication via externalId and optional LLM processing (summarize, extract_facts, or custom instruction).
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Title for the knowledge entry | |
| folder | No | Folder: 'general', 'skills', 'contexts', 'documents', or 'faqs' (default: general) | |
| source | No | Source type (default: mcp) | mcp |
| content | Yes | Content to ingest | |
| sourceUrl | No | Source URL for reference | |
| externalId | No | Unique external ID for deduplication (e.g. file path, URL) | |
| processing | No | Optional LLM processing before storage | |
| knowledgeBaseId | Yes | Knowledge base ID to ingest into |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover idempotentHint=true; description adds LLM processing but does not reiterate idempotency or other behaviors. No contradictions.
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?
Two sentences: one for purpose, one for key features. No wasted words, 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?
Covers purpose and key features adequately given 8 parameters (all described in schema). Lacks differentiation from related sibling, but overall 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?
Adds value beyond schema by explaining dedup via externalId and optional processing modes, helping the agent understand parameter 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?
Description clearly states it ingests content into a knowledge base and highlights deduplication and LLM processing features. It distinguishes from most siblings, though not explicitly from 'create_kb_entry'.
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 when deduplication or LLM processing is needed, but gives no explicit when-to-use or when-not-to-use guidance, nor mentions alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_install_from_poolInstall from PoolAInspect
Install a resource from the marketplace pool into the current organization. Choose 'fork' for an independent copy or 'subscribe' to receive future updates from the publisher.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the pool item to install | |
| mode | No | Installation mode: 'fork' creates an independent copy, 'subscribe' links to publisher updates (default: 'fork') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is not read-only and not destructive. Description adds mode choices but no additional behavioral details (e.g., permissions, what happens if item already installed). No contradictions.
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?
Two sentences, front-loaded with purpose, no unnecessary words. Efficiently conveys the tool's function and options.
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 install tool with two parameters and annotations. Could mention what the result of installation is (e.g., resource created in organization) or potential side effects, but not critical.
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 100% description coverage. Description adds explanation for the 'mode' parameter beyond the enum values, clarifying the difference between fork and subscribe. The 'id' parameter is adequately described in 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 verb 'install', resource 'resource from marketplace pool', and target 'current organization'. Differentiates from sibling tools like browse and publish tools. Also specifies two installation modes.
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 choosing between 'fork' and 'subscribe' modes, but does not explicitly state when to use this tool over alternatives like browsing or listing installed items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_invite_memberInvite Organization MemberAInspect
Send an invitation to a new member to join the organization. The invitee receives an email with a link to accept.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Full name of the person being invited | |
| role | No | Role to assign to the member (e.g., 'admin', 'agent', 'viewer') | |
| Yes | Email address of the person to invite | ||
| orgId | Yes | Unique identifier (UUID) of the organization | |
| canViewConversations | No | Whether the invited member can view conversations (default: true) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the important behavioral detail that an email with an acceptance link is sent, which supplements the annotations. However, it does not disclose potential side effects like creating a pending record or required 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?
Two concise, front-loaded sentences efficiently convey the tool's purpose and outcome with no unnecessary 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?
While the tool's core purpose is clear, it omits expected context such as return value or success indicator, and does not mention administrative prerequisites, leaving some completeness 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 input schema provides 100% description coverage for all parameters, so the description adds no further semantic value beyond what the schema already offers.
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 ('send an invitation'), the target ('new member'), and the context ('to join the organization'), distinguishing it from related tools like update_member or remove_member.
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 neuron_update_member for existing members or neuron_create_contact for non-organization contexts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_join_campaignJoin CampaignAInspect
Join a marketplace campaign as a participant to earn rewards by sending messages through your WhatsApp channel.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the campaign to join | |
| channelId | Yes | Unique identifier (UUID) of your WhatsApp channel to send messages from |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate mutability and non-destructiveness. Description adds that joining earns rewards, but lacks details on reversibility, prerequisites, or side effects beyond the action. Acceptable given 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?
Single sentence with no redundancy. Front-loads action and purpose. 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?
Simple tool with two clear params and annotations. Could benefit from a note on idempotency or success criteria, but overall 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 covers both parameters fully (100%). Description does not add extra meaning beyond connecting channelId to WhatsApp channel. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'join', resource 'marketplace campaign', and purpose 'earn rewards by sending messages through your WhatsApp channel'. Distinguishes from sibling tools like neuron_create_campaign or neuron_list_campaigns.
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 when user wants to participate in a campaign with a WhatsApp channel, but no explicit when-to-use, when-not-to-use, or alternatives. Adequate but vague.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_ad_requestsList Ad RequestsARead-onlyIdempotentInspect
Retrieve all ad requests for the current organization with optional status filtering and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of items per page (default: 20) | |
| status | No | Filter by request status: 'draft', 'pending_review', 'approved', 'active', 'paused', 'completed', or 'rejected' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, destructiveHint) already declare safety. The description adds behavioral context about scope (current organization) and features (filtering, pagination), which are beyond what annotations provide. No contradictions.
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?
A single sentence that covers purpose, scope, and key parameters without any unnecessary words. It is front-loaded and every part contributes.
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 is adequate for a list tool with optional filtering and pagination, good annotations, and no output schema. It does not mention response format or ordering, but these are often standard. Slightly more detail on return structure 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?
Schema coverage is 100%, with clear parameter descriptions for page, limit, and status. The description adds no additional semantic value beyond implying filter and pagination capabilities, meeting 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 uses a specific verb ('Retrieve') and resource ('ad requests'), clearly scoped to the current organization, with mention of optional status filtering and pagination. This distinguishes it from related tools like 'create_ad_request' or 'get_ad_request_analytics'.
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 basic functionality but provides no guidance on when to choose this tool over siblings, nor when not to use it. Alternatives like filtering-specific tools are not mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_api_keysList API KeysARead-onlyIdempotentInspect
Retrieve all API keys associated with a specific bot, including their names, creation dates, expiration status, and revocation status.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot whose API keys to retrieve |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds value by detailing what information is returned, which is beyond the annotations' scope. No contradictions.
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 that is clear, efficient, and front-loaded with essential information. No extraneous 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?
For a listing tool with a simple schema and comprehensive annotations, the description is complete. It covers the purpose, scope, and returned fields, even without an output schema. No other context 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 single parameter botId is fully described in the input schema ('Unique identifier (UUID) of the bot whose API keys to retrieve'). The description confirms it's for a 'specific bot' but adds no additional meaning beyond the schema. Baseline 3 applies due to high 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 verb 'Retrieve', the resource 'API keys', and the scope 'associated with a specific bot'. It also lists the fields returned (names, creation dates, expiration status, revocation status), distinguishing it from sibling tools like create or revoke API keys.
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 fetch keys for a bot, but it does not provide guidance on when not to use it or mention alternatives (e.g., creating or revoking keys). The context is clear but lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_audit_logsList Audit LogsARead-onlyIdempotentInspect
Retrieve audit logs for the organization, showing a chronological record of actions performed by members. Supports filtering by action type and resource.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of log entries per page (default: 20) | |
| action | No | Filter by action type (e.g., 'CREATE', 'UPDATE', 'DELETE') | |
| resourceType | No | Filter by resource type (e.g., 'USER', 'ORGANIZATION', 'BOT', 'CAMPAIGN') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is clear. The description adds that it returns chronological records with filtering, which provides some additional behavioral context but is not substantial beyond 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?
Two clear sentences with no fluff. The essential features are front-loaded: retrieval of audit logs, chronological record, and filtering. Every sentence 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 is adequate for a simple listing tool with annotations covering safety. It mentions the core purpose and filtering capability. While it does not mention pagination, the schema covers that, so it is not a gap. It is complete enough for the intended 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 100%, so the schema already documents all parameters. The description only summarizes filtering by action type and resource, adding no new semantic meaning beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves audit logs, a chronological record of actions, with filtering by action type and resource. This is specific and distinguishes it from other list tools among many 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?
No guidance is provided on when to use this tool versus alternatives or when not to use it. Given the large number of sibling tools, explicit usage context would be beneficial.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_blog_postsList Blog PostsARead-onlyIdempotentInspect
Retrieve a paginated list of blog posts with optional filtering by status, author type, author ID, or tag.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter posts by tag slug (e.g., 'announcements') | |
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of results per page (default: 20) | |
| status | No | Filter posts by publication status | |
| authorId | No | Filter posts by author identifier (UUID) | |
| authorType | No | Filter posts by author type |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds 'paginated' and 'optional filtering', which are useful but not extensive. It does not cover potential behaviors like sorting order, rate limits, or empty results, so the added value 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 description is a single, front-loaded sentence of 14 words. It directly states the action and key features with no wasted words. Every word 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 main purpose, pagination, and filtering. Without an output schema, it could mention the expected return structure, but for a typical list tool, the description is sufficiently complete. The parameters are well-documented in the schema, and the annotations cover safety. Minor gaps like sorting are acceptable.
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 6 parameters have descriptions in the schema, covering 100% of parameter semantics. The description only lists the filter options briefly, without adding new meaning beyond the schema. Thus, it meets the baseline of 3 for high 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 retrieves a paginated list of blog posts, which distinguishes it from single-post retrieval (neuron_get_blog_post) and creation (neuron_create_blog_post). The verb 'retrieve' and resource 'list of blog posts' 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 mentions optional filters, which implies when to use them (e.g., to narrow results), but does not explicitly state when this tool should be used over alternatives or when not to use it. No exclusions or alternatives are mentioned, so the guidance is 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.
neuron_list_bot_channelsList Bot ChannelsARead-onlyIdempotentInspect
Retrieve all WhatsApp channels connected to a specific bot, including primary and secondary connections.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering safety. The description adds that channels include primary and secondary connections, but does not disclose other behaviors like pagination, permissions, or rate limits. It adds some value beyond 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?
A single, well-structured sentence that efficiently conveys the tool's purpose and scope. No redundant 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 retrieval tool with one parameter and strong annotations, the description is adequate. It explains what is retrieved and the specific context (bot-linked WhatsApp channels). However, without an output schema, a bit more detail on the response could be 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?
Schema coverage is 100% with botId described as 'Unique identifier (UUID) of the bot'. The description does not add further parameter details or examples. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves WhatsApp channels tied to a specific bot, including primary and secondary connections. This distinguishes it from sibling tools like neuron_list_channels (general channels) and neuron_add_bot_channel (adding channels).
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 implicitly indicates this tool is for retrieving bot-specific WhatsApp channels, but lacks explicit guidance on when to use versus alternatives or when not to use. The context is clear enough for a straightforward retrieval operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_bot_knowledge_basesList Bot Knowledge BasesARead-onlyIdempotentInspect
Retrieve all knowledge bases attached to a specific bot, including their priorities and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds value by specifying that the output includes 'priorities and metadata', which is beyond what annotations provide. No contradictions.
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?
Single sentence, no wasted words. Efficiently conveys the core function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only list operation with one parameter and comprehensive annotations, the description sufficiently covers purpose, return content, and usage context. No output schema needed due to clear 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 coverage is 100% with a clear description for the single 'id' parameter. The description does not add additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Retrieve all knowledge bases attached to a specific bot', specifying the verb ('retrieve'), resource ('knowledge bases attached to a bot'), and scope ('all'). This distinguishes it from sibling tools like neuron_list_knowledge_bases, which lists all system-wide knowledge bases.
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?
Description implies usage when needing KBs for a specific bot but does not explicitly state when to use vs alternatives (e.g., neuron_list_knowledge_bases for all KBs). No direct guidance on exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_botsList BotsARead-onlyIdempotentInspect
Retrieve all bots accessible to the current user, including their configurations and status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare it as read-only and idempotent. The description adds value by specifying that it returns 'configurations and status', aligning with annotations. No contradictions.
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?
Single sentence, front-loaded with the core purpose. No unnecessary 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 no parameters and no output schema, the description covers the essential: what it retrieves (all bots with configs and status). Sufficient for this simple listing 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?
With zero parameters and 100% schema coverage, the description doesn't need to add parameter details. It mentions scope ('accessible to current user'), which is helpful.
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 'retrieve', the resource 'all bots', and the scope 'accessible to the current user'. It distinguishes from siblings like 'neuron_get_bot' by implying a list 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 does not explicitly specify when to use this tool vs. alternatives like 'neuron_get_bot' for a single bot. It implicitly suggests it's for listing all bots, but lacks exclusions or context for better decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_broadcastsList BroadcastsARead-onlyIdempotentInspect
Retrieve a paginated list of all broadcasts with optional filtering by status such as draft, sent, or scheduled.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of broadcasts per page (default: 20) | |
| status | No | Filter by broadcast status (e.g., 'draft', 'sent', 'scheduled') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. Description adds pagination detail but does not disclose additional behavioral traits like authorization requirements, rate limits, or response format. Given annotations cover safety, a score of 3 is appropriate.
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?
Single sentence that is front-loaded and efficient. Every word contributes to the purpose. 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?
No output schema is present, so description should ideally cover return format. It implies a list but does not describe fields or structure. Pagination defaults are in schema, but description could be more complete. Adequate but not fully 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 coverage is 100%, so baseline is 3. Description adds example statuses but no additional meaning beyond schema for page and limit. Minimal added 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?
Description clearly states the verb 'Retrieve', the resource 'broadcasts', and key features: pagination and optional filtering by status. This distinguishes it from siblings like neuron_get_broadcast (single) and other 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?
Description implies usage for retrieving a list of broadcasts with filtering, but does not explicitly state when to use it over alternatives or exclude other tools. No usage context or when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_builtin_toolsList Built-in ToolsBRead-onlyIdempotentInspect
Retrieve all available built-in tools with their enabled/disabled status for a specific bot. Built-in tools include WhatsApp actions (send messages, delete messages, post status), utility functions (web search, QR codes, weather), scheduling, knowledge base search, and more.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to list built-in tools for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive, so the description's behavioral transparency burden is low. The description adds value by specifying the output includes enabled/disabled status and enumerating example tools, but it omits details like pagination or result count. It does not contradict 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 concise, with a single clear sentence followed by an illustrative list of examples. The structure is front-loaded with the core purpose. However, the list of examples is somewhat verbose and could be condensed 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 the tool's simplicity (one parameter, no output schema, rich annotations), the description provides adequate context: it specifies the input (botId), the output (list with status), and examples of content. It does not detail the exact output structure, but for a list tool, the hints are 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?
The input schema has 100% description coverage (botId is fully described as a UUID). The description does not add any semantic information beyond what is already in the schema, simply restating 'for a specific bot'. With full schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose: retrieving built-in tools with their status for a specific bot. It provides a list of example tool categories, which helps define the scope. However, it does not explicitly distinguish itself from sibling list tools like 'list_tools' or 'list_bots', relying on the 'built-in' qualifier to hint at 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 does not provide guidance on when to use this tool versus alternatives. It neither mentions prerequisites nor contrasts with sibling tools (e.g., 'list_tools' might include custom tools). The agent is left to infer usage from the tool name and description, which is insufficient for a complex toolset.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_campaignsList CampaignsARead-onlyIdempotentInspect
Retrieve all campaigns for the current organization with optional status filtering and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of campaigns per page (default: 20) | |
| status | No | Filter by campaign status: 'draft', 'active', 'paused', 'completed', 'stopped', or 'rejected' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the description does not need to repeat safety traits. The description adds the organizational scope and optional filtering, which are useful but not deep behavioral disclosures. It does not mention any side effects or additional behaviors beyond what annotations indicate.
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 that efficiently conveys the core purpose, scope, and key features. No redundant or extraneous information. It is well-structured 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?
The tool has no output schema, so the description could ideally hint at the return structure (e.g., 'returns a list of campaign objects'). However, for a simple list operation with good annotations, the description is mostly complete. It covers the input parameters and behavior adequately.
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 covers all three parameters with descriptions (page, limit, status). The description briefly resummarizes 'optional status filtering and pagination' but adds no details beyond the schema. Given 100% schema coverage, the baseline is 3; the description does not significantly augment parameter meaning.
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 'Retrieve', the resource 'campaigns', and the scope 'for the current organization'. It mentions optional status filtering and pagination, which are key differentiators from sibling tools like neuron_get_campaign (single) and neuron_create_campaign (create). The purpose 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 provides clear context on what the tool does (list campaigns) and its optional parameters (status filtering, pagination). However, it does not explicitly contrast with alternatives like neuron_get_campaign for a single campaign or other list tools. The name and context imply the usage, but explicit guidance is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_channel_groupsList Channel GroupsARead-onlyIdempotentInspect
Retrieve all WhatsApp groups that the channel is participating in, including group metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and destructiveHint, covering safety. The description adds that it retrieves groups with metadata, but no additional behavioral traits beyond what annotations convey. With annotations present, the description contributes minimal new 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?
Single sentence with no superfluous information. Directly states the verb, resource, and scope. Efficient 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?
Despite no output schema, the description mentions 'including group metadata,' giving some expectation of returned data. However, it lacks details on return format (array?) or pagination. Still, for a simple list operation, 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 100%; the schema already describes the 'id' parameter. The description does not add further meaning (e.g., format or validation rules). Baseline 3 applies as schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves WhatsApp groups a channel participates in, including metadata. It distinguishes this from other list tools by specifying the resource (channel groups) and scope (channel participation).
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 usage for listing channel groups, it lacks explicit guidance on when to use this tool versus alternatives (e.g., list_channels lists channels, not groups). No prerequisites or context for when not to use are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_channelsList ChannelsARead-onlyIdempotentInspect
Retrieve all WhatsApp channels configured in the current organization, including their type and connection status.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds that it returns type and connection status, but does not disclose behavioral traits like no filtering capability (no parameters) or pagination behavior. Adequate but not enhanced beyond 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?
Single sentence, front-loaded with key purpose, no redundant words. Efficient and 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?
No output schema; description mentions two returned fields (type, connection status) but not others like channel ID or name. For a simple list tool, this is likely sufficient but could be more explicit about all returned fields.
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?
No parameters; schema coverage is 100%. Description is not required to add parameter info. Baseline for zero parameters is 4.
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 uses specific verb 'Retrieve', resource 'WhatsApp channels', and scope 'current organization'. Clearly distinguishes from sibling tools like get_channel (single) and list_channel_groups (groups). Includes returned fields (type, connection 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?
Implies use for retrieving all channels, but no explicit guidance on when to use versus alternatives (e.g., get_channel for a single channel, list_channel_groups for groups). Missing when-not-to-use or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_contact_listsList Contact ListsARead-onlyIdempotentInspect
Retrieve all contact lists for the current organization with optional filtering by search term, type, and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| type | No | Filter by list type: 'static', 'dynamic', or 'merged' | |
| limit | No | Number of items per page (default: 20) | |
| search | No | Search term to filter lists by name or slug |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and idempotentHint=true; description adds context about organization scope and filtering, with no contradictions.
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?
Single sentence with front-loaded verb 'Retrieve', no redundant information, efficient and 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?
Description covers basic retrieval and filtering; lacks mention of return format but no output schema exists, so adequate for a list tool with 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 coverage is 100% and description lists parameter types (search, type, pagination) but adds no new meaning beyond schema descriptions; baseline score 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?
Description clearly states the tool retrieves all contact lists for the current organization with optional filtering, distinguishing it from sibling tools like neuron_get_contact_list and neuron_create_contact_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?
Description indicates usage for listing contact lists with optional filters, but doesn't explicitly mention when not to use or compare to alternatives like neuron_find_contact_lists_for_contact.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_contactsList ContactsARead-onlyIdempotentInspect
Retrieve all contacts for the current organization with optional filtering by search term, tag, and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Tag name to filter contacts by category | |
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of contacts per page (default: 20) | |
| search | No | Search term to filter contacts by name, phone number, or email address |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, non-destructive behavior. Description adds that filtering is optional and pagination is supported, but no further behavioral context (e.g., limits, ordering). Aligns 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?
Single, well-structured sentence that front-loads the main action and includes key features. No unnecessary 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?
For a simple list tool with full schema coverage and safety annotations, the description is sufficient. Could mention pagination details, but not critical.
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 100%, so baseline is 3. Description briefly mentions parameters but does not add significant meaning beyond the schema's 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?
Description clearly states the action (retrieve) and resource (contacts) with scope (current organization) and optional filters. Distinguishes from sibling search tools by focusing on retrieving all contacts.
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 for usage (optional filtering) but does not explicitly differentiate from sibling tools like neuron_search_contacts or neuron_semantic_search_contacts. Lacks when-to-use or when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_conversationsList ConversationsARead-onlyIdempotentInspect
Retrieve a paginated list of conversations for a specific bot, with optional filtering by status.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot whose conversations to list | |
| limit | No | Maximum number of conversations to return per page | |
| cursor | No | Opaque pagination cursor from a previous response for retrieving the next page | |
| status | No | Filter by conversation status (e.g., 'active', 'closed') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds pagination context, which is beyond annotations. No additional traits like rate limits or auth needs disclosed.
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?
Single sentence, 14 words, front-loaded with action. No unnecessary 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?
No output schema, but description covers purpose, pagination, and filtering. Could mention that the list contains conversation objects, but overall adequate for a simple list 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 100%, with each parameter described. Description mentions 'optional filtering by status' but adds no new meaning beyond 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 clearly states action ('Retrieve'), resource ('conversations for a specific bot'), and features ('paginated', 'optional filtering by status'). Distinguishes from siblings like neuron_get_conversation.
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 vs alternatives such as neuron_get_conversation or neuron_bot_api_list_conversations. Usage is implied by description but not differentiated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_installedList Installed ItemsARead-onlyIdempotentInspect
List all items the current organization has installed from the marketplace pool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. Description does not add any behavioral context beyond what annotations provide, which is adequate but not extra.
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?
Single sentence, concise and front-loaded with the core purpose, 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 zero parameters, no output schema, and clear annotations, the description is complete enough for an agent to understand what the tool does and its safe nature.
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?
Tool has zero parameters, so baseline is 4. Description correctly does not mention any 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?
Description clearly states it lists items installed from the marketplace pool for the current organization. The verb 'list' matches the tool name, and it distinguishes from related sibling tools like neuron_browse_pool or neuron_list_published.
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. It does not provide context on when it is appropriate or when to use other listing tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_invitationsList InvitationsARead-onlyIdempotentInspect
Retrieve a list of all pending invitations for the organization that have not yet been accepted or revoked.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, which align with the description. The description adds that only pending invitations are listed, enhancing transparency beyond 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 a single, concise sentence of 15 words with no extraneous information. It is front-loaded and clearly communicates the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with one parameter and annotations, the description sufficiently explains the purpose and filtering criteria. It does not describe return values, but no output schema exists; the description is 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?
The input schema has 100% coverage with one parameter 'orgId' described as a UUID. The description does not add extra meaning to the parameter beyond the schema, earning the baseline score for high 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 specifies the verb 'retrieve', the resource 'pending invitations', and the scope 'for the organization'. It distinguishes from sibling tools like 'invite_member' and 'revoke_invitation'.
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 that it returns invitations that have not been accepted or revoked, providing clear context for when to use it. It does not explicitly exclude alternatives or provide when-not-to-use guidance, but the purpose is clear among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_kb_botsList Knowledge Base BotsARead-onlyIdempotentInspect
Retrieve all bots that are connected to or using a specific knowledge base.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false, covering safety. The description adds no further behavioral details (e.g., pagination, return format, or side effects). Without annotations, this would be lower, but with them present, the description is adequate but not enhancing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no unnecessary information. It is front-loaded with the action and key detail, making it efficient for an AI agent 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?
Despite annotations covering safety, the description lacks information about the return format (e.g., what fields are included for each bot). For a list tool, this omission could lead to uncertainty. However, given the tool's simplicity and existence of sibling tools that may imply return structure, a score of 3 is fair.
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 single parameter 'id' is described in the schema as 'Unique identifier of the knowledge base', and schema coverage is 100%. The description adds no extra meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies the action 'Retrieve', the resource 'bots', and the context 'connected to or using a specific knowledge base'. It clearly distinguishes from sibling tools like 'neuron_list_bots' (lists all bots) and 'neuron_list_bot_knowledge_bases' (lists KBs for a bot), 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?
While the purpose is clear, the description does not provide explicit guidance on when to use this tool versus alternatives (e.g., using 'neuron_list_bots' and filtering). Usage is implied but not stated, earning a score of 3.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_kb_entriesList Knowledge Base EntriesBRead-onlyIdempotentInspect
Retrieve entries from a knowledge base with optional filtering and pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base | |
| page | No | Page number for pagination (starts at 1) | |
| limit | No | Maximum number of entries to return per page | |
| folder | No | Filter entries by folder ('general', 'skills', 'contexts', 'documents', 'faqs') | |
| source | No | Filter entries by source type ('manual', 'document', 'url') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, which cover safety. The description adds that it supports pagination and filtering, which is useful context but does not go beyond what the schema implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that captures the core functionality without any unnecessary 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 schema covers all parameters and annotations cover safety, the description is adequate. However, it does not mention return format or pagination defaults, which would be helpful for a list operation with no 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 schema covers 100% of parameters with descriptions. The description's mention of 'optional filtering and pagination' summarizes but adds no new 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 action 'retrieve entries' and the resource 'knowledge base', and mentions optional filtering and pagination. However, it does not explicitly distinguish from sibling list tools like neuron_list_knowledge_bases or neuron_search_knowledge.
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 compared to alternatives (e.g., search_knowledge for full-text search). It does not mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_knowledge_basesList Knowledge BasesARead-onlyIdempotentInspect
Retrieve all knowledge bases accessible to the current user.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds the scope ('accessible to the current user') but does not disclose additional behavioral traits beyond what annotations provide.
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?
Single sentence, clearly structured, 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 tool's simplicity (no parameters, clear annotations, no output schema), the description provides sufficient context: it returns all knowledge bases accessible to the user. No additional details are needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 0 parameters with 100% coverage. Description adds no parameter info, but none is needed. Baseline for 0 parameters is 4.
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 uses specific verb 'retrieve' and resource 'knowledge bases', clearly scoped to 'accessible to the current user'. It distinguishes from sibling tools like 'neuron_get_knowledge_base' (single) and 'neuron_list_kb_bots' (bot-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?
Description clearly indicates when to use: to list all knowledge bases for the current user. It does not explicitly state when not to use or mention alternatives, but the context is sufficient for a simple list tool with no parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_membersList Organization MembersARead-onlyIdempotentInspect
Retrieve a list of all members in the organization, including their roles and permissions.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey readOnlyHint, idempotentHint, and destructiveHint. The description adds that the tool returns roles and permissions, which is helpful but minimal. No contradictions 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?
A single sentence of 14 words that is front-loaded with purpose. 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?
Despite no output schema, the description indicates return of roles and permissions, which is sufficient for a simple list tool. Lacks mention of pagination or ordering, but overall 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 coverage is 100% (one required param orgId with description). The description does not add additional meaning beyond what the schema provides, so baseline score 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 specifies a clear verb ('Retrieve') and resource ('list of all members in the organization') and mentions included data (roles and permissions). While it does not explicitly distinguish from sibling list tools like neuron_list_contacts or neuron_get_organization, the context of organization members 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 implies usage for viewing organization members but provides no explicit guidance on when to use versus alternatives (e.g., neuron_invite_member, neuron_update_member) or any prerequisites. The context is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_newslettersList NewslettersARead-onlyIdempotentInspect
Retrieve a paginated list of all WhatsApp Channel newsletters for the organization, with optional filtering by WhatsApp session channel.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of items per page (default: 20) | |
| channelId | No | Filter newsletters by WhatsApp session channel identifier (UUID) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the tool's safety and idempotency are clear. The description adds behavioral details: pagination and optional filtering by channelId, which go beyond annotations. No contradictions.
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?
A single, well-structured sentence that conveys the essential information without redundancy or unnecessary detail. Every word 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?
While the description covers pagination and filtering, it lacks details on the response structure (no output schema), ordering, or what fields newsletter objects contain. For a list tool without output schema, more information would help the agent understand the return value.
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?
Input schema has 100% parameter description coverage, providing basic meaning. The description adds value by explaining the overall behavior (paginated list) and the purpose of channelId for filtering, enhancing 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 retrieves a paginated list of WhatsApp Channel newsletters for the organization, with optional filtering. It uses a specific verb 'Retrieve' and resource 'newsletters', distinguishing it from sibling tools like neuron_get_newsletter (single) and neuron_list_channels (channels).
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 listing newsletters with pagination and filtering, but provides no explicit guidance on when to use this tool versus alternatives like neuron_get_newsletter for a single newsletter, or when not to use it. No context exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_organizationsList OrganizationsARead-onlyIdempotentInspect
Retrieve all organizations the authenticated user belongs to, including their roles in each.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, and the description adds that it returns roles, providing full behavioral transparency. No contradictions 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?
One sentence, concise and front-loaded, with no extraneous 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 tool has no parameters and no output schema, the description adequately explains what the tool returns (all organizations with roles). It is complete for its purpose.
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, and schema description coverage is 100%. The description does not need to add parameter info, but it adds value by explaining the output scope (organizations with roles).
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 'Retrieve all organizations the authenticated user belongs to, including their roles.' This is a specific verb-resource combination with scope, and it distinguishes from siblings like 'neuron_get_organization' which retrieves a single organization.
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 no explicit when-to-use or alternatives are given, the description is self-explanatory for a list tool. Given the context of many siblings, it's clear when to use this tool versus others like 'neuron_get_organization', but a small improvement could add explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_outbound_webhooksList Outbound WebhooksARead-onlyIdempotentInspect
Retrieve all outbound webhooks configured for a specific bot, including their target URLs and subscribed event types.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to list outbound webhooks for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which cover safety and idempotency. The description adds that the tool returns target URLs and subscribed event types, which is useful but does not disclose potential pagination, ordering, or limits. The annotation coverage reduces the burden on the 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?
A single sentence that front-loads the essential information: what, for whom, and what is included. 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 no output schema, the description appropriately clarifies the return value (list of webhooks with URLs and event types). It lacks mention of potential pagination or limits, but for a simple list operation on a resource identified by botId, this is mostly 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?
The sole parameter 'botId' has 100% schema coverage with a clear description ('Unique identifier (UUID) of the bot to list outbound webhooks for'). The description simply echoes that the tool is for a specific bot, adding no new semantic meaning beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (retrieve), resource (outbound webhooks), scope (for a specific bot), and included details (URLs and event types). It distinguishes from sibling tools that create, delete, update, or get logs.
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 with a botId but does not provide explicit guidance on when to use this tool versus the sibling 'neuron_list_webhooks' or other listing tools. No when-not-to-use or alternative specifications are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_payoutsList PayoutsARead-onlyIdempotentInspect
Retrieve the payout history for the organization, including amounts, statuses, and timestamps.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of payout records per page (default: 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering the safety profile. The description adds that it includes amounts, statuses, timestamps, but does not disclose pagination behavior beyond the schema or other behavioral traits, so it 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?
Single sentence that is concise and front-loaded with the key information. Every word is relevant and 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?
Given the simple tool with two optional parameters, annotations present, and no output schema, the description is complete enough. It explains what data is returned without needing more.
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 100% with clear parameter descriptions for 'page' and 'limit'. The description does not add meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves payout history with specific details (amounts, statuses, timestamps), using the verb 'Retrieve' and resource 'payout history'. It distinguishes from sibling tools like neuron_request_payout and other 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?
No guidance on when to use this tool versus alternatives, such as other list tools or payout-related tools. The description does not provide context for selection among many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_publishedList My Published ItemsARead-onlyIdempotentInspect
List all items the current organization has published to the marketplace pool.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds no behavioral details beyond listing items; no mention of pagination, ordering, or other traits. Since annotations are present, the description adds minimal extra value.
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?
One sentence, clearly worded, no unnecessary information. Every word 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?
Tool is simple with no parameters and annotations cover behavior. Description is complete for the task, though it does not detail the returned items' structure. Still adequate given context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters in schema; schema coverage is 100%. Description does not need to add parameter info. Baseline 4 for zero parameters, and description 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 action (List), the resource (items published to marketplace pool), and the scope (current organization). It distinguishes from siblings like neuron_browse_list_pool and neuron_browse_pool.
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 description implies it is for listing the organization's own published items, but does not mention when not to use it or point to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_reflectionsList ReflectionsARead-onlyIdempotentInspect
Retrieve pending reflections that the bot has generated from conversations, awaiting human review. Optionally filter by approval status.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to list reflections for | |
| status | No | Filter reflections by approval status (default: all statuses) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive. Description adds context about the nature of reflections (generated from conversations, awaiting review) but does not disclose additional behavioral traits like pagination. Adds value beyond 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?
Two concise sentences with no extraneous information. Every sentence contributes to understanding the tool's purpose and usage.
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 rich annotations and full schema coverage, the description is largely complete. It explains the context of reflections (awaiting human review) but does not detail response format or pagination. Adequate for a simple list 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 coverage is 100%, so baseline is 3. Description mentions 'Optionally filter by approval status' which aligns with the status parameter. However, it does not add significant meaning beyond what the schema already provides. The purpose of filtering is implied.
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 clearly states 'Retrieve pending reflections' with specific verb and resource. It distinguishes from sibling tools like neuron_approve_reflection and neuron_reject_reflection by focusing on retrieval of reflections awaiting review.
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: reflections are generated from conversations and await human review. While it doesn't explicitly state when not to use or name alternatives, it implies usage for viewing pending reflections. Lacks exclusions but sufficient for most cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_toolsList ToolsARead-onlyIdempotentInspect
Retrieve all custom API tool integrations configured for a specific bot, including their endpoints and configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to list tools for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent, and non-destructive behavior. Description adds that it returns 'endpoints and configuration', but does not detail response format, pagination, or error conditions. 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?
Single sentence, no redundant information. Front-loaded with verb and resource, efficient and 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 no output schema, the description hints at response content (endpoints and configuration). Lacks details on pagination or response structure but sufficient for a simple parameter tool with rich 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 provides 100% coverage for botId with clear description. The tool description does not add extra meaning beyond what the schema already conveys, so baseline score 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?
Description clearly states the verb 'Retrieve' and the resource 'custom API tool integrations' for a specific bot. It distinguishes from sibling list tools, which focus on other entities like channels or bots.
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, no prerequisites or exclusions. The description provides no context for tool selection among the many list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_webhooksList WebhooksARead-onlyIdempotentInspect
Retrieve all inbound webhooks configured for a specific bot, including their status and configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to list webhooks for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds that it retrieves 'status and configuration', providing context beyond annotations. It does not mention limitations like pagination, but it's sufficient for a simple 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?
A single sentence that is direct and to the point. No extraneous words 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?
Given the simple structure (1 param, no output schema) and rich annotations, the description is mostly complete. It covers what is retrieved and its scope, but could mention that it returns a list of webhook objects.
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 100%, and the schema already describes botId as a UUID. The description does not add additional meaning or examples for the parameter, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Retrieve' and clearly identifies the resource 'inbound webhooks' scoped to a specific bot. It distinguishes from sibling tools like create/delete/update webhooks and list_outbound_webhooks.
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 provide explicit guidance on when to use this tool versus alternatives like list_outbound_webhooks or get_webhook_logs. Usage is implied but not clearly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_list_whatsapp_contactsList WhatsApp ContactsARead-onlyIdempotentInspect
Retrieve contacts from the WhatsApp account connected to this channel, with optional search filtering.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Search query to filter contacts by name or phone number | |
| id | Yes | Unique identifier (UUID) of the channel |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, matching the read-only nature implied by 'retrieve'. The description adds no additional behavioral context beyond what annotations provide, so it's adequate but not enriched.
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?
Single sentence, front-loaded with action and resource. No unnecessary words, every part contributes to 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 list tool with annotations covering safety, the description is mostly complete. It mentions the WhatsApp account connection and optional filtering. However, it could briefly note response format or pagination, but not critical given tool 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?
Schema covers both parameters completely (100% coverage). Description mentions 'optional search filtering' aligning with the 'q' parameter but adds no extra meaning beyond schema descriptions. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves WhatsApp contacts for a specific channel, with optional search filtering. It distinguishes from generic list_contacts and other contact tools by specifying WhatsApp and channel context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when/when-not guidance or alternatives mentioned. The optional filtering is noted, but there's no contrast with related tools like search_contacts or semantic_search_contacts. Usage is implied but not clearly scoped.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_loginLogin to NeuronAIdempotentInspect
Authenticate with Neuron. Three modes:
No args: Opens a browser URL for secure authorization (recommended — no credentials shared with AI)
token: Paste an MCP token from the Neuron dashboard
email+password: Legacy login (credentials visible to AI)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true and destructiveHint=false. Description adds behavioral details like browser URL flow and credential visibility, but does not explain session management or consequences of repeated calls. More context would improve 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?
One-sentence summary followed by concise bullet list. All information is front-loaded and no unnecessary words. Excellent structure for agent consumption.
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?
Without output schema, description covers authentication modes sufficiently. Could mention that login establishes a session enabling other tools, but current content is adequate for 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?
Input schema has 0 parameters with 100% coverage, but description describes three modes implying parameters or selection mechanism. No clarification on how agent should indicate mode, leading to ambiguity. Baseline 3 is reduced due to this mismatch.
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?
Title 'Login to Neuron' and description clearly state authentication purpose. Three modes (no args, token, email+password) are distinct and specific, differentiating from sibling tools like neuron_register and neuron_logout.
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?
Description explicitly advises using no-args mode as recommended, token mode for MCP token, and email+password only as legacy. It also warns about credential visibility, helping agents choose appropriately. Lacks explicit 'when not to use' but still strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_logoutLogoutAIdempotentInspect
Clear the current auth token locally. Does NOT revoke server-side MCP tokens — revoke from the Neuron dashboard (Settings > MCP Tokens) for full invalidation.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description adds crucial context that the operation is local-only and does not revoke server-side tokens, which is a behavioral trait beyond what annotations convey. No contradictions 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?
Two sentences with no fluff. The first sentence states the action, the second provides important caveat. Perfectly front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and no output schema, the description fully covers what the tool does, its scope, and what it does not do. No missing elements.
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?
There are no parameters, so schema coverage is 100%. The description does not need to add parameter semantics. Baseline 4 is appropriate as it provides no additional parameter info, which is fine.
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 ('Clear the current auth token locally') and distinguishes it from sibling tools like neuron_login and neuron_refresh_token by noting that it does NOT revoke server-side tokens, pointing to the dashboard for full invalidation.
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 (for local logout) and explicitly tells when not to rely on it (for full invalidation), providing an alternative via the Neuron dashboard. However, it could more directly state 'Use this tool to log out.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_merge_contact_listsMerge Contact ListsAInspect
Merge two or more contact lists into a single unified list, deduplicating entries. Window merge creates a virtual union; materialized merge creates a static copy.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Display name for the resulting merged list | |
| slug | No | URL-friendly slug for the merged list (auto-generated if omitted) | |
| mergeType | Yes | Merge strategy: 'window' (virtual union, stays in sync) or 'materialized' (static copy at merge time) | |
| sourceListIds | Yes | UUIDs or slugs of the source lists to merge (minimum 2) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are sparse (destructiveHint=false, etc.). The description adds context like 'deduplicating entries' and 'virtual union stays in sync', but doesn't explicitly state whether source lists are modified, reversibility, or permissions needed. More transparency would improve agent 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?
Two sentences, no filler. Immediately states the action and key differentiator (merge vs virtual/static). Well-structured 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?
No output schema exists, yet the description does not describe the return format (e.g., object ID, list details). It also lacks guidance on duplicate handling logic or edge cases (e.g., conflicting fields). The description covers only the merge types, leaving agents uncertain about output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already documented. The description adds the term 'deduplicating entries', which is not in the schema, providing minor added meaning. However, it doesn't elaborate beyond what the schema offers.
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 (merge), resource (contact lists), and key outcome (deduplicating entries). It distinguishes two merge types (window vs materialized), setting it apart from siblings like create_contact_list or update_contact_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 explains the two merge modes but provides no explicit guidance on when to use this tool versus alternatives (e.g., when to merge vs create/update). It does not mention prerequisites, exclusions, or related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_my_participationsMy Campaign ParticipationsARead-onlyIdempotentInspect
Retrieve all campaigns the current organization has joined as a participant, including earnings and delivery stats.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| limit | No | Number of participations per page (default: 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the description's mention of 'retrieve' and 'including earnings and delivery stats' adds some context but does not significantly extend the behavioral disclosure beyond what annotations provide.
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 core action and result, with 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?
For a simple list tool with good annotations and complete schema coverage, the description is nearly complete. It specifies the included data (earnings and delivery stats), though it omits details like pagination behavior or default sorting. Still, it effectively conveys the tool's purpose and output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents page and limit parameters. The description adds no additional parameter information.
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 campaigns the organization has joined as participant, including earnings and delivery stats. It distinguishes from siblings like neuron_list_campaigns (all campaigns) and neuron_campaign_participants (participants of a campaign).
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 the current organization's participations but does not explicitly state when to use this tool over alternatives or when not to use it. No exclusions or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_pause_botPause BotAIdempotentInspect
Pause a bot to temporarily stop it from processing new messages. The bot retains its configuration and can be resumed later.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot to pause |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the pause is temporary, prevents new message processing, and preserves configuration for later resumption. Annotations already mark the tool as non-destructive and idempotent; the description adds context beyond annotations, such as the resumption capability and the effect on message processing.
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 sentences long with no wasted words. It front-loads the primary action and immediately clarifies the temporary nature and state retention.
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 low complexity (one parameter, no output schema), the description covers all necessary aspects: what the tool does, its non-destructive effect, and the ability to resume. No additional information is required 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?
The single parameter 'id' is described in the input schema as 'Unique identifier (UUID) of the bot to pause.' The tool description adds no additional meaning beyond the schema, so it meets the baseline for 100% 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 action (pause), the resource (bot), and the effect (temporarily stop processing new messages). It distinguishes from sibling tools like 'neuron_resume_bot' by explicitly noting that the bot retains configuration and can be resumed later.
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 (temporarily stop a bot) but does not provide explicit guidance on when to use this tool versus alternatives (e.g., 'delete_bot' or 'pause_campaign'). No explicit 'when not to use' is given, leaving some ambiguity for the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_pause_campaignPause CampaignAIdempotentInspect
Pause an active campaign to temporarily stop message delivery. Can be resumed later with the resume action.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the active campaign to pause |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds context 'temporarily' and 'resumed later', complementing annotations (idempotent, non-destructive). No contradiction; provides behavioral clarity beyond structured data.
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?
Two concise sentences, front-loaded with action, no wasted words. Perfectly sized for the tool's simplicity.
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?
Fully covers purpose, prerequisite (active campaign), effect, and reversibility. No output schema needed; description is 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 covers parameter 'id' fully with description. Description adds no additional detail beyond schema, achieving baseline for high-coverage case.
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 verb 'Pause', resource 'active campaign', and effect 'temporarily stop message delivery'. Distinguishes from sibling 'neuron_stop_campaign' by mentioning resume capability.
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 says when to use (active campaign, temporary stop) and implies when not (permanent stop via 'stop' action). References resume action, but lacks explicit alternative comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_populate_contactsPopulate ContactsBIdempotentInspect
Enrich existing contacts with additional data from connected messaging channels. Syncs profile information from linked platforms.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotent and non-destructive behavior, and the description adds that it enriches and syncs data, implying mutation without destruction. However, it does not detail potential side effects or data 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?
Two concise sentences, front-loaded with the core purpose. 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?
For a zero-param tool without output schema, the description provides basic completeness but lacks details on which messaging channels or specific data fields are enriched. Could be more informative.
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 no parameters, so schema coverage is 100%. The description adds no parameter info, which is acceptable given zero params. Baseline of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool enriches existing contacts with additional data from messaging channels and syncs profile information, distinguishing it from create, update, or import tools. However, it could be more specific about what 'additional data' includes.
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 neuron_update_contact or neuron_import_contacts. The description does not mention prerequisites or context for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_post_to_newsletterPost to NewsletterAInspect
Post a message to a WhatsApp Channel newsletter. All subscribers receive the message. Provide at least one of text or mediaUrl. This triggers delivery and cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the newsletter to post to | |
| text | No | Message text or caption to post to the newsletter | |
| mediaUrl | No | URL of the media file to attach (required for image, video, or document types) | |
| messageType | No | Type of message to send (default: 'text') | text |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (destructiveHint=false, etc.), the description adds important behavioral info: 'This triggers delivery and cannot be undone.' This warns about irreversibility, which is not captured by annotations. No contradiction with annotations because posting a message is not destructive data deletion.
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 key action and resource. Every sentence adds distinct value. It could be slightly improved by structuring the constraint more explicitly, but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description omits return value or error handling. It covers purpose, constraint, and irreversibility, but not what happens after posting (e.g., confirmation ID). For a simple mutation tool, this is minimally acceptable but leaves the agent guessing about success responses.
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 100% so baseline is 3. The description adds value by stating the mutual exclusivity requirement: 'Provide at least one of text or mediaUrl,' which is not enforced in the schema. This constraint is critical for correct usage, raising the score above 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 posts a message to a WhatsApp Channel newsletter. It identifies the specific resource (newsletter) and action (post). However, it does not explicitly distinguish from similar sibling tools like 'send_broadcast' or 'send_message', which could cause confusion in edge cases.
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 key constraint: 'Provide at least one of text or mediaUrl.' It also says 'All subscribers receive the message,' implying broadcast usage. But it lacks explicit guidance on when to use this tool versus alternatives like 'send_broadcast' (for custom lists) or 'send_message' (for one-to-one). No when-not-to-use or prerequisites mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_publish_blog_postPublish Blog PostAInspect
Publish a blog post, making it publicly visible. The post must be in 'draft' status.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the blog post to publish |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions making the post publicly visible and the draft requirement, but does not disclose other behavioral traits such as whether the action is reversible, what happens to the draft status, or if there are any side effects. Annotations provide little additional context (all false), so the description should do more.
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 sentences long, directly to the point, with no unnecessary words or repetition. It is front-loaded with the main action.
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 tool with one parameter and no output schema, the description covers the core purpose and a key precondition. However, it lacks details about the result (e.g., status change) or any error conditions, leaving some 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 input schema covers 100% of parameters, and the description adds no extra meaning beyond the schema's 'id' description. Baseline score of 3 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 tool name and description clearly state it publishes a blog post. It specifies the verb 'publish' and the resource 'blog post', and distinguishes it from create, update, delete, list, and get 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 states a precondition (post must be in draft) but does not explain when to use vs alternatives (e.g., update_blog_post for other changes) or when not to use (e.g., already published). Minimal guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_publish_to_poolPublish to PoolAInspect
Publish a bot, tool, knowledge base, or reflection to the shared marketplace pool for other organizations to discover and install.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | List of tags for improved discoverability (e.g., ['ai', 'customer-support']) | |
| title | Yes | Display title for the pool listing | |
| category | No | Category name for organizing the resource in the pool | |
| resourceId | Yes | Unique identifier (UUID) of the resource to publish | |
| description | No | Detailed description of the resource for the pool listing | |
| resourceType | Yes | Type of resource to publish to the pool |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations beyond the boolean flags, which are all false. The description does not disclose side effects, required permissions, or error states (e.g., duplicate publishing). For a write operation, more context on potential consequences or prerequisites is expected.
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, well-structured sentence that efficiently communicates the tool's purpose without any redundant or unclear 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?
The tool is relatively simple, but the description omits expected details for a publication action, such as success indications, error conditions, or any prerequisites (e.g., resource ownership). No output schema exists, so return values are entirely 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?
Schema description coverage is 100%, so the parameters are well-documented. The tool description adds no additional meaning beyond listing the resource types already present in the schema's enum. It does not clarify parameter interdependencies or format beyond 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 the verb 'publish' and explicitly lists the resource types (bot, tool, knowledge base, reflection) that can be published. It also distinguishes this from sibling tools like 'neuron_install_from_pool' and 'neuron_browse_pool' through the action of making resources available to others.
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 this tool is for publishing resources to a marketplace, but it does not explicitly contrast it with alternatives like 'neuron_update_pool_item' or provide conditions for use (e.g., when to publish vs. update). The agent is left to infer usage context without clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_pull_pool_updatePull Pool UpdateBIdempotentInspect
Pull the latest updates for a subscribed pool resource to sync with the publisher's changes. Only applies to items installed with 'subscribe' mode.
| Name | Required | Description | Default |
|---|---|---|---|
| installId | Yes | Unique identifier (UUID) of the installed resource to pull updates for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint and non-destructive hints. The description merely restates the purpose ('sync with publisher's changes') without adding behavioral details like required permissions, side effects, or concurrency considerations.
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, no wasted words. It is front-loaded with the core action.
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 simplicity (one required param, no output schema), the description adequately covers purpose and usage condition. It lacks some behavioral context but is mostly 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 single parameter 'installId' is fully described in the input schema. The description adds no additional meaning beyond what the schema already 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 pulls updates for a subscribed pool resource, using a specific verb and resource. It distinguishes from other pool tools by specifying it only applies to items installed with 'subscribe' mode, but 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?
The description provides a clear condition ('Only applies to items installed with subscribe mode'), implying when to use the tool. However, it does not explicitly state when not to use it or mention alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_refresh_contact_listRefresh Contact ListAIdempotentInspect
Trigger a refresh of a dynamic contact list. Re-evaluates criteria rules and/or AI prompt and materializes updated members.
| Name | Required | Description | Default |
|---|---|---|---|
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the dynamic list to refresh |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds meaningful behavioral context: 'Re-evaluates criteria rules and/or AI prompt and materializes updated members,' which explains what happens during refresh. It does not contradict 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?
Two sentences, no wasted words. Front-loaded with the core action ('Trigger a refresh'), followed by necessary detail. 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?
The description explains what the tool does and its effect (materializes members). No output schema exists, so it doesn't need to detail return values. It could mention whether it returns a status or data, but the description is sufficiently complete for a trigger action.
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 100% with a clear description of the 'idOrSlug' parameter. The tool description does not add additional parameter semantics beyond what the schema provides, but baseline 3 is appropriate given complete 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 uses a specific verb ('Trigger a refresh') and identifies the resource ('dynamic contact list'). It explains the action ('Re-evaluates criteria rules and/or AI prompt and materializes updated members'), which clearly distinguishes it from sibling tools like create, update, get, or delete contact 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 states when to use the tool (to refresh a dynamic list) but does not explicitly mention when not to use it or suggest alternatives (e.g., for static lists). However, the context is clear enough for an AI agent to infer appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_refresh_newsletterRefresh NewsletterAIdempotentInspect
Re-fetch metadata (name, description, subscriber count) for a WhatsApp Channel newsletter from WhatsApp to synchronize local data.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the newsletter to refresh |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds behavioral context beyond annotations: specifies it re-fetches from WhatsApp, lists metadata fields, and indicates synchronization of local data. Annotations already provide idempotentHint=true, which description complements without contradiction.
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?
Single sentence with front-loaded verb 'Re-fetch', no wasted words. Structure is optimal for quick comprehension.
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 simple tool with one parameter and no output schema, description fully covers functionality, metadata fields, and purpose. No gaps for this complexity level.
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?
Single parameter 'id' is well described in schema (UUID of newsletter). Description adds no further meaning beyond schema coverage (100%). Baseline 3 applied.
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 clearly states 'Re-fetch metadata' for a specific resource ('WhatsApp Channel newsletter') with specific fields ('name, description, subscriber count'). It distinguishes from siblings like 'neuron_get_newsletter' by emphasizing synchronization from WhatsApp.
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?
Description implies use case (refreshing metadata from WhatsApp) but lacks explicit guidance on when to use vs alternatives like 'neuron_sync_newsletters' or 'neuron_get_newsletter'. No when-not or exclusion criteria provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_refresh_tokenRefresh Access TokenAIdempotentInspect
Refresh the access token using a refresh token. Automatically sets the new access token for subsequent API calls.
| Name | Required | Description | Default |
|---|---|---|---|
| refreshToken | Yes | Refresh token obtained from the initial login response |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (idempotentHint: true, destructiveHint: false), the description reveals the behavioral side-effect of automatically setting the new token for subsequent API calls. However, it does not mention authentication requirements or if the tool is safe to call multiple times.
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: two sentences, front-loaded with the primary action. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, no output schema), the description covers the core functionality and side-effect. However, it could be improved by briefly mentioning the return value (e.g., 'Returns the new access token') since there is no 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?
Schema description coverage is 100% and the parameter description in the schema already states 'Refresh token obtained from the initial login response'. The tool description does not add additional semantic information beyond what the schema provides, so baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Refresh the access token using a refresh token') and the resource ('access token'). It adds the side-effect of automatically setting the new token for subsequent API calls. This distinguishes it from siblings like neuron_login and neuron_logout.
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 token refresh but does not explicitly state when to use this tool versus alternatives (e.g., login). No guidance on prerequisites or exclusion criteria is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_registerRegister New UserAInspect
Register a new user account with name, email, password, and organization name. Creates both the user and an initial organization.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Full name of the user | |
| Yes | Email address for the new account | ||
| orgName | Yes | Name of the organization to create for this user | |
| password | Yes | Password for the account (minimum 8 characters) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate it is not read-only and not destructive. The description adds that it creates both user and organization, which is useful behavioral context beyond the 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?
Two efficient sentences with no wasted words. The description is front-loaded 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?
Given 4 required parameters, no output schema, and annotations covering safety, the description explains the core action and side effect (creating an organization). Missing: return value or error conditions, but overall 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 coverage is 100%, and the description only lists parameter names without adding new meaning. Baseline 3 is appropriate as the schema already provides 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 uses a specific verb ('Register') and resource ('new user account') and adds that it creates both user and organization, which clearly distinguishes it from sibling tools like 'neuron_login' or 'neuron_add_to_contact_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 states what the tool does but does not provide explicit guidance on when to use it vs. alternatives (e.g., after registration, use login). The usage is implied but not explicitly recommended.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_reject_reflectionReject ReflectionAIdempotentInspect
Reject a bot-generated reflection to prevent it from being incorporated into the bot's learned behavior.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the reflection to reject |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotent and non-destructive. Description adds the specific behavioral effect (preventing incorporation) but lacks details on side effects, auth, 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?
Single short sentence, no redundant words. Front-loaded with key action and 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?
Covers purpose and effect adequately for a simple tool with one parameter and no output schema. Could briefly mention if rejection is reversible or any confirmation needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already fully describes the single 'id' parameter (UUID, required). Description adds no extra semantic meaning beyond what 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?
Description clearly states verb (reject), resource (bot-generated reflection), and effect (prevent incorporation). Distinguishes from sibling 'neuron_approve_reflection'.
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 when-to-use or when-not-to-use guidance. Implied by purpose, but does not contrast with 'neuron_approve_reflection' or mention prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_release_conversationRelease ConversationAIdempotentInspect
Release a conversation back to the bot, returning control from a human agent. The bot will resume auto-responding.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation to release |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and destructiveHint=false, indicating safe, repeatable operation. The description adds that the bot will resume auto-responding, which is useful but does not disclose potential side effects (e.g., triggers, state resets). With annotations covering safety, the description adds moderate 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?
Two sentences, no redundant words, and the key action is front-loaded. Every sentence adds value: the first states the action and effect, the second explains the consequence. Very 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?
For a tool with one required parameter, no output schema, and clear annotations, the description sufficiently covers the purpose and effect. It does not explain return values, but that is unnecessary without an output schema. Slightly incomplete for edge cases like what happens to unsaved work, but overall 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 coverage is 100% and the parameter description in the schema is clear ('Unique identifier (UUID) of the conversation to release'). The description does not add any additional meaning beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'Release a conversation back to the bot, returning control from a human agent. The bot will resume auto-responding.' It distinguishes from siblings like neuron_takeover_conversation (human takes control) and neuron_close_conversation (terminates conversation).
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 (when a human agent is done handling and wants to return control to the bot) but does not explicitly state when not to use or name alternatives. However, the action is self-explanatory, and sibling tools like 'takeover' and 'close' hint at alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_remove_bot_channelRemove Bot ChannelBDestructiveIdempotentInspect
Disconnect a WhatsApp channel from a bot. The bot will no longer respond to messages on this channel.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot | |
| channelId | Yes | Unique identifier (UUID) of the WhatsApp channel to disconnect |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true and idempotentHint=true. The description adds that the bot will no longer respond, clarifying the effect and aligning with the hints. Lacks info on permissions 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?
Two sentences, front-loaded with action and consequence. No extraneous words. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and description does not explain what success looks like or error conditions. For a destructive tool, more detail on return value or confirmation would be helpful. 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 coverage is 100% and parameters are well-described in schema. The description adds no parameter-specific details, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it disconnects a WhatsApp channel from a bot and explains the consequence (bot stops responding). It distinguishes from 'add' sibling but not from 'unassign' sibling, lacking a comparison. Still specific verb-resource-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?
No explicit guidance on when to use this tool versus alternatives like 'neuron_unassign_bot_from_channel' or when not to use it. The context is implied (when you want to stop bot responses on that channel), but no exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_remove_from_contact_listRemove from Contact ListADestructiveIdempotentInspect
Remove one or more contacts from a list by their contact IDs. Does not delete the contacts themselves.
| Name | Required | Description | Default |
|---|---|---|---|
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the contact list | |
| contactIds | Yes | Array of contact UUIDs to remove from the list |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value by clarifying that removing from a list does not delete the contacts, which goes beyond the annotations. Annotations indicate destructiveHint=true and readOnlyHint=false, but the description provides specific behavioral context about what is and isn't affected.
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?
Two sentences: the first states the action and inputs, the second clarifies an important nuance (not deleting contacts). No unnecessary words, front-loaded with key 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 tool with 2 required parameters, clear schema descriptions, and annotations, the description sufficiently covers the purpose, scope, and non-deletion aspect. No output schema needed as return value is implied. 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 100% with descriptions for both parameters: idOrSlug (identifier or slug of contact list) and contactIds (array of contact UUIDs). The description repeats 'by their contact IDs' but does not add new meaning beyond the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Remove one or more contacts from a list by their contact IDs' and distinguishes from deletion by explicitly noting 'Does not delete the contacts themselves.' This differentiates from sibling tools like neuron_delete_contact and neuron_add_to_contact_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 for when to use this tool (removing contacts from a list without deleting them) but does not explicitly state when not to use it or mention alternatives. The context is sufficient for an agent to understand the appropriate scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_remove_memberRemove Organization MemberADestructiveIdempotentInspect
Permanently remove a member from the organization. The member loses all access immediately. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization | |
| userId | Yes | Unique identifier (UUID) of the member to remove |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds key behavioral details beyond annotations: 'permanently', 'loses all access immediately', 'cannot be undone'. Aligns with destructiveHint and idempotentHint. Could mention side effects on related data like channels or groups.
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 sentences, front-loaded with the main action. No wasted words. Each sentence adds 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?
Covers the action, permanence, and immediate effect. With no output schema, it doesn't describe the return value, but for a destructive action this is acceptable. Could mention required permissions or cascading effects.
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 100% with descriptions for orgId and userId. The tool description adds no additional semantic value about how to obtain these IDs 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?
Clearly states the action (remove a member), the resource (member), and the permanent, immediate effect. Distinguishes it from other member-related tools like invite_member or update_member.
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?
Implied usage for removing members, but no explicit guidance on when to use this versus alternatives like invite_member or update_member. The description includes a warning about irreversibility, but lacks conditional usage notes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_remove_tool_secretRemove Tool SecretADestructiveIdempotentInspect
Permanently delete a stored secret from a custom tool integration. The tool will lose access to this credential.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the tool to remove the secret from | |
| key | Yes | Secret key name to remove (e.g., 'API_KEY', 'AUTH_TOKEN') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by stating the permanent nature and consequence ('The tool will lose access to this credential'). Annotations already indicate destructiveHint=true, but the description elaborates on the irreversible effect.
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 sentences long, front-loaded with the action and consequence. Every sentence provides necessary information without any 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?
Given the simplicity of the tool (delete a secret) and the comprehensive schema, the description covers the essential behavioral context (permanent delete, loss of access). No output schema is needed for this straightforward operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the parameters are fully documented in the input schema. The description does not add any additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool deletes a stored secret from a custom tool integration, with a specific verb ('Permanently delete') and resource ('secret from custom tool integration'). It distinguishes itself from the sibling 'neuron_add_tool_secret' which does the opposite.
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 remove a secret, but it does not explicitly provide when-to-use vs when-not-to-use, nor does it mention alternatives or prerequisites. The guidance is adequate but minimal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_request_pair_codeRequest Pair CodeAInspect
Request a numeric pairing code for a Baileys channel as an alternative to QR code scanning. Requires the phone number to pair with.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the Baileys channel | |
| phoneNumber | Yes | Phone number to generate the pair code for (E.164 format, e.g., '+2348012345678') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate this is not read-only and not destructive, but the description adds context that the tool is an alternative to QR and requires a phone number. It does not detail side effects like whether repeated requests invalidate previous codes or report return values, leaving some 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 extremely concise with two sentences: the first states the core purpose and distinguishes from QR scanning, the second adds a critical prerequisite. No unnecessary words, and each 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 request tool with two fully-schema-documented parameters and no output schema, the description covers the main intent and prerequisite. It could be improved by mentioning what is returned (e.g., the numeric code) or idempotency, but overall it is adequately 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?
Schema coverage is 100%, so the schema already fully documents both parameters. The description adds only that the phone number is for pairing, offering minimal additional meaning beyond the schema's descriptions (which already specify E.164 format and 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 requests a numeric pairing code for a Baileys channel, distinguishing it from QR code scanning via the explicit phrase 'as an alternative to QR code scanning'. The verb 'request' and resource 'pairing code for a Baileys channel' 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 provides clear context that the tool is used when a numeric code is desired over QR scanning, and it specifies a prerequisite: 'Requires the phone number to pair with.' However, it does not 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.
neuron_request_payoutRequest PayoutBInspect
Request a payout to transfer funds from the organization wallet to the linked bank account. A bank account must be saved first.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Amount to transfer in the smallest currency unit — kobo for NGN (e.g., 100000 = NGN 1,000) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate a non-read-only, non-destructive operation, which aligns with the description's 'transfer funds' mutation. However, the description fails to disclose important behavioral traits such as idempotency, failure modes (e.g., insufficient funds or missing bank account), or how to verify success, which are critical for agent decision-making.
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, consisting of only two sentences that directly state the purpose and a prerequisite. Every sentence adds value with no extraneous information, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the simplicity of the tool (one parameter), the description lacks completeness. It does not explain the return value, confirm how to check payout status (e.g., via 'neuron_list_payouts'), or mention side effects like balance changes. Given no output schema, the description should cover these aspects but falls short.
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 fully describes the single 'amount' parameter with clear semantics (smallest currency unit, example). The tool description adds no additional meaning beyond what the schema provides, resulting in a baseline score of 3 given high 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 action ('request a payout'), the source ('organization wallet'), and the destination ('linked bank account'), using a specific verb and resource. It distinguishes from sibling tools like 'neuron_fund_wallet' and 'neuron_list_payouts' by focusing on initiating a transfer.
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 key prerequisite ('A bank account must be saved first'), offering some guidance. However, it does not explicitly state when to use this tool versus alternatives, nor does it include exclusions or error conditions, leaving the agent with minimal context for decision-making.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_resume_botResume BotAIdempotentInspect
Resume a previously paused bot so it begins processing new messages again.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot to resume |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotentHint=true and destructiveHint=false. The description adds context that this applies to 'previously paused' bots and what resuming entails. No contradictions, but no additional behavioral details like auth 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 a single, concise sentence that conveys all necessary information without superfluous 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?
For a simple tool with one parameter and no output schema, the description is complete. It explains the purpose and effect adequately.
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 a clear description for the single parameter 'id'. The description does not add further semantic meaning beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Resume') and the resource ('previously paused bot'), and explains the effect ('begins processing new messages again'). It effectively distinguishes from sibling tools like neuron_pause_bot.
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 a bot is paused and needs to resume. While it does not explicitly state when not to use or provide alternatives, the context is clear given the pairing with neuron_pause_bot.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_resume_campaignResume CampaignAIdempotentInspect
Resume a previously paused campaign to restart message delivery.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the paused campaign to resume |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description adds behavioral context by stating it restarts message delivery, which goes beyond the annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. Every word contributes directly 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 state-changing tool with one parameter and no output schema, the description is complete. It explains what the tool does, its prerequisite (paused campaign), and the effect (restart delivery).
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 fully describes the id parameter with 100% coverage. The description adds minimal extra meaning ('previously paused campaign' context), so it meets the baseline for high 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 uses a specific verb 'Resume' and resource 'previously paused campaign', clearly distinguishing from sibling actions like pause_campaign, stop_campaign, and update_campaign. The effect 'restart message delivery' 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?
The description implies this tool is only for paused campaigns, providing clear context. It does not explicitly state when not to use it or mention alternatives, but the sibling set differentiates it effectively.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_revoke_api_keyRevoke API KeyADestructiveIdempotentInspect
Permanently revoke an API key to immediately invalidate it and prevent further programmatic access. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot that owns the API key | |
| keyId | Yes | Unique identifier (UUID) of the API key to revoke |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and idempotentHint=true. The description adds value by clarifying that the revocation is permanent, immediate, and cannot be undone, going beyond the 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 extremely concise with two sentences, front-loading the key information. Every word serves a purpose 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 destructive action with two required parameters and no output schema, the description covers all necessary context: the permanent effect, immediate invalidation, and irreversibility. No additional information is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptive parameter descriptions for botId and keyId. The description does not add further meaning to the parameters, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'revoke' and the resource 'API key', explaining that it permanently invalidates the key to prevent further programmatic access. It distinguishes from sibling tools like neuron_create_api_key and neuron_list_api_keys.
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 the action's effect, but it does not explicitly provide when or when not to use this tool, nor does it mention alternatives among siblings. Usage is clear from context but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_revoke_invitationRevoke InvitationADestructiveIdempotentInspect
Revoke a pending organization invitation so it can no longer be accepted. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization | |
| invitationId | Yes | Unique identifier (UUID) of the invitation to revoke |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the context that the action 'cannot be undone', which aligns with the destructiveHint=true annotation. It also specifies 'pending' invitations, indicating it only works on non-accepted ones. However, it does not mention error conditions (e.g., if invitation is already accepted) or permissions required. The idempotentHint=true annotation is not reinforced in the 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 description is two sentences long, with critical information front-loaded. Every word adds value without unnecessary elaboration. It is an example of concise and effective communication.
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 tool with two required parameters and no output schema, the description is largely complete. It covers purpose, irreversibility, and scope (pending invitations). Minor missing details like error cases or permission requirements could be added but are not essential.
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 100% and schema descriptions are clear for both parameters (orgId and invitationId as UUIDs). The description does not add additional meaning beyond the schema, which is acceptable given high 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 uses a specific verb 'Revoke' and clearly identifies the resource as 'pending organization invitation'. It distinguishes from sibling tools like 'invite_member' and 'list_invitations' by focusing on cancellation of an invitation before acceptance.
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 and implies when to use it (i.e., when you need to cancel a pending invitation). However, it does not explicitly compare alternatives or mention when not to use it, such as if the invitation has already been accepted (where 'remove_member' would be appropriate).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_rewrite_textRewrite TextAInspect
Rewrite or rephrase text using AI with specified tone, style, or instructions (e.g., make it more formal, translate, summarize).
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The original text to rewrite or transform | |
| instruction | No | Instructions for how to rewrite the text (e.g., 'make it more professional', 'translate to Spanish', 'summarize in 2 sentences') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false, so description carries the burden. It mentions 'using AI' (non-deterministic) and lists transformation actions. However, it does not disclose whether input text is stored or if there are 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?
One sentence with examples, no filler. Front-loaded and 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?
For a simple transform tool with no output schema, the description covers the core function and examples. Minor gap: no mention of output format or idempotency.
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 100% with clear descriptions. Tool description adds examples but no significant extra meaning beyond the schema. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool rewrites or rephrases text using AI, with specific examples of tone/style/instruction. It distinguishes from siblings like create, delete, or message 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 (rewriting text with instructions) but does not explicitly contrast alternatives like compose_message or edit_message. 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.
neuron_save_bank_accountSave Bank AccountAIdempotentInspect
Save a verified bank account as the organization's payout destination. Verify the account first using neuron_verify_bank_account.
| Name | Required | Description | Default |
|---|---|---|---|
| bankCode | Yes | Nigerian bank code (e.g., '058' for GTBank, '044' for Access Bank) | |
| bankName | Yes | Full name of the bank (e.g., 'Guaranty Trust Bank') | |
| accountName | Yes | Account holder name as returned from bank verification | |
| accountNumber | Yes | 10-digit Nigerian bank account number |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond annotations (verification prerequisite), but does not specify error behavior or confirmation on success. Annotations already declare idempotentHint=true and non-destructive, so the bar is lower.
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?
Two concise, front-loaded sentences with no extraneous information. Every word 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?
For a mutation tool with 4 parameters and no output schema, the description adequately covers purpose, prerequisite, and parameter linkage. Missing details on success response or error cases.
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 100%, but the description adds value by linking accountName to the verification step ('as returned from bank verification'), which aids parameter 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 saves a verified bank account as the organization's payout destination, using a specific verb and resource, and distinguishes it from related tools like neuron_verify_bank_account.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to verify the account first using neuron_verify_bank_account, providing a clear prerequisite and alternative tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_search_contactsSearch ContactsARead-onlyIdempotentInspect
Search contacts by a query string across name, phone number, and email fields. Returns matching contacts ranked by relevance.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query string to match against contact name, phone, or email |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, etc. Description adds that it searches specific fields and returns relevance-ranked results, adding context but not contradicting 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?
Two sentences, front-loaded with 'Search', no unnecessary words. Efficient and 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?
For a simple search tool with one required param and no output schema, description explains purpose and result well. Could mention pagination/limits, but still 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 has 100% coverage for parameter q. Description adds meaning by specifying the fields searched (name, phone, email) and ranking by relevance, going beyond 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 clearly states 'Search contacts by a query string across name, phone number, and email fields' and 'Returns matching contacts ranked by relevance.' This distinguishes it from list_contacts (full list) and semantic_search_contacts (different 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?
Implied usage for text-based search, but no explicit guidance on when to use this vs semantic_search_contacts or list_contacts. No exclusions or alternatives mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_search_knowledgeSearch KnowledgeARead-onlyIdempotentInspect
Perform semantic search across all entries and documents in a knowledge base to find relevant information.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query text to find relevant entries | |
| id | Yes | Unique identifier of the knowledge base to search | |
| limit | No | Maximum number of search results to return |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, indicating a safe, read-only operation. The description adds value by specifying 'semantic search' and 'across all entries and documents', providing behavioral context beyond the 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?
A single sentence that is purely informative, with no filler words. It is front-loaded with the verb 'Perform' and directly states the 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 tool is a standard search with three well-documented parameters. No output schema exists, but the description adequately sets expectations for a search operation. A minor gap is the lack of information about return format or pagination, but it is not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for all three parameters (q, id, limit), so the schema itself already explains parameter meanings. The description does not add any additional semantic detail beyond 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 the action (Perform semantic search), the resource (across all entries and documents in a knowledge base), and the goal (to find relevant information). It distinguishes from sibling list tools like list_kb_entries by specifying 'search' and 'semantic'.
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 finding information via semantic search but does not explicitly state when to use this tool over alternatives like list_kb_entries or search_contacts. No when-not-to-use or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_semantic_search_contactsSemantic Search ContactsARead-onlyIdempotentInspect
Search contacts using natural language AI-powered semantic search. Finds contacts based on the meaning of their notes — skills, services, schedules, preferences, etc. Returns ranked results with relevance scores and AI-generated match reasons.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results to return (default: 10, max: 20) | |
| query | Yes | Natural language search query (e.g., 'who can deliver to Lagos on Monday?') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, and non-destructive. The description adds AI-powered semantic search details, mention of ranked results with scores and AI-generated reasons—transparently explaining behavior beyond what annotations provide. No contradiction.
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?
Two sentences, no wasted words. Front-loaded with the core action ('Search contacts using natural language AI-powered semantic search') followed by specifics. Each 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?
Given the tool's moderate complexity, the description explains what it does, what it returns, and the nature of the search. No output schema, but the description covers return content. Annotations handle safety. Complete for a search 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?
Input schema has 100% description coverage: 'query' is clearly explained as natural language with example, 'limit' has default and max. The description reinforces that query is natural language but adds no new semantics. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs semantic search over contacts using natural language queries, specifies it searches notes for meaning, and lists return values (ranked results with relevance scores and match reasons). This distinguishes it from sibling 'neuron_search_contacts' which likely does exact-match search.
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 semantic, meaning-based search via examples like 'skills, services, schedules, preferences' and the query example. However, it does not explicitly contrast with alternative search tools (e.g., neuron_search_contacts), leaving some ambiguity about when to choose this over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_send_broadcastSend BroadcastAInspect
Send a broadcast message to all its recipients. The broadcast must be in draft status. This triggers message delivery and cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the broadcast to send |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations: the broadcast must be in draft status, it triggers delivery, and the action cannot be undone. Annotations are neutral with destructiveHint: false, and the description does not contradict them—it provides additional nuance about state change.
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?
Two clear, front-loaded sentences (19 words) with no wasted words. Every sentence adds critical information: action, scope, condition, and irreversibility.
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 simple input (one required UUID) and no output schema, the description covers the essential operational info: preconditions, effects, and permanence. It could mention response format or error conditions, but it is largely complete for its 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 coverage is 100%, with one parameter (id) fully described in the schema. The description does not add meaning beyond the schema, only reiterating that the broadcast must be in draft status, which is a resource precondition, not parameter-specific.
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 (Send a broadcast message), the resource (broadcast), and key conditions (must be in draft status, triggers delivery, irreversible). It distinguishes from sibling tools like neuron_create_broadcast and neuron_update_broadcast.
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 implicitly guides when to use (when you have a draft broadcast to send) but does not explicitly mention alternatives or when not to use it. Sibling tools exist for updating, deleting, or retrieving broadcasts, but no comparison is made.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_send_campaign_messageSend Campaign MessagesAInspect
Send a campaign message to selected eligible contacts via WhatsApp. Requires the campaign to be in 'active' status and contacts to be eligible.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the active campaign | |
| contactIds | Yes | Array of contact UUIDs to send the campaign message to |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate a write operation (readOnlyHint=false). The description adds behavioral context by specifying the need for the campaign to be active and contacts eligible, which is valuable beyond the annotation flags.
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?
Two short sentences, front-loaded with the verb and resource, no unnecessary words. Efficient and to the point.
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 send tool with two parameters and no output schema, the description covers the key prerequisites. It could mention what happens on failure (e.g., if contacts are ineligible) but is generally 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 coverage is 100%, so baseline is 3. The description adds meaning by linking the 'id' parameter to an active campaign and 'contactIds' to eligible contacts, which goes beyond the schema's basic 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 action 'Send a campaign message' to contacts via WhatsApp, and includes prerequisites ('campaign active' and 'contacts eligible'), distinguishing it from similar tools like send_message or send_broadcast.
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 prerequisites (active campaign, eligible contacts) but does not explicitly contrast with sibling tools such as send_broadcast or send_whatsapp. It provides context for when to use but lacks explicit when-not or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_send_messageSend MessageAInspect
Send a message to an existing conversation. Supports text, image, and document message types with optional media attachments.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation | |
| content | Yes | Message content to send | |
| mediaUrl | No | URL of media to attach (required for image/document message types) | |
| messageType | No | Type of message: 'text' (default), 'image', or 'document' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate this is a mutation (readOnlyHint=false) and not destructive (destructiveHint=false). The description adds that it supports various message types and media attachments, but does not disclose side effects like conversation state changes, notification triggers, or permission requirements. It adds some value beyond annotations but could be more 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 two sentences long, information-dense, and front-loaded with the primary action. Every sentence adds value without redundancy, making it efficient for an agent 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 simplicity and high schema coverage, the description covers essential aspects: main action, supported types, and media attachment. It does not mention prerequisites (e.g., conversation must exist) or relation to siblings, but remains adequate for a straightforward send operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the schema already describes each parameter. The description adds extra context by explaining the role of messageType and mediaUrl in supporting different message types, going beyond the 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 'send' and the resource 'message to an existing conversation'. It also specifies supported message types (text, image, document) and optional media attachments, distinguishing it from sibling tools like neuron_compose_message or neuron_bot_api_send.
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 provide guidance on when to use this tool versus alternatives such as neuron_send_broadcast, neuron_send_whatsapp, or neuron_compose_message. It lacks explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_send_whatsappSend WhatsApp MessageAInspect
Send a WhatsApp message to a phone number or group. Auto-resolves which channel to use (org default > first connected). Supports text, image, audio, video, and document types.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Recipient: phone number (e.g., '2348012345678') or group JID (e.g., '120363XXX@g.us') | |
| text | Yes | Message text content | |
| mediaUrl | No | URL of media to attach (required for non-text message types) | |
| channelId | No | Unique identifier (UUID) of a specific channel to override auto-resolution | |
| contactName | No | Display name for the recipient contact | |
| messageType | No | Message type: 'text' (default), 'image', 'audio', 'video', or 'document' |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (which are all false), the description adds behavioral details like auto-resolving channels, supporting multiple media types, and the override capability via channelId. It does not disclose potential side effects like cost or rate limits, but the information provided is useful and non-contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, front-loaded with the core action, and covers key details (auto-resolution, media types) without unnecessary words. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters and no output schema, the description covers the main use case, channel resolution, and media support. It lacks details on error handling, prerequisites (e.g., connected WhatsApp), or return values, but for a straightforward messaging tool, it is mostly 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 100%, so the schema already documents all parameters. The description adds context (e.g., 'to' can be phone or group JID, 'channelId' overrides auto-resolution) but does not significantly augment the schema's descriptions. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Send'), the resource ('WhatsApp message'), and the targets ('phone number or group'). It also mentions auto-resolution and supported media types, distinguishing it from sibling tools like neuron_send_message and neuron_bot_api_send.
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 guidance on channel auto-resolution and supported message types. However, it does not explicitly state when not to use this tool or mention alternatives among siblings, such as neuron_bot_api_send for bot-specific messaging.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_set_default_channelSet Default WhatsApp ChannelAIdempotentInspect
Set or clear the default WhatsApp channel for the organization. The default channel is used by neuron_send_whatsapp for auto-resolving which channel to send through.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization | |
| channelId | Yes | Identifier (UUID) of the channel to set as default, or null to clear the default |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false, so the description adds context about the impact on neuron_send_whatsapp. However, it does not detail side effects beyond that, which is acceptable given the 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 concise: two sentences that are well-structured and front-loaded with the core action, providing all necessary information without unnecessary 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 simplicity of the tool and no output schema, the description adequately explains the operation and its relationship to another tool. It is complete for the intended use, though it lacks mention of return value or confirmation.
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 100% with clear descriptions for both parameters (orgId, channelId). The description does not add new information beyond what the schema already provides, so baseline score 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 sets or clears the default WhatsApp channel for the organization and explicitly links it to neuron_send_whatsapp, making its purpose and distinction from siblings clear.
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 when to use the tool (to set/clear default channel) and references the dependent tool, but does not explicitly specify when not to use it or mention alternatives, making it slightly lacking.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_start_channel_sessionStart Channel SessionAIdempotentInspect
Start a Baileys (direct WhatsApp) session for the channel. Generates a QR code for device pairing. Only applicable to Baileys-type channels.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the Baileys channel to start |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description indicates the tool generates a QR code, implying a side effect. Annotations show idempotentHint=true, which is consistent if multiple calls produce the same QR or status. However, the description does not explain behavior if a session is already running, nor does it disclose any permissions needed. 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 two sentences, short and front-loaded with the action and purpose. Every sentence adds necessary information without repetition 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?
For a simple tool with one parameter and no output schema, the description adequately explains the purpose and constraint. However, it omits the return value (e.g., QR code data or status) and whether the operation is synchronous.
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 covers 100% of parameters with a clear description for the 'id' parameter. The tool description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool starts a Baileys (direct WhatsApp) session for a channel and generates a QR code for device pairing. It specifies the resource (channel session) and action (start), and distinguishes by noting it's only for Baileys-type channels, differentiating it from siblings like neuron_get_channel_qr or neuron_stop_channel_session.
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 restricts usage to Baileys-type channels, providing a clear condition for when to use. However, it does not mention when not to use the tool (e.g., if a session is already active) or suggest alternatives like get_channel_qr for existing sessions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_stop_campaignStop CampaignADestructiveIdempotentInspect
Permanently stop an active campaign and refund the remaining unspent budget to the organization's wallet. This action cannot be undone.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the active campaign to stop |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral traits beyond annotations: it specifies permanence ('cannot be undone') and the refund of unspent budget. It aligns with destructiveHint=true and idempotentHint=true.
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?
Two sentences with no extraneous words. Critical information (permanence, refund) is front-loaded. Perfect for quick agent parsing.
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 destructive action with one parameter and no output schema, the description covers all essential aspects: action, permanence, side effect (refund). Nothing is 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?
Schema coverage is 100% and the description does not add significant meaning beyond the parameter's schema description. The baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('stop'), the resource ('active campaign'), and the additional effect ('refund remaining budget'). It distinguishes from the sibling 'pause_campaign' by emphasizing permanence and refund.
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 (to end a campaign permanently and get a refund) and notes it cannot be undone. While it doesn't explicitly mention alternatives like 'pause_campaign', the sibling context makes the distinction clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_stop_channel_sessionStop Channel SessionAIdempotentInspect
Stop the active Baileys session for the channel and disconnect from WhatsApp. The channel can be restarted later.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the Baileys channel to stop |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds that stopping disconnects from WhatsApp and allows restart, but it does not detail side effects or authorization needs. It does not contradict annotations, but more context on what happens to the channel state would improve 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 two short sentences that front-load the core action and add a note about restartability. Every word earns its place without 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?
Given a single parameter, no output schema, and annotations that cover idempotency and non-destructiveness, the description is mostly complete. It could be improved by mentioning that only the session is stopped (not the channel deleted) but is adequate for 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?
Schema description coverage is 100% for the single parameter 'id', so the schema already provides the meaning. The description does not add extra information about the parameter beyond what is in the schema, so baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Stop' and clearly identifies the resource: 'active Baileys session for the channel'. It effectively distinguishes from siblings like neuron_start_channel_session and neuron_get_channel_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?
The description mentions that the channel can be restarted later, which implies a context of use. However, it does not explicitly state when to use this tool versus alternatives (e.g., pausing a bot) or provide any preconditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_submit_campaignSubmit Campaign for ReviewAInspect
Submit a draft campaign for admin review and approval. The campaign must be in 'draft' status.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the draft campaign to submit for review |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the outcome ('submit for admin review and approval') but does not detail the state change (e.g., campaign status becomes 'pending'), whether the operation is reversible, or if the campaign becomes locked. Annotations (non-readonly, non-idempotent, non-destructive) are already informative, and the description adds some context 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 description is two concise sentences with no unnecessary words. It front-loads the action and the prerequisite, 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?
Given the simple tool with one parameter and no output schema, the description covers the essential purpose and prerequisite. It could mention the resulting campaign status (e.g., 'pending approval') but is still adequate 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?
There is only one parameter (id) with a clear schema description. Schema coverage is 100%, so the description does not need to add extra meaning. The description does not provide additional parameter details beyond the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Submit a draft campaign for admin review and approval') and the required prerequisite ('campaign must be in 'draft' status'). It distinguishes this tool from other campaign-related siblings like create_campaign, update_campaign, pause_campaign, etc.
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 states the prerequisite (campaign must be in 'draft' status), guiding when to use. It implies usage when a draft campaign is ready for review. It does not explicitly mention when not to use or alternatives, but the prerequisite is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_submit_to_list_poolSubmit List to PoolBInspect
Submit a contact list to the shared pool marketplace for other organizations to discover and use for ad distribution.
| Name | Required | Description | Default |
|---|---|---|---|
| listId | Yes | Unique identifier (UUID) of the contact list to submit | |
| category | Yes | Audience category (e.g., 'delivery', 'tech', 'consumers', 'food') | |
| channelId | Yes | Unique identifier (UUID) of the WhatsApp channel used for sending messages | |
| description | No | Human-readable description of the audience and its characteristics | |
| demographics | No | Demographic information about the contact list audience | |
| pricePerDelivery | Yes | Price per successful message delivery in kobo (e.g., 5000 = NGN 50) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are all false (readOnlyHint=false, destructiveHint=false), so the description carries the full burden of explaining behavioral traits. It does not disclose side effects (e.g., whether submission overwrites an existing pool item), required permissions, or state dependencies (e.g., whether the list must be fresh). The one sentence is too brief 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 is a single well-structured sentence with no fluff or redundancy. It is front-loaded with the main action. However, it could include more guidance without becoming verbose, so a perfect 5 is not warranted.
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 6 parameters including a nested object, no output schema, and is a mutation, the description is insufficient. It does not explain return values, error cases, or the effect on the pool marketplace (e.g., whether it replaces an existing submission). The agent lacks critical context to use the tool reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: all 6 parameters have individual descriptions. The tool-level description adds no additional meaning beyond the schema, so it meets the baseline 3. No extra context is provided about required vs optional fields 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 action ('Submit a contact list'), the target ('shared pool marketplace'), and the purpose ('for other organizations to discover and use for ad distribution'). It is a specific verb-resource pair that distinguishes the tool from siblings like 'neuron_browse_pool' and 'neuron_publish_to_pool' by focusing on submitting a contact list to the marketplace.
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 (e.g., 'neuron_publish_to_pool'), nor does it mention prerequisites or exclusions. It only states what the tool does, leaving the agent to infer usage context from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_switch_instanceSwitch Neuron InstanceAIdempotentInspect
Switch the MCP server to target a different Neuron backend instance. Auth tokens are preserved per instance — if you've previously logged in to an instance, switching back restores your session automatically.
Call with no args to list known instances and see which is active.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Base API URL of the Neuron instance (e.g., 'https://api.client.com/api/v1'). Omit to list known instances. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true, readOnlyHint=false, destructiveHint=false. The description adds value beyond annotations by explaining that auth tokens are preserved per instance and sessions are restored upon switching. It also clarifies the listing behavior, offering useful 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 incredibly concise with two sentences. Every sentence earns its place: the first covers purpose and a key behavioral detail, the second provides no-arg usage. No wasted words, and it is front-loaded with the most important 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 tool with one optional parameter and good annotations, the description covers purpose, auth token behavior, and no-arg usage comprehensively. There is no output schema to explain, and the description is complete for the agent to use 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 coverage is 100% with a clear description of the 'url' parameter. The description reinforces the optional nature and the listing behavior when omitted, adding meaning beyond the schema. Baseline is 3, but the added context warrants a 4.
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 switches the MCP server to a different Neuron backend instance, using a specific verb and resource. It is distinct from siblings like 'neuron_switch_org' but does not explicitly differentiate, so it earns a 4.
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 usage guidance for calling with no arguments to list instances, but lacks explicit guidance on when to use this tool versus alternatives like 'neuron_switch_org'. It implies context but does not provide exclusions or alternatives, so a 3 is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_switch_orgSwitch OrganizationAIdempotentInspect
Switch to a different organization. Returns a new access token scoped to the target organization and automatically sets it.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization to switch to |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by specifying that a new access token is returned and automatically set. It does not contradict annotations (idempotentHint: true, destructiveHint: false). However, it could mention whether the previous token is invalidated or if the switch is reversible.
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?
Two sentences with no unnecessary words. The description is front-loaded with the key action and outcome, 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?
Given the low complexity, a single parameter, and no output schema, the description fully covers what the tool does and its immediate effect. It is complete for its intended purpose.
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 100%, so the description does not need to add parameter details. The schema already describes orgId adequately. The description adds no extra parameter information, consistent with the baseline for high 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: switching to a different organization, returning a new access token, and automatically setting it. This provides a specific verb-resource pair and distinguishes it from related tools like neuron_list_organizations and neuron_switch_instance.
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 (when you need to change the active organization) without explicitly stating when not to use it or mentioning alternatives. It is clear enough for a straightforward operation, but lacks explicit contrast with sibling tools like neuron_switch_instance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_sync_knowledgeSync KnowledgeAIdempotentInspect
Trigger a synchronization operation to refresh embeddings, reindex content, or update the knowledge base state.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base to synchronize |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare idempotentHint=true, destructiveHint=false. Description adds context on what syncing does (refresh embeddings, reindex, update state). No contradiction.
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?
Single sentence, efficient, front-loaded with the verb 'trigger'. No redundant 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?
No output schema. Describes purpose and parameter adequately. Could mention return value or effects, but simple tool with one required param.
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 100%, and the schema description for 'id' is clear. Tool description adds no additional parameter meaning beyond 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 specific verb 'trigger' and resource 'knowledge base', clearly distinguishing from sibling tools like create/delete/update knowledge base.
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 (when synchronization needed) but does not explicitly state when to use vs 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.
neuron_sync_newslettersSync NewslettersAIdempotentInspect
Synchronize and import WhatsApp Channels from a connected WhatsApp session into Neuron. Discovers channels created outside Neuron.
| Name | Required | Description | Default |
|---|---|---|---|
| channelId | Yes | Identifier (UUID) of the WhatsApp session channel to sync newsletters from |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotence and non-destructiveness. The description adds some context about discovering channels outside Neuron, but does not fully explain behavioral details like conflict resolution or data merging.
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 sentences, front-loading the core action. Every word serves a purpose 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 sync tool with one parameter and no output schema, the description is fairly complete. However, it lacks details on the outcome of the sync (e.g., where channels appear) which could 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?
Schema description coverage is 100% and the parameter 'channelId' is well described. The tool description adds no additional semantic value 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 a specific verb ('Synchronize and import') and resource ('WhatsApp Channels'), and distinguishes itself from sibling tools like 'neuron_refresh_newsletter' and 'neuron_list_newsletters' by focusing on discovery of channels created outside Neuron.
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 syncing channels into Neuron but does not explicitly state when to use this tool versus alternatives like 'neuron_get_channel' or 'neuron_list_channels'. No guidance on prerequisites or exclusions is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_sync_reflectionsSync ReflectionsBIdempotentInspect
Synchronize all approved reflections into the bot's active knowledge base, applying learned insights to future conversations.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to sync reflections for |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description adds minimal behavioral context, e.g., not explaining if existing knowledge base entries are overwritten or merged.
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?
A single, clear sentence that directly states the tool's function with no unnecessary 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?
While the description explains the core action, it lacks details on what happens if no reflections are approved, or the result of the sync. For a simple tool, 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 100% for botId, so the schema already documents the parameter. The description does not add any additional parameter meaning.
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 'synchronize', the resource 'approved reflections', and the target 'bot's active knowledge base', with an outcome. It distinguishes from siblings like neuron_approve_reflection and neuron_sync_knowledge.
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 neuron_sync_knowledge or neuron_approve_reflection. It does not specify prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_sync_whatsapp_contactsSync WhatsApp ContactsAIdempotentInspect
Synchronize contacts from all connected WhatsApp channels into the organization's contact database. Creates new contacts for unseen numbers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (idempotentHint=true, destructiveHint=false), the description adds that it creates contacts only for 'unseen numbers', providing useful behavioral context without contradiction.
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?
Two sentences with zero waste: the first conveys the main action and scope, the second clarifies a key behavioral detail. Front-loaded and 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?
For a simple tool with no parameters and no output schema, the description explains the source, destination, and handling of unseen numbers. It is nearly complete, though it could explicitly confirm that existing contacts are left unchanged.
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 and 100% schema description coverage, so no parameter details are needed. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'synchronize' and the resource 'contacts from all connected WhatsApp channels', making the tool's purpose distinct among siblings like neuron_import_contacts and neuron_create_contact.
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 clarifies the tool's scope (WhatsApp channels) but does not explicitly compare it to alternatives such as neuron_import_contacts or neuron_refresh_contact_list, leaving usage guidance 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.
neuron_takeover_conversationTakeover ConversationAIdempotentInspect
Transfer control of a conversation from the bot to a human agent. The bot will stop auto-responding until the conversation is released.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the conversation to take over |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations, the description discloses that the bot stops auto-responding until released, which is key behavioral context. Annotations already mark idempotentHint=true, and the description aligns with that.
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?
Two sentences with no extraneous information. Front-loaded with the primary action and immediate effect, then the consequence. Every sentence is 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?
For a simple one-param tool with no output schema, the description is largely sufficient, covering purpose and effect. Could mention prerequisites (e.g., conversation state) but not a critical 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?
With 100% schema coverage the schema already documents the 'id' parameter fully. The description does not add new semantic details beyond restating the parameter's role, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('transfer control') and resource ('conversation'), and clearly distinguishes from the sibling 'neuron_release_conversation' by specifying the agent and the bot's behavior change.
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 use when human intervention is needed but provides no explicit guidelines on when to use or avoid this tool versus alternatives like 'neuron_release_conversation'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_test_toolTest ToolARead-onlyIdempotentInspect
Execute a dry-run test of a custom API tool with sample arguments to verify the endpoint responds correctly.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the tool to test | |
| args | Yes | Sample arguments object to pass to the tool for testing |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds 'dry-run test' which aligns but does not reveal additional behavioral traits beyond the 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 a single, well-structured sentence of 18 words. Every word is necessary and 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 lack of an output schema, the description does not clarify what the tool returns (e.g., endpoint response, success status). This omission limits completeness for an agent deciding how to use the result.
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 100%, so the input schema fully documents the two parameters. The description does not add any new meaning beyond what the schema descriptions provide.
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 (execute a dry-run test), the resource (custom API tool), and the purpose (verify endpoint responds correctly). It effectively distinguishes from sibling CRUD 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 testing without side effects via 'dry-run', but does not explicitly contrast with similar tools or state when not to use it. No alternatives are mentioned, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_toggle_builtin_toolToggle Built-in ToolAIdempotentInspect
Toggle a built-in tool on or off for a specific bot. Enabled tools become available in the bot's conversations. Example tool IDs: delete_message, post_to_channel, post_status, web_search, send_direct_message, react_to_message, set_reminder, create_poll.
| Name | Required | Description | Default |
|---|---|---|---|
| botId | Yes | Unique identifier (UUID) of the bot to toggle the tool for | |
| toolId | Yes | Identifier of the built-in tool (e.g., 'delete_message', 'post_status', 'web_search') | |
| enabled | Yes | Whether to enable (true) or disable (false) the tool |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true and destructiveHint=false, covering safety. The description adds that enabled tools become available in conversations, which is helpful but not extensive. It does not address side effects hinted by openWorldHint or confirm idempotent 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?
Two sentences: first states the action and effect, second lists examples. No filler words, perfectly efficient and front-loaded with essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple toggle tool with no output schema, the description is sufficient. It explains the effect (tool becomes available) and gives examples. It does not mention return value, but that is not critical for a toggle operation. Could add a note about prerequisites (e.g., bot must exist), but the schema implies that.
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 100%, so parameters are well-defined. The description adds extra value by providing concrete examples of valid toolId values (e.g., 'delete_message', 'post_status'), making it easier for an agent to choose correct inputs. This exceeds the baseline for high 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 verb 'Toggle' and the resource 'built-in tool for a specific bot'. It also provides example tool IDs, which helps the agent understand the scope. The distinct sibling 'neuron_bulk_toggle_builtin_tools' implies this is for single toggles, aiding 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 explains the tool's function but does not explicitly state when not to use it or mention alternatives like the bulk toggle sibling. Agents must infer from sibling names. Including a note about using the bulk version for multiple tools would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_toggle_featuredToggle Featured StatusAIdempotentInspect
Toggle the featured status of a pool item. Featured items appear prominently in the marketplace. Requires admin privileges.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the pool item to feature or unfeature |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavioral context beyond annotations, such as the requirement of admin privileges and the effect on marketplace prominence. It does not contradict any annotations, and the idempotentHint is respected as toggling can be idempotent when considered as a set 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 with two sentences that front-load the essential action and then add context. No unnecessary words 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?
For a simple toggle tool with one parameter and no output schema, the description fully covers what the tool does, its effect, and a key requirement. It is complete enough for an AI agent to select and invoke 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 input schema provides 100% coverage with a clear description for the only parameter 'id'. The tool description does not add further semantic value beyond the schema, which is acceptable given the high 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 action 'Toggle the featured status of a pool item' and explains the impact ('Featured items appear prominently in the marketplace'), making the purpose highly specific and distinguishable 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 clear context for when to use this tool (to feature/unfeature a pool item) and a necessary prerequisite ('Requires admin privileges'). While it does not explicitly list alternatives, the context is sufficient given the specific nature of the toggle.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_unassign_bot_from_channelUnassign Bot from ChannelADestructiveIdempotentInspect
Remove the bot assignment from a WhatsApp channel. The channel will stop auto-responding to messages.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel to unassign the bot from |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true. The description adds key behavioral context: 'The channel will stop auto-responding to messages', which helps the agent understand the impact. No contradictions 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 extremely concise: two sentences that convey purpose and effect with no extraneous words. Front-loads the key action.
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 simplicity of the tool (one parameter, no output schema), the description is adequate. It explains the action and the immediate effect. It does not mention prerequisites like whether the channel must exist or have an assigned bot, but these can be inferred.
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?
There is one parameter 'id' with schema description already covering its purpose (UUID of channel). The tool description does not add any new meaning beyond the schema; it simply restates the effect. Thus, baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'remove' and the resource 'bot assignment from a WhatsApp channel', and specifies the consequence 'stop auto-responding to messages'. It distinguishes itself from sibling tools like neuron_assign_bot_to_channel and neuron_add_bot_channel.
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 implicitly tells when to use the tool (when unassigning a bot from a channel), and its effect is clear. However, it does not explicitly mention when not to use it or compare it to similar tools like neuron_remove_bot_channel.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_unpublish_from_poolUnpublish from PoolADestructiveIdempotentInspect
Permanently remove a published item from the marketplace pool. Organizations that installed this item will retain their copies.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the pool item to unpublish |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true, but the description adds valuable context that the removal is permanent and that installed copies are retained. This goes beyond what annotations alone provide.
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 sentences, concise, and front-loaded with the main action. Every sentence adds value without 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?
Given the tool's low complexity (one required parameter, no output schema), the description covers the main behavior and side effects (retention of installed copies). It is complete enough for an agent to understand the tool's effect.
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 100%, with the id parameter described in the schema. The description does not add extra meaning to the parameter beyond what the schema provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('permanently remove'), the resource ('published item from the marketplace pool'), and the effect. It distinguishes from sibling tools like publish_to_pool and install_from_pool by specifying the removal context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for unpublishing items, but does not explicitly state when to use this tool over alternatives like update_pool_item or install_from_pool. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_blog_postUpdate Blog PostAIdempotentInspect
Update an existing blog post's content, metadata, status, or SEO fields. Only provided fields are changed.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the blog post to update | |
| title | No | New title for the blog post | |
| status | No | New publication status for the post | |
| content | No | New body content in markdown format | |
| excerpt | No | New short summary or preview text | |
| seoTitle | No | New custom SEO title override | |
| seoKeywords | No | New list of SEO keywords | |
| coverImageUrl | No | New URL for the cover image | |
| seoDescription | No | New meta description for search engines |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds that only provided fields change, which is consistent. No additional behavioral details (e.g., authorization, rate limits) are provided, and there is 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 a concise two-sentence statement that is front-loaded with the main action and quickly conveys the partial update behavior.
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 9 parameters, 1 required, and no output schema, the description adequately covers the core behavior (partial update). Missing are details about the return value or error conditions, which are not critical but 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?
Schema coverage is 100%, so the baseline is 3. The description groups parameters into categories ('content, metadata, status, or SEO fields') but does not add new meaning beyond the 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 uses a specific verb ('Update') and resource ('existing blog post'), and lists the categories of fields that can be updated (content, metadata, status, SEO fields). It clearly distinguishes from sibling tools like create_blog_post and delete_blog_post.
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 'Only provided fields are changed,' implying a partial update pattern. However, it does not explicitly discuss when to use this tool versus creating or deleting a blog post, nor does it mention any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_botUpdate BotAIdempotentInspect
Update an existing bot's configuration. Only provided fields are modified; omitted fields remain unchanged.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the bot to update | |
| name | No | New display name for the bot | |
| llmModel | No | OpenRouter model ID (e.g., 'google/gemini-2.5-flash-lite-preview-09-2025', 'openrouter/auto') | |
| maxTokens | No | Maximum number of tokens the bot can generate per response | |
| assignment | No | One-sentence role definition for the bot (max 2000 chars) | |
| systemPrompt | No | New system prompt defining the bot's behavior and personality | |
| llmTemperature | No | Temperature parameter controlling response randomness (0 = deterministic, 2 = creative) | |
| fallbackMessage | No | Message sent when the bot cannot understand user input (max 2000 chars) | |
| greetingMessage | No | Automatic greeting sent when a new conversation starts (max 2000 chars) | |
| escalationPrompt | No | Prompt template used when escalating to a human agent (max 5000 chars) | |
| responsibilities | No | Array of responsibility descriptions defining what the bot handles | |
| whatsappChannelId | No | Unique identifier (UUID) of the WhatsApp channel to associate with the bot |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds partial update context beyond annotations (readOnlyHint=false, idempotentHint=true). Does not mention side effects, but annotations cover safety 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?
Single sentence with key information: verb, resource, and partial update behavior. 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?
Covers partial update pattern. Lacks mention of return value (common for update tools) but schema coverage and annotations provide sufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with descriptions. Tool description adds global partial update behavior but no additional param-specific details. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Update an existing bot's configuration' with a specific verb (update) and resource (existing bot). Distinguishes from sibling tools like create_bot and delete_bot.
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?
Describes partial update behavior ('Only provided fields are modified'). Lacks explicit comparison to sibling tools but is clear enough for basic usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_broadcastUpdate BroadcastAIdempotentInspect
Update an existing broadcast's name, message content, or media before sending. The broadcast must still be in draft status.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the broadcast to update | |
| name | No | New display name or label for the broadcast | |
| message | No | New message content to broadcast | |
| mediaUrl | No | New media URL to attach | |
| messageType | No | New message type (e.g., 'text', 'image', 'document') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate non-read-only, non-destructive, and idempotent behavior. The description adds the critical draft constraint ('The broadcast must still be in draft status'), which is not in annotations, enriching 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?
Two sentences, no redundancy, front-loaded with the core action and constraint. 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 mutation tool with no output schema, the description is complete: it explains what it does, what can be updated, and the critical prerequisite. The sibling tools provide additional context for 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?
Schema coverage is 100% with descriptions for all 5 parameters. The description adds usage context by linking parameters to the draft prerequisite and specifying that they can be updated 'before sending', which adds 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 'Update an existing broadcast's name, message content, or media before sending' with a specific verb and resource, and distinguishes from siblings like create, delete, and send broadcasts by adding the draft status condition.
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 ('before sending', 'must still be in draft status'), but does not explicitly name alternative tools or state when not to use. However, the sibling list provides clear differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_campaignUpdate CampaignAIdempotentInspect
Update a campaign that is in 'draft' or 'rejected' status. Active or completed campaigns cannot be modified.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the campaign to update | |
| title | No | Updated campaign title | |
| message | No | Updated WhatsApp message template | |
| deadline | No | Updated campaign deadline in ISO 8601 date format | |
| guidelines | No | Updated participant guidelines | |
| description | No | Updated marketplace description | |
| totalBudget | No | Updated total campaign budget in kobo | |
| rewardPerDelivery | No | Updated reward per delivery in kobo (e.g., 5000 = NGN 50) | |
| requireMutualContact | No | Updated mutual contact requirement setting |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and destructiveHint=false. The description adds the status constraint, which is useful behavioral context. However, it does not elaborate on other behaviors such as return value or error cases. Since annotations cover the safety profile, a 3 is appropriate.
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?
Two sentences, no fluff. The purpose is front-loaded, and every sentence adds value. Extremely concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 9 optional parameters (all described), annotations, and no output schema, the description adequately covers the core behavior and status constraint. It does not mention return value, but that is not required. Overall, it is sufficiently complete for an update 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 coverage is 100% (all parameters described). The baseline is 3 because the schema already documents each parameter. The description adds no additional meaning to the parameters 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 verb 'Update' and the resource 'campaign', with a specific constraint on status (draft/rejected). It distinguishes from sibling tools like create_campaign or delete_campaign, but does not explicitly name alternatives or differentiate further.
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: for campaigns in 'draft' or 'rejected' status. Also states when not to use: 'Active or completed campaigns cannot be modified.' This provides clear context, though it does not mention alternative tools for other statuses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_channelUpdate ChannelAIdempotentInspect
Update configuration of an existing WhatsApp channel. Only provided fields are modified; omitted fields remain unchanged.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the channel to update | |
| name | No | New display name for the channel | |
| phoneNumber | No | New phone number for the channel (E.164 format) | |
| metaAccessToken | No | New Meta Access Token (meta_cloud channels only) | |
| metaPhoneNumberId | No | New Meta Phone Number ID (meta_cloud channels only) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds important behavioral detail about partial update semantics, which goes beyond annotations (readOnlyHint=false, idempotentHint=true) by clarifying that only provided fields are changed. 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?
Two concise sentences with no wasted words; front-loaded with the core purpose and key behavior.
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 operation well, but lacks mention of return value (e.g., success status or updated object) and any prerequisites. For a simple update tool with annotations, this is nearly 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 100% with clear descriptions for each parameter. The description only adds overall partial update behavior, not per-parameter nuance. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it updates an existing WhatsApp channel with partial update semantics ('Only provided fields are modified; omitted fields remain unchanged'), which distinguishes it from create_channel, delete_channel, etc.
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 updating channel attributes but does not explicitly state when to use this tool versus alternatives like create_channel or delete_channel, nor does it provide context on prerequisites 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.
neuron_update_contactUpdate ContactAIdempotentInspect
Update an existing contact's details. If notes are provided, they are appended as a new structured note entry without overwriting existing notes.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the contact to update | |
| name | No | Updated full name for the contact | |
| tags | No | Updated tags for the contact (replaces existing tags) | |
| No | Updated email address for the contact | ||
| notes | No | New note to append to the contact's existing notes | |
| phone | No | Updated phone number in E.164 format (e.g., +2348012345678) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond annotations, particularly the append behavior for notes. However, it lacks details on permissions, side effects, or idempotency beyond what's in 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?
Two concise sentences with no wasted words; front-loaded with purpose followed by key behavioral detail.
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 6-parameter tool with no output schema, the description is brief and omits return value, error conditions, or when contact is not found. It covers the core behavior but lacks full 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 100%, but the description adds value by clarifying the notes parameter's append behavior. Other parameters are well-described 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 the tool updates existing contact details, specifying that notes are appended rather than overwritten. This distinguishes it from create and other update tools effectively.
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 no explicit when-to-use or alternatives are given, the context makes it clear this is for updating contacts, and the special notes behavior provides important usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_contact_listUpdate Contact ListAIdempotentInspect
Update an existing contact list's name, slug, description, criteria, or refresh schedule.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Updated display name for the list | |
| slug | No | Updated URL-friendly slug for the list | |
| criteria | No | Updated dynamic list criteria. Set to null to clear existing criteria. | |
| idOrSlug | Yes | Unique identifier (UUID) or URL-friendly slug of the contact list to update | |
| description | No | Updated description of the list's purpose | |
| refreshSchedule | No | Updated refresh schedule for dynamic lists |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is not read-only (readOnlyHint false), idempotent (idempotentHint true), and not destructive. The description adds the list of updatable fields but does not disclose potential side effects, permissions, or behavior beyond that.
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, 12 words, and is front-loaded with the verb and resource. It is concise but could benefit from a list of fields for quicker 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?
The description lacks mention of return values or side effects. While the input schema is well-documented, the absence of an output schema means the description should clarify what the tool returns after a successful update.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the meaning of each parameter. The description merely restates some parameter names without adding new context or clarifying complex types like criteria.
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 'Update' and the resource 'existing contact list', listing specific fields that can be modified (name, slug, description, criteria, refresh schedule). This distinguishes it from sibling tools like create, delete, or get contact lists.
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 updating existing contact lists but does not explicitly state when to use it versus alternatives like update_contact or update_bot. No prerequisites or conditions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_kb_entryUpdate Knowledge Base EntryBIdempotentInspect
Update the content, title, folder, or source of an existing knowledge base entry.
| Name | Required | Description | Default |
|---|---|---|---|
| kbId | Yes | Unique identifier of the knowledge base | |
| title | No | New title for the entry | |
| folder | No | New folder: 'general', 'skills', 'contexts', 'documents', or 'faqs' | |
| source | No | New source type for the entry | |
| content | No | New content for the entry | |
| entryId | Yes | Unique identifier of the entry to update | |
| metadata | No | New metadata key-value pairs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states 'Update' which aligns with annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=true). It adds no additional behavioral traits beyond what annotations already convey, such as partial update behavior or required 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?
A single, concise sentence that communicates the core functionality without any extraneous 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?
For a tool with 7 parameters and no output schema, the description is too minimal. It omits details like partial update behavior, required parameters (kbId, entryId), and expected 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 coverage is 100% with parameter descriptions already present. The description lists updatable fields (content, title, folder, source) but adds no new 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 uses a specific verb ('Update') and identifies the resource ('existing knowledge base entry'), clearly distinguishing it from sibling tools like create_kb_entry or delete_kb_entry.
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 (e.g., create_kb_entry, update_knowledge_base). No when-to-use or when-not-to-use information is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_knowledge_baseUpdate Knowledge BaseAIdempotentInspect
Update the properties of an existing knowledge base such as name, description, or root instruction.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base to update | |
| name | No | New name for the knowledge base | |
| description | No | New description for the knowledge base | |
| rootInstruction | No | New root instruction or context |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true, destructiveHint=false, readOnlyHint=false. The description adds no behavioral context beyond 'update'. It does not contradict annotations but also does not provide additional insight into side effects or 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?
Single sentence of 14 words, directly stating the purpose and listing updatable properties. Efficient and front-loaded with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description does not mention what the tool returns (no output schema exists), nor does it explain behavior for non-existent IDs or error conditions. While the core purpose is clear, some practical context is 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?
Schema description coverage is 100%, and the description merely repeats the property names (name, description, root instruction) already documented in the schema. It adds no semantic value beyond 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 the tool updates an existing knowledge base and lists specific properties (name, description, root instruction). It distinguishes this from sibling tools like neuron_create_knowledge_base or neuron_update_kb_entry by specifying the resource and 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?
No guidance on when to use this tool versus alternatives like neuron_create_knowledge_base or other update tools. Lacks prerequisites or contextual hints for appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_memberUpdate Member PermissionsAIdempotentInspect
Update a member's permissions within the organization, such as conversation access. Only provided fields are changed.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization | |
| userId | Yes | Unique identifier (UUID) of the member to update | |
| canViewConversations | Yes | Whether the member can view conversations |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=false, destructiveHint=false, idempotentHint=true. Description adds 'Only provided fields are changed,' which aligns with annotations but does not significantly expand beyond them.
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?
Single sentence containing all essential information without extraneous content. Front-loaded with verb and resource.
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?
Complete for a simple update tool with three required parameters; all are documented. No output schema needed. The description and annotations together provide sufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for all three parameters. The description mentions 'conversation access' but does not add substantial 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?
Title and description clearly state the action (update), resource (member permissions), and scope (within organization). Distinguishes from sibling tools like invite_member, remove_member, list_members.
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?
Description implies usage for updating existing member permissions but does not explicitly exclude other operations like adding or removing members. Lacks explicit when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_newsletterUpdate NewsletterAIdempotentInspect
Update the name or description of an existing WhatsApp Channel newsletter. Only provided fields are changed.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the newsletter to update | |
| name | No | New display name for the newsletter | |
| description | No | New description for the newsletter |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotentHint=true and readOnlyHint=false. The description adds that only provided fields are changed, clarifying partial update behavior. 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?
A single, terse sentence that conveys the essential information without redundancy. Front-loaded with the main action and resource.
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 parameters, no output schema), the description is complete. It specifies the resource type (WhatsApp Channel newsletter) and the fields that can be updated.
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 100% of parameters. The description adds value by stating 'Only provided fields are changed', which explains the idempotent behavior and partial update 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?
The description clearly states the verb 'Update' and the resource 'existing WhatsApp Channel newsletter', specifying the fields that can be changed (name, description). It implicitly distinguishes from create_newsletter and delete_newsletter by the nature of the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Update' and 'Only provided fields are changed', indicating when to use (to modify name/description). It does not explicitly mention when not to use or alternative tools, but the context of siblings (create, list, delete) provides implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_organizationUpdate OrganizationAIdempotentInspect
Update organization settings such as name, description, or configuration preferences. Only provided fields are changed.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | New display name for the organization | |
| orgId | Yes | Unique identifier (UUID) of the organization to update |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
States partial update behavior ('Only provided fields are changed'), which aligns with annotations (idempotentHint=true). Adds context beyond annotations, no contradictions.
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?
Two concise sentences front-load the purpose and behavior. 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?
Adequately covers the tool's purpose and key behavior given annotation coverage. No output schema, but return value is not critical for 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?
Schema has 100% description coverage, so baseline 3. Description adds mention of 'description, or configuration preferences' but schema only includes name and orgId, causing slight misalignment. No additional syntax or format 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?
Clearly states it updates organization settings, specifies updatable fields (name, description, configuration preferences), and indicates partial update behavior. Differentiates from sibling update tools by targeting organization.
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 vs alternatives. Implied usage for updating organization settings, but lacks when-not-to-use or alternative tool mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_outbound_webhookUpdate Outbound WebhookAIdempotentInspect
Modify an existing outbound webhook's configuration, including its destination URL, subscribed event types, or filter prompt.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the outbound webhook to update | |
| url | No | Updated destination URL that will receive webhook event payloads (HTTPS recommended) | |
| name | No | Updated human-readable name for the webhook | |
| eventTypes | No | Updated array of event types that should trigger this webhook | |
| filterPrompt | No | Updated LLM prompt for selectively filtering forwarded events |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey idempotency (idempotentHint=true) and non-destructiveness (destructiveHint=false). The description adds no further behavioral context, such as partial update behavior or side effects, beyond confirming it's a write 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?
Single sentence, concise, and front-loaded with the key action and object. No redundant 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 update tool with good annotations and full schema coverage, the description is adequate but lacks details on partial update semantics or behavior when optional fields are omitted. No output schema, so return value info is absent but not critical.
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 documentation covers 100% of parameters with descriptions. The description mentions some parameters (url, eventTypes, filterPrompt) but adds minimal semantic value beyond the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Modify') and the resource ('existing outbound webhook's configuration'). It specifies the configurable aspects (URL, event types, filter prompt), distinguishing it from sibling tools like create or delete.
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 an existing webhook needs modification but does not explicitly state when to use alternatives like create or delete. No exclusions or conditional guidance are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_pool_itemUpdate Pool ItemAIdempotentInspect
Update the metadata of a pool item you have published, such as title, description, category, or tags.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the pool item to update | |
| tags | No | New list of tags for the pool listing | |
| title | No | New display title for the pool listing | |
| category | No | New category name for the pool listing | |
| description | No | New detailed description for the pool listing |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate the tool is not read-only, idempotent, and not destructive. The description adds that it updates metadata fields, which is useful but does not disclose permissions or side effects. Given annotations carry the safety profile, this is adequate.
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 of 14 words, front-loading the purpose with 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 purpose and scope but does not mention return values or success indicators. Given no output schema, a brief note on what to expect would improve completeness, but it is still acceptable for a simple metadata update.
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 100%, and the description restates the fields already documented in the schema (title, description, category, tags). No additional meaning is added beyond 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 the verb 'Update' and the resource 'pool item' with specific metadata fields (title, description, category, tags). It distinguishes from sibling tools like neuron_get_pool_item (read), neuron_publish_to_pool (create), and neuron_unpublish_from_pool (delete).
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 updating a pool item that the user has published, providing context. It does not explicitly state when not to use or mention alternatives, but the ownership constraint is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_toolUpdate ToolAIdempotentInspect
Modify an existing custom API tool's configuration, including its endpoint, authentication, or request template.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the tool to update | |
| name | No | Updated human-readable name for the tool | |
| config | No | Updated tool configuration for the HTTP endpoint | |
| authType | No | Updated authentication type (e.g., 'bearer', 'basic', 'apiKey', 'none') | |
| rateLimit | No | Updated maximum requests per minute | |
| timeoutMs | No | Updated request timeout in milliseconds | |
| description | No | Updated description of the tool's purpose |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=false, idempotentHint=true, destructiveHint=false. Description adds minimal behavioral context—does not clarify if update is partial or full replacement, nor mentions any side effects. Adequate given 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?
Single sentence, directly states purpose without extraneous words. Front-loaded with key actions.
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?
Lacks mention of return value or behavior (e.g., whether config is merged or replaced). No output schema provided. With 7 parameters and nested object, description could clarify optionality of config. Adequate for a simple update 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 100%, so parameters are already well-documented. The description mentions 'endpoint, authentication, or request template' but adds no new meaning beyond schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it modifies an existing custom API tool's configuration, specifying endpoints, authentication, or request templates. Distinguishes from create/delete tools via verb 'update'.
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 create_tool or delete_tool. Does not mention prerequisites (e.g., tool must exist, ID required). No exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_webhookUpdate WebhookAIdempotentInspect
Modify an existing inbound webhook's configuration, such as its name, event type, or processing prompt.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier (UUID) of the webhook to update | |
| name | No | Updated human-readable name of the webhook | |
| isActive | No | Whether the webhook should be active and accepting requests | |
| eventType | No | Updated event type this webhook handles | |
| processingPrompt | No | Updated prompt instructions for processing webhook data |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide safety profile (idempotent, non-destructive). Description adds modification context but not error behavior 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?
A single sentence with 15 words, direct and efficient, listing examples without 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?
Adequate for a simple update tool with good schema coverage, but missing return value indication and error handling context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description lists three parameters (name, eventType, processingPrompt) but does not add meaning beyond 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 modifies an existing inbound webhook's configuration with specific examples (name, event type, processing prompt), distinguishing it from create and delete 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 when updating a webhook's settings, but lacks explicit when-not or prerequisite conditions. However, sibling differentiation is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_update_whatsapp_credentialsUpdate WhatsApp CredentialsAIdempotentInspect
Update WhatsApp Business API credentials for the organization. These credentials are required for sending messages via the WhatsApp Cloud API.
| Name | Required | Description | Default |
|---|---|---|---|
| orgId | Yes | Unique identifier (UUID) of the organization | |
| whatsappAccessToken | Yes | WhatsApp access token for API authentication (keep confidential) | |
| whatsappPhoneNumberId | Yes | WhatsApp phone number ID from the Meta Business dashboard | |
| whatsappBusinessAccountId | Yes | WhatsApp Business Account ID from the Meta Business dashboard |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description adds context about credential necessity but does not disclose behavioral traits like side effects or authorization requirements beyond what annotations provide.
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?
Two sentences, front-loaded with the verb and resource, every sentence adds value. Minimal and 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?
For a simple update tool with no output schema, the description adequately explains the purpose but does not mention expected return values or post-update state, leaving some 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?
Schema coverage is 100%, and parameter descriptions are complete. The description adds no additional meaning beyond the schema, earning a baseline score of 3.
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 'Update' and resource 'WhatsApp Business API credentials' for the organization. It clearly distinguishes from sibling tools like neuron_send_whatsapp and neuron_list_whatsapp_contacts by focusing on credentials management.
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 by stating credentials are required for sending messages via WhatsApp Cloud API, but lacks explicit when-to-use or when-not-to-use guidance and does not mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_upload_documentUpload DocumentAInspect
Upload a text document to a knowledge base. The document will be automatically chunked and indexed for semantic search.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Unique identifier of the knowledge base | |
| folder | No | Folder path to organize the document within the knowledge base | |
| content | Yes | Text content of the document to upload | |
| filename | Yes | Name of the file being uploaded |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds beyond annotations by stating the document is automatically chunked and indexed for semantic search, implying processing beyond just storage. Annotations already indicate non-readonly, non-destructive, which aligns with upload 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?
Two concise sentences that front-load the primary action and add key behavioral context. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core action but omits potential details like file size limits, supported formats, return value, and the requirement that the knowledge base must already exist. With no output schema, more context would be beneficial.
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 4 parameters are fully documented in the input schema (100% coverage). The description does not add parameter-specific details beyond the schema, so baseline score of 3 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 uploads a text document to a knowledge base and mentions automatic chunking for semantic search, but does not explicitly distinguish it from sibling tools like neuron_create_kb_entry or neuron_ingest_knowledge.
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 other knowledge base tools (e.g., neuron_create_kb_entry, neuron_attach_knowledge_base). The description does not list prerequisites or discuss alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_upload_mediaUpload MediaAInspect
Upload a media file (image, video, audio, or document) by providing its base64-encoded content. Returns a URL for use in messages and broadcasts.
| Name | Required | Description | Default |
|---|---|---|---|
| base64 | Yes | Base64-encoded file content (without data URI prefix) | |
| filename | Yes | Original filename including extension (e.g., 'photo.jpg', 'report.pdf') | |
| mimetype | Yes | MIME type of the file (e.g., 'image/jpeg', 'image/png', 'application/pdf', 'video/mp4') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description states the tool 'returns a URL,' which is a useful behavioral detail. Annotations are all false, so the description carries a moderate burden. It does not disclose idempotency, error handling, or file size limits, but the annotations already provide minimal safety info.
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 only two sentences, front-loaded with the action, and every word contributes meaning. There is no redundancy or unnecessary detail.
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 and that the schema covers all parameters, the description is largely complete. It explains the output (URL) and typical use case. Minor gaps like size limits or encoding specifics are acceptable for such a straightforward upload 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 coverage is 100%, so the parameters are well-documented in the schema. The description reinforces the base64 encoding requirement, but adds no additional semantic meaning beyond what is already provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool uploads media files (image, video, audio, document) via base64 and returns a URL. The purpose is specific and aligned with the name, but it does not differentiate from the sibling tool `neuron_upload_document`, which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the URL is 'for use in messages and broadcasts,' providing some context. However, it does not explicitly specify when to use this tool versus alternatives like `neuron_upload_document` or other upload tools, nor does it 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.
neuron_verify_bank_accountVerify Bank AccountARead-onlyIdempotentInspect
Verify a Nigerian bank account number via Paystack to confirm the account holder name before saving.
| Name | Required | Description | Default |
|---|---|---|---|
| bankCode | Yes | Nigerian bank code (e.g., '058' for GTBank, '044' for Access Bank) | |
| accountNumber | Yes | 10-digit Nigerian bank account number to verify |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive. The description adds that verification is performed via Paystack and the goal is to confirm the account holder name, providing useful context beyond the annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the tool's purpose, with no wasted words. It earns its place perfectly.
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 verification tool with no output schema, the description hints at the output by stating 'confirm the account holder name', which implies the response includes the name. It could be more explicit about success/failure indications, but it is largely complete for an agent to understand core behavior.
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 100%, with both parameters already documented with examples (bankCode, accountNumber). The description does not add additional meaning beyond what the schema provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'verify' and the resource 'Nigerian bank account number via Paystack', with the purpose 'to confirm the account holder name before saving'. It effectively distinguishes from sibling tools like 'neuron_get_bank_account' (retrieve saved) and 'neuron_save_bank_account' (save verified).
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 implicitly guides usage with 'before saving', indicating this should precede saving a bank account. While it doesn't explicitly list when not to use or name alternatives, the context is clear given the sibling tools for getting and saving accounts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_verify_wallet_fundingVerify Wallet FundingARead-onlyIdempotentInspect
Verify a wallet funding transaction using the Paystack payment reference to confirm the payment was successful.
| Name | Required | Description | Default |
|---|---|---|---|
| reference | Yes | Paystack payment reference returned from the checkout session |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds context that the tool uses a Paystack payment reference to confirm success, which aligns with safety cues and provides useful behavioral context beyond 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 a single, clear sentence with no unnecessary words. It is front-loaded with the action and resource, making it efficient for quick comprehension.
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 verification tool with one parameter, good annotations, and no output schema, the description adequately explains the tool's purpose and input. It could optionally mention the type of return value (e.g., boolean), but this is not critical given the lack of 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 description's explanation of the 'reference' parameter ('Paystack payment reference returned from the checkout session') is identical to the schema description. With 100% schema coverage, the description adds no additional semantics, meeting the baseline of 3.
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 'verify', the resource 'wallet funding transaction', and the method 'using the Paystack payment reference'. It is specific and distinct from sibling tools like neuron_verify_bank_account.
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 needing to confirm payment success, but lacks explicit guidance on when to use this tool versus alternatives, and does not mention any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_wallet_balanceWallet BalanceARead-onlyIdempotentInspect
Retrieve the current wallet balance for the organization, including available and pending amounts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that it returns 'available and pending amounts', which is useful but not extensive beyond what annotations convey.
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?
Single sentence, front-loaded with key information, no unnecessary words. 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 simple read tool with no parameters and good annotations, the description covers the return values (available and pending amounts) and is complete enough 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?
No parameters in schema, so description does not need to add parameter details. Baseline for 0 parameters is 4, and description 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 tool retrieves the current wallet balance, using specific verb 'Retrieve' and resource 'wallet balance'. It differentiates from sibling tools like 'neuron_fund_wallet' and 'neuron_wallet_transactions' by focusing on 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 description implies usage for checking balance but does not explicitly state when to use this tool vs alternatives like 'neuron_wallet_transactions' for transaction history or 'neuron_fund_wallet' for adding funds.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
neuron_wallet_transactionsWallet TransactionsARead-onlyIdempotentInspect
Retrieve the wallet transaction history for the organization, with optional filtering by transaction type.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination (default: 1) | |
| type | No | Filter by transaction type: 'credit' or 'debit' | |
| limit | No | Number of transactions per page (default: 20) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description carries a lower burden. It adds that the operation is 'for the organization' and offers optional filtering, but lacks details like pagination behavior, default ordering, or return structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the key action and resource, with no unnecessary 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 no output schema, the description could explain the return format (e.g., list of transactions). It covers the main purpose and parameters but omits details like pagination defaults and result structure, leaving some incompleteness for a read 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 coverage is 100%, so baseline is 3. The description mentions 'optional filtering by transaction type' which aligns with the 'type' parameter but doesn't add new meaning beyond the schema descriptions for page, limit, and type.
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 'Retrieve', the resource 'wallet transaction history', and the scope 'for the organization', effectively distinguishing it from sibling tools like neuron_wallet_balance and neuron_fund_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 for retrieving transaction history but provides no explicit guidance on when to use this tool versus alternatives, nor does it mention 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.
neuron_whoamiCheck Current AccountARead-onlyIdempotentInspect
Check which Neuron account is currently logged in, including user name, email, role, and organization.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is clear. The description adds context about the returned fields (user name, email, role, organization) but does not disclose any behavioral traits beyond what is already annotated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every word adds value: verb, resource, and output details. It belongs to a well-structured tool definition.
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 (no params, no output schema), the description adequately covers the return content. It could mention that the tool is useful for verifying authentication or that it reflects the current session, but these are not critical gaps. Annotations already cover idempotency and safety.
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?
There are zero parameters, and schema coverage is 100% (since no properties). The description adds meaning by explicitly listing the returned data, which is the entire semantics of the tool. Per the rubric, 0 params earns a baseline of 4, and the detailed output description elevates it to 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 clearly states the verb 'Check' and resource 'which Neuron account is currently logged in', specifying exact output fields (user name, email, role, organization). It distinguishes from siblings like neuron_get_profile or neuron_get_organization by focusing on the current session's account identity.
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 (to get current account info) but does not explicitly state exclusions or alternatives. Among many sibling tools, no differentiation is provided, leaving the agent to infer usage from purpose alone.
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!