SuperBot
Server Details
Read your SuperBot support conversations, find unanswered questions, and teach your AI new answers.
- Status
- Healthy
- Uptime
- 17.5% over 21 days
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 11 tools
Most tools have clearly distinct purposes, and descriptions actively cross-reference alternatives (e.g. get_insights vs get_support_overview, list_unanswered_questions vs list_training_gaps). A couple of pairs still sit close together — the two analytics tools and the two question-triage tools — but the descriptions make the boundaries readable.
Nine of eleven tools follow a clean verb_noun pattern (add_trained_answer, get_insights, list_leads, search_knowledge, etc.). The two outliers, bare 'fetch' and 'search', deviate from the noun-suffixed convention but remain readable and unambiguous.
Eleven tools is well within the ideal 3-15 range and each one earns its place across conversations, knowledge, analytics and leads. No redundancy or filler tools are present.
The surface covers the bot-owner lifecycle well: conversation search/fetch/list, knowledge listing/search, training addition, insights and lead listing. Minor gaps exist — no update/delete for trained answers and no lead detail or conversation-reply tool — but core workflows are workable.
Available Tools
11 toolsadd_trained_answerTeach the AI a new answerAIdempotentInspect
Add a user-approved question/answer pair to this workspace's SuperBot training. This changes future visitor-facing answers. Confirm the exact text with the user and check search_knowledge first. Creates an entry; never edits or deletes existing training. Repeating the same call does not create a duplicate.
| Name | Required | Description | Default |
|---|---|---|---|
| answer | Yes | The exact user-approved answer the AI should give. | |
| category | No | Optional grouping, e.g. shipping, returns, billing. | |
| question | Yes | The customer question, as a customer would phrase it. |
Output Schema
| Name | Required | Description |
|---|---|---|
| created | Yes | |
| already_existed | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true, openWorldHint=true, so the safety profile is covered. The description goes beyond them by stating the real-world impact ('changes future visitor-facing answers') and the additive/non-destructive scope ('never edits or deletes existing training'). The duplicate-suppression sentence largely restates idempotentHint, which is why this is a 4 rather than a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Five short sentences, front-loaded with the action and effect, followed by preconditions and then boundaries. Nothing is redundant padding: each sentence either states scope, a precondition, or a behavioral limit.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained. The description covers effect on future answers, the pre-call verification step, and the non-destructive/idempotent boundaries, which is everything an agent needs to invoke a 3-parameter write tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents question, answer, and category with lengths and examples. The description reinforces that text must be user-approved but adds no format, syntax, or constraint detail beyond what the schema supplies — the baseline 3 for a fully documented 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?
Specific verb+resource: 'Add a user-approved question/answer pair to this workspace's SuperBot training.' It names the object (training entry), the required input shape, and even the sibling tool (search_knowledge) that an agent might confuse it with, so it is separable from the read-oriented siblings without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit preconditions and routing: 'Confirm the exact text with the user and check search_knowledge first,' plus an exclusion ('never edits or deletes existing training'). This tells the agent both when to call it and what it cannot be used for, which is exactly the guidance a write tool needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchFetch a conversation transcriptARead-onlyIdempotentInspect
Retrieve one support conversation by the id returned from search, list_recent_conversations, list_unanswered_questions or list_training_gaps. Returns up to 500 messages and 60,000 transcript characters, with status/sentiment/CSAT metadata, truncation flags and a dashboard URL for the complete history.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Conversation id (UUID) from another SuperBot tool. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| url | Yes | |
| text | Yes | |
| title | Yes | |
| metadata | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), but the description adds real behavioral context: hard caps of 500 messages / 60,000 characters, the presence of truncation flags, and a dashboard URL for the full history. It does not mention auth/permission requirements or error behavior on an unknown id, so it is strong rather than exhaustive.
Agents need to know what a tool does to the 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 filler, with the retrieval action and id provenance front-loaded before the return characteristics. Every clause 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 tool is simple (one required param), annotations carry the safety profile, and an output schema exists so return-value documentation is not the description's burden. The description still adds the practical limits and truncation behavior an agent needs, leaving no meaningful 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 one parameter and 100% schema description coverage, the schema already documents the id fully (including maxLength 64 and UUID provenance). The description's note that the id comes from other tools largely restates the schema's 'Conversation id (UUID) from another SuperBot tool', 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?
States a specific verb and resource ('Retrieve one support conversation by the id') and immediately distinguishes itself from siblings by naming the four tools that produce valid ids. An agent can tell this apart from search or list_recent_conversations without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 tells the agent where the required id comes from (search, list_recent_conversations, list_unanswered_questions, list_training_gaps), which is exactly the routing information needed. It does not state when *not* to use it or what to do if the id is stale/invalid, so it falls short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_insightsGet support insights and trendsARead-onlyIdempotentInspect
Analyst view of this workspace's support over a window of days, compared with the previous window of the same length: top recurring topics customers ask about (with trend up/down/new), repeated questions, conversation and escalation volume change, AI fallback rate (replies where the AI had no grounded answer), CSAT and negative-sentiment change, which sources the AI answered from, and a daily volume series. Use it for 'what are customers asking about', 'what's trending', or a weekly/monthly support review. Topics are keyword themes from visitors' opening messages, not a classifier; read examples with fetch before drawing conclusions.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Window in days, 1-180. Default 30. The previous window of the same length is used for comparison. | |
| topics | No | Maximum topics to return, 1-25. Default 10. |
Output Schema
| Name | Required | Description |
|---|---|---|
| daily | Yes | |
| sample | Yes | |
| avg_csat | Yes | |
| top_topics | Yes | |
| escalations | Yes | |
| window_days | Yes | |
| conversations | Yes | |
| fallback_rate | Yes | |
| answer_sources | Yes | |
| negative_sentiment | Yes | |
| repeated_questions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, so safety is covered; the description adds genuinely useful behavioral context instead of repeating it — the window is always compared against the previous equal-length window, and topics are keyword themes from opening messages rather than a classifier, which warns the agent against over-trusting them. It does not mention pagination or result size limits beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense opening sentence front-loads purpose and payload, followed by short usage and caveat sentences. It is long but nearly every clause carries distinct content (each metric named is a separate return field), so little is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 read-only annotations and an output schema present, the description need not document return shapes, yet it still tells the agent what the analyst view contains and warns about the topic-classification caveat. The only gap is that it never positions the tool against its closest sibling for a reader choosing between them.
Complex tools with many parameters or behaviors need more documentation. 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 both `days` and `topics` fully documented including ranges and defaults, so the baseline is 3. The description reinforces the comparison-window meaning of `days` but adds no new syntax or semantics 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?
States a specific verb+resource (analyst view of this workspace's support) and then enumerates exactly what is returned: recurring topics with trend, repeated questions, volume and escalation change, AI fallback rate, CSAT/sentiment change, answer sources, and a daily volume series. That level of output enumeration makes it unmistakable against siblings like get_support_overview or list_recent_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?
Gives concrete trigger phrases ('what are customers asking about', 'what's trending') and a cadence context (weekly/monthly support review), plus a follow-up instruction to read examples with fetch before concluding. It stops short of stating when to prefer a sibling like get_support_overview or list_unanswered_questions instead, so no explicit exclusion is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_support_overviewGet support metrics overviewARead-onlyIdempotentInspect
Aggregate support health for this workspace over a window of days: conversation volume, open/pending/closed, average CSAT with sample size, sentiment split and busiest channels. Use it to answer 'how is support doing'. For topics, trends versus the previous period and AI answer quality, use get_insights.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Window in days, 1-365. Default 30. |
Output Schema
| Name | Required | Description |
|---|---|---|
| open | Yes | |
| total | Yes | |
| closed | Yes | |
| pending | Yes | |
| avg_csat | Yes | Average CSAT (1-5), or null with no ratings. |
| channels | Yes | |
| negative | Yes | |
| positive | Yes | |
| window_days | Yes | |
| csat_responses | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered without description help. The description adds genuine context that the result is workspace-scoped and window-bounded, but the metric enumeration largely restates what the output schema already carries, so it exceeds the annotation baseline modestly rather than substantially.
Agents need to know what a tool does to the 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 with zero filler: capability and scope first, the intended use case second, the alternative routing last. Every clause earns its place and the most decision-relevant information 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 read-only aggregate with a full output schema and complete annotations, the description supplies everything needed to select and call it: what it aggregates, the window parameter's role, the workspace scope, and when to prefer get_insights. No return-value explanation is required given the output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one parameter and schema description coverage is 100%, so the schema already documents the days range (1-365) and default of 30. The description's "over a window of days" reinforces rather than extends the schema; baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (aggregate) and resource (support health for this workspace) and enumerates the concrete metrics returned: volume, open/pending/closed, CSAT with sample size, sentiment split, busiest channels. It also explicitly contrasts itself with get_insights, so an agent can separate the two without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives both a positive trigger ("Use it to answer 'how is support doing'") and an explicit routing rule with the alternative named and the conditions that select it (topics, period-over-period trends, AI answer quality -> get_insights). Nothing is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_knowledge_sourcesList knowledge sourcesARead-onlyIdempotentInspect
List the knowledge sources this workspace's SuperBot agent learns from (websites, documents, files and other ingested content) with type, status, entry count and last sync time, plus a count of trained Q&A answers. Use it to audit what the AI knows, spot failed or stale sources, or answer 'what have we taught the bot'. To search inside the content, use search_knowledge.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results, 1-100. Default 50. | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. | |
| status | No | Optional exact status filter, e.g. active, processing, error. | |
| source_type | No | Optional exact type filter, e.g. website, document, file. |
Output Schema
| Name | Required | Description |
|---|---|---|
| totals | Yes | |
| sources | Yes | |
| has_more | No | True when more records match than were returned. |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
| dashboard_url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds that results can reveal failed or stale sources, which hints at the lifecycle states returned. However, since an output schema exists, the enumerated return fields largely duplicate structured data rather than adding new behavioral context, so this sits at the baseline.
Agents need to know what a tool does to the 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 dense sentences, front-loaded with the resource and its returned fields, then the usage guidance and the sibling routing. Nearly every clause earns its place, though the field enumeration partially restates the output schema and could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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-required-parameter list tool with full annotation coverage, a rich output schema, and 100% schema coverage, the description supplies enough routing and intent context to invoke it correctly. The only minor gap is that it does not mention the filter parameters an agent could combine with it, though the schema covers those 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 description coverage is 100%, so limit, cursor, status, and source_type are each documented in the schema with ranges, defaults, and examples. The description mentions 'type' and 'status' only as returned fields, not as filterable parameters, and adds no syntax or semantic detail 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?
Names a specific verb and resource ('List the knowledge sources'), immediately scopes it to the workspace's SuperBot agent, and enumerates the returned fields (type, status, entry count, last sync time, trained Q&A count). It also explicitly distinguishes itself from search_knowledge, so an agent can route correctly without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives three concrete use cases ('audit what the AI knows', 'spot failed or stale sources', 'what have we taught the bot') and names the alternative tool with the condition that selects it ('To search inside the content, use search_knowledge'). This is explicit when-to-use plus 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.
list_leadsList captured leadsARead-onlyIdempotentInspect
List sales leads captured in this workspace's SuperBot CRM, newest first: visitors who shared contact details in chat, workflow/form submissions and manually added leads, with name, email, phone, company, source, status, score and notes. Filter by status, source, a text query (name, email or company) or a recent window. Use it for 'who asked for a quote this week' or a lead follow-up review. Contact details are personal data: summarize for the user's team and do not paste them anywhere public.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Optional: only leads captured in the last N days, 1-3650. | |
| limit | No | Maximum results, 1-100. Default 25. | |
| query | No | Optional words to match in name, email or company (case-insensitive, literal). | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. | |
| source | No | Optional exact source filter, e.g. widget, manual. | |
| status | No | Optional exact status filter, e.g. new, contacted, qualified. |
Output Schema
| Name | Required | Description |
|---|---|---|
| leads | Yes | |
| has_more | No | True when more records match than were returned. |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
| dashboard_url | Yes | |
| status_counts | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), lowering the bar. The description adds real value beyond them: default ordering (newest first), the returned field set (name, email, phone, company, source, status, score, notes) and a data-handling constraint about not pasting personal data publicly.
Agents need to know what a tool does to the 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 that are front-loaded with the core list+resource+ordering, then filters, then usage. The field enumeration and privacy reminder make it slightly dense but every clause carries information; nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no further explanation, and all six parameters are schema-documented. Purpose, ordering, returned fields, filter surface, example intents and a privacy caveat are all present, leaving no material gap for a read-only 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 each parameter is already documented in the schema (including cursor semantics and exact-match sources/statuses). The description only restates the filter dimensions at a high level, adding no syntax or format detail 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?
Specific verb (list) and resource (sales leads in SuperBot CRM), with scope (this workspace, newest first) and the lead origins enumerated (chat contact sharing, workflow/form, manual). An agent can distinguish this from list_recent_conversations or search_knowledge without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives concrete use cases ('who asked for a quote this week', lead follow-up review) and names the filter dimensions that select them, which orients the agent well. It does not name an alternative sibling (e.g. search) or state when-not-to-use, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_recent_conversationsList recent conversationsARead-onlyIdempotentInspect
List the most recent support conversations in this workspace, newest first, optionally filtered by status. Use it for 'what came in today' rather than searching for specific words.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results, 1-100. Default 20. | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. | |
| status | No | Optional status filter. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| has_more | No | True when more records match than were returned. |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, non-destructive, closed-world semantics, so the safety burden is lifted. The description still adds genuine behavioral context beyond them: result ordering (newest first), workspace scoping, and that status filtering is optional. Pagination behavior is left implicit, which is documented in the cursor param.
Agents need to know what a tool does to the 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 tight sentences with no filler: scope and ordering are front-loaded, and the routing hint is appended rather than buried. Every clause 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?
An output schema exists, so return-shape details are correctly omitted, and the description covers scope, ordering, filtering, and when to prefer this over search. The only gap is that pagination is never hinted at in prose, though the cursor parameter documents it fully.
Complex tools with many parameters or behaviors need more documentation. 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%, including limits, cursor semantics, and an enum for status, so the schema does the heavy lifting. The description only restates that status filtering is optional and adds no syntax or default details 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?
States a specific verb and resource ('List the most recent support conversations in this workspace') with ordering ('newest first') and the optional status filter. It also carves out its territory against the sibling search tool ('rather than searching for specific words'), so an agent can route without opening a schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 gives the use case ('what came in today') and contrasts it with word-based lookup, which effectively points at the `search` sibling. It does not address other plausible siblings such as list_unanswered_questions or get_support_overview, so the routing guidance is clear but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_training_gapsList training gapsARead-onlyIdempotentInspect
Find questions the AI could not answer well, with evidence: visitor questions that got an AI fallback reply (no trained answer, knowledge or model answer was available), conversations escalated to a human, and conversations rated 1-2 CSAT. Returns one item per question with its signals, plus questions that repeat across conversations, plus answer_feedback: how many AI answers visitors marked helpful / not helpful in the widget over the same window. Use it to decide what to teach next: check search_knowledge for an existing answer, then draft one for the user's approval before add_trained_answer. Greetings and very short messages are excluded.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Look back this many days, 1-180. Default 30. | |
| limit | No | Maximum items, 1-100. Default 25. | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| has_more | No | True when more records match than were returned. |
| truncated | Yes | True when the window held more evidence than was analyzed (most recent kept). |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
| window_days | Yes | |
| signal_counts | Yes | |
| answer_feedback | No | Widget thumbs up/down on individual AI answers in the same window. helpful_rate is 0-1, or null when nothing was rated. |
| repeated_questions | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so safety is covered. The description adds genuinely new behavioral context beyond the annotations: the filtering rule that greetings and very short messages are excluded, and the fact that answer_feedback is computed over the same window as the gap signals.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose is front-loaded in the first clause, and the rest is dense with distinct facts (signals, return composition, workflow, exclusion rule). It is slightly long, and the detailed enumeration of return contents partly duplicates the output schema, but no sentence is 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 complex analytical tool with an output schema, annotations, and fully documented parameters, the description supplies everything an agent still needs: what counts as a gap, the exclusion rule, the pagination hint, and how to act on the results via sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so days, limit and cursor are already fully documented in the schema, including defaults, ranges and cursor semantics. The description only contributes the 'same window' tie between the lookback and answer_feedback, so the 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?
The description states a precise verb+resource ('Find questions the AI could not answer well') and then enumerates the exact signals that qualify a question as a gap: AI fallback replies, human escalations, and 1-2 CSAT ratings. That specificity distinguishes it from vaguer siblings such as list_unanswered_questions, which only covers one of those signals.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 gives a clear decision context ('Use it to decide what to teach next') and names the follow-on tools and order of operations (check search_knowledge, draft, then add_trained_answer). It stops short of explicitly stating when NOT to use this tool versus list_unanswered_questions, which appears to be a close sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_unanswered_questionsList conversations that may need an answerARead-onlyIdempotentInspect
List recent conversations that may still need an answer, for triage: conversations escalated to a human first, then conversations still open or pending. Each item is a lead to check, not proof the AI failed: read the transcript with fetch and check search_knowledge before proposing training. For questions the AI demonstrably could not answer (fallback replies, escalations, low CSAT) grouped by question, use list_training_gaps.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Look back this many days, 1-180. Default 14. | |
| limit | No | Maximum results, 1-100. Default 25. | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| has_more | No | True when more records match than were returned. |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
| window_days | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, so the safety profile is covered. The description adds real behavioral context beyond that: the result ordering, and the warning that results are leads rather than confirmed failures — a semantic nuance annotations cannot express. It does not describe pagination behavior, though the cursor param and output schema cover 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?
Front-loaded with the purpose and ordering, then the caveat and remediation workflow. Dense and mostly waste-free, though the final sentence on list_training_gaps is a long clause that a tighter routing pointer could carry.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 annotations covering the safety profile, a fully documented schema, and an output schema handling return values, the description supplies exactly the missing layer: how to interpret the results and what to do next. Nothing an agent needs to call it correctly is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters are fully described in the schema (coverage 100%), so the schema does the heavy lifting and the baseline of 3 applies. The description adds no format or range detail 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?
States a specific verb and resource ('List recent conversations that may still need an answer') plus the triage framing, and explicitly contrasts itself with list_training_gaps, which covers the demonstrably-unanswerable case. An agent can distinguish it from list_recent_conversations and list_training_gaps without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives ordering semantics (escalated first, then open/pending), an explicit interpretive caveat ('a lead to check, not proof the AI failed'), a follow-up workflow (read the transcript with fetch, check search_knowledge), and names the alternative tool for a different question type. When/when-not and alternatives are all present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchSearch support conversationsARead-onlyIdempotentInspect
Search this SuperBot workspace's customer support conversations by words in the subject, visitor name/email or any message. Returns matching conversations (newest first) with an id, title and dashboard URL. Use fetch with a returned id to read the full transcript. For 'what came in recently' without keywords, use list_recent_conversations instead.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results, 1-50. Default 10. | |
| query | Yes | Words to look for in the subject, visitor details or message text. Matched literally (case-insensitive). | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes | |
| has_more | No | True when more records match than were returned. |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds genuine behavioral context beyond that: result ordering ('newest first'), the fields returned (id, title, dashboard URL), and the recommended next call. It does not discuss pagination behavior directly, though the schema's cursor field covers 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?
Three tight sentences: what it searches and returns first, then the follow-up tool, then the exclusion case. Zero filler and each sentence carries distinct 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?
An output schema exists so return values need not be spelled out, and the annotations cover the safety profile. The description still supplies scope, ordering, and tool routing, leaving nothing an agent needs in order to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so limit, query, and cursor are all documented in the schema itself (including literal, case-insensitive matching semantics). The description's mention of searchable fields marginally reinforces the query parameter but adds no new syntax or format detail, so the 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?
States a specific verb (Search) plus resource (customer support conversations) and enumerates the searchable fields (subject, visitor name/email, message text). This is clearly distinguishable from siblings like search_knowledge or list_recent_conversations without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 routes the agent: use `fetch` with a returned id for the full transcript, and use `list_recent_conversations` when the goal is 'what came in recently' with no keywords. Both the follow-up path and the exclusion condition are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_knowledgeSearch the AI's knowledge and trainingARead-onlyIdempotentInspect
Search what this workspace has taught its SuperBot agent: trained question/answer pairs and ingested knowledge sources. Use it to check whether an answer already exists before writing a new one. To list all knowledge sources and their sync status, use list_knowledge_sources.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results per list (training and sources), 1-50. Default 15. | |
| query | Yes | Words to look for in questions, answers or source names. Matched literally (case-insensitive). | |
| cursor | No | Optional. The `next_cursor` from a previous call made with the same other arguments; returns the next page. Omit for the first page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sources | Yes | |
| has_more | No | True when more records match than were returned. |
| training | Yes | |
| next_cursor | No | Pass as `cursor` (with the same other arguments) to get the next page; null when there are no more. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered by structured data. The description adds only the workflow context that this is a pre-write lookup and that results span two domains, but says nothing about result ordering, matching behavior beyond what the schema states, or cost/latency. Useful but thin against an already-complete annotation set.
Agents need to know what a tool does to the 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 short sentences with no filler: scope first, then the motivating use case, then the routing alternative. Every sentence carries information the agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return structure need not be explained, and the description covers scope, use case, and the nearest alternative. The only minor gap is that it does not hint at the two-list result shape or how a caller should treat partial matches, which matters for a search tool, but nothing essential for correct invocation 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%, so limit, query, and cursor semantics (literal case-insensitive matching, page size, cursor chaining) are already fully documented in the schema. The description adds no parameter-level meaning beyond that, so the 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 names a specific verb (search) plus the two concrete resource domains it covers (trained question/answer pairs and ingested knowledge sources), and explicitly distinguishes itself from the sibling list_knowledge_sources. An agent can tell what this returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the exact decision context ('check whether an answer already exists before writing a new one', i.e. before add_trained_answer) and names the alternative tool with the condition that selects it ('to list all knowledge sources and their sync status, use list_knowledge_sources'). This is explicit when-to-use plus a named alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
11 tool updates
- First observed
add_trained_answer - First observed
fetch - First observed
get_insights - First observed
get_support_overview - First observed
list_knowledge_sources - First observed
list_leads - First observed
list_recent_conversations - First observed
list_training_gaps - First observed
list_unanswered_questions - First observed
search - First observed
search_knowledge
Related MCP Connectors
- UserportOAuthio.userport
Read and answer support conversations, and run outbound email and chat sequences, from your AI.
Manage AI support chatbots: train on webpages and text, search knowledge, view leads and questions.
1Live chat + AI support inbox: list, triage, and reply to customer conversations; configure widgets.
Build a customer support AI agent from your website, then analyze conversations and improve it.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceTalk to your SaaS tools including HubSpot, Salesforce, and more61 npm50MIT
- FlicenseBqualityFmaintenanceTransform your non-existent or unreadable docs into an intelligent, searchable knowledge base that actually answers those 'basic questions' before they're asked.1135-
- FlicenseNot gradedqualityBmaintenanceEnables collection and scoring of sales chat conversations via CDP, computing response times and generating evidence-linked LLM quality reviews.-
- AlicenseNot gradedqualityDmaintenanceEnables AI-driven customer support operations including conversation management, knowledge base, contacts, metrics, and settings via MCP.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.