Renew
Server Details
Renew keeps approved renewal terms for a customer: the entitlements they already have, what may be offered at renewal, and what an assistant must not add or discount. A 14-day trial, then Pro. The price is only at checkout.
Glama couldn't complete the latest health check. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 10 tools
The three record_* tools are cleanly separated by kind (entitlement, concession rule, renewal offer), and the read tools mostly target distinct needs. However, get_approved_context and renew_audit both surface the approved renewal record with only subtle framing differences, which could cause misselection.
Every tool follows a consistent verb_noun snake_case pattern (create_account, get_approved_context, record_renewal_offer, revise_approved_fact, search_approved_terms). No mixed conventions or vague verbs.
Ten tools is well-scoped for a renewal-fact management server, with each tool covering a distinct operation over the domain's resources. No redundant or filler tools.
The surface covers account creation/listing and the full fact lifecycle (record, retrieve, search, history, revise, audit) with lock/revision semantics. Minor gaps exist around account mutation and explicit deletion, though the append-only/locked model makes deletion largely unnecessary.
Available Tools
10 toolscreate_accountcreate accountBInspect
Create a new private customer account when the user asks. Does not save entitlements, renewal offers, or concession rules.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| description | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, so the write-and-not-destructive profile is covered. The description adds a useful scope constraint (what it does not persist), but says nothing about auth requirements, side effects, or whether repeated calls duplicate accounts.
Agents need to know what a tool does to the 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 with the core action front-loaded and the exclusion placed second. No filler; slightly terse at the cost of completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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. However, for a creation tool with 0% parameter description coverage and no annotations about uniqueness or permissions, the definition leaves real gaps an agent would care about.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across both parameters; the schema gives only types and length limits. The description mentions no parameters at all, so it fails to compensate for the undocumented 'name' and 'description' fields, including whether the name must be unique.
Input schemas describe structure but not intent. Descriptions should explain 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 ('Create a new private customer account') with a scope qualifier ('private'), which is clearer than the bare title. It does not explicitly position itself against siblings like list_accounts or the record_* tools, so sibling differentiation is only partial.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'when the user asks' is thin trigger guidance. The negative clause ('Does not save entitlements, renewal offers, or concession rules') roughly carves out territory belonging to siblings like record_current_entitlement and record_renewal_offer, but no alternative tool is named and no prerequisites are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_approved_contextget approved contextARead-onlyIdempotentInspect
Retrieve the approved renewal record before answering about a renewal. request is a brief topic query, never a chat transcript. Results are a selection; use search_approved_terms for a specific missing term. If a concession, a discount, or an extra entitlement is not approved, the result says so. Do not invent one. Locked facts must not be contradicted.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| request | Yes | ||
| accountId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/closed-world, but the description adds real behavioral context: results are a selection rather than exhaustive, negative outcomes are surfaced explicitly, and locked facts must not be contradicted. It does not cover rate limits or result shape, but the output schema handles returns.
Agents need to know what a tool does to the 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 core action, then constraints in short, scannable sentences. Slightly choppy and mildly redundant ('the result says so. Do not invent one'), but essentially every sentence carries an instruction.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 described, and the description still states that results are a selection and that unapproved entitlements surface as such. Combined with the usage timing and request-format guidance, this is nearly complete for a read tool, missing only per-parameter detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must carry parameters. It adds meaningful semantics for `request` (a brief topic query, never a chat transcript) but says nothing about `accountId` or `limit`; the latter is largely self-documenting via defaults/bounds in the schema. Partial compensation only.
Input schemas describe structure but not intent. Descriptions should explain 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 the approved renewal record, and frames it as a prerequisite to answering renewal questions. It distinguishes itself from the sibling search_approved_terms, though the notion of an "approved renewal record" (vs. a broader approval set) stays slightly fuzzy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 an explicit when ('before answering about a renewal') and an explicit alternative with its selecting condition ('use search_approved_terms for a specific missing term'). The agent is routed correctly without inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fact_historyget fact historyBRead-onlyIdempotentInspect
Read previous and new content for a saved approved renewal fact, newest first. No changes are made.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | ||
| renewalTermId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so 'No changes are made' largely restates structured data. The genuinely additive detail is the 'newest first' ordering of revisions; nothing is said about pagination behavior or the auth/scope needed to read a specific renewal term.
Agents need to know what a tool does to the 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 filler; the ordering rule and the read-only nature come first. The closing sentence is largely redundant given readOnlyHint, so it does not fully earn 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 output schema covers return values and annotations cover safety, so the description's main remaining obligations are usage routing and parameter meaning, and it falls short on both. An agent knows what the tool reads but not how to page through results or when it beats its siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description explains none of the two parameters: it never says renewalTermId identifies which fact's history to fetch, nor that offset is a pagination cursor that pairs with the 'newest first' ordering. With no schema-level documentation to fall back on, this leaves both parameters under-specified.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Read) and a precisely scoped resource (previous and new content for a saved approved renewal fact), plus an ordering rule (newest first). It implicitly distinguishes itself from mutating siblings like revise_approved_fact, but never names an alternative or explicitly contrasts with get_approved_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 phrase 'saved approved renewal fact' implies this is used to inspect the revision trail of a fact after it has been approved or changed, which is a reasonable usage hint. However, there is no explicit when-to-use statement and no guidance on when to prefer get_approved_context or search_approved_terms instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_accountslist accountsARead-onlyIdempotentInspect
Find the user’s saved customer accounts before answering or editing. Use the returned ID; do not guess an account. Page with offset.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
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 fully covered by structured data. The description adds only 'Page with offset' as new behavior, which is thin but accurate; no mention of result limits, ordering, or what happens on an empty page.
Agents need to know what a tool does to the 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, front-loaded sentences with no filler: the purpose, the operating instruction, and the pagination note each earn their 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 values need not be explained, and the description usefully connects the returned ID to subsequent actions. It is complete enough for a simple read-only list tool, with only minor gaps around pagination bounds.
Complex tools with many parameters or behaviors need more documentation. 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 at 0% schema description coverage, the description partially compensates by stating 'Page with offset', revealing that offset drives pagination. It omits the default (0), the upper bound (100000), and any page-size semantics, leaving the schema's bare integer under-explained.
Input schemas describe structure but not intent. Descriptions should explain 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 ('Find the user's saved customer accounts'), which clearly separates it from write-oriented siblings like create_account and record_* tools. It does not name a sibling alternative explicitly, but the read/retrieve intent 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?
Gives clear triggering context ('before answering or editing') and a strong directive ('Use the returned ID; do not guess an account') that tells the agent how to act on the result. It stops short of naming alternative tools for lookup, but the when-to-use guidance is concrete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
record_current_entitlementrecord current entitlementADestructiveIdempotentInspect
Save an entitlement the customer already has, only after the owner approves the exact wording. LOCKED means the entitlement is established. An existing locked entitlement cannot be changed here; the owner revises it with revise_approved_fact. Existing entries require expectedRevision from retrieval. Identical retries leave history unchanged. Do not invent an entitlement the customer does not have.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| title | Yes | ||
| status | Yes | ||
| content | Yes | ||
| accountId | Yes | ||
| revisionReason | No | ||
| expectedRevision | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare idempotentHint=true, destructiveHint=true, and readOnlyHint=false. The description adds meaningful semantics beyond those: LOCKED status meaning, immutability of locked entitlements here, expectedRevision requirements for existing entries, and unchanged history on identical retries. It does not fully clarify the scope of destructive behavior, but the added context is substantial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is dense but front-loaded: it starts with the core action and approval condition, then adds key constraints. Every sentence carries operational meaning, with no filler or repeated schema information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema and annotations exist, so return values and safety hints are covered elsewhere. However, for a seven-parameter mutation tool with 0% schema description coverage, the description is incomplete because it omits semantics for most input 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?
Schema description coverage is 0%, so the description must compensate for seven parameters. It explains expectedRevision and touches on status via LOCKED, but leaves accountId, title, content, tags, revisionReason, and the rest of the status enum unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: saving an entitlement the customer already has. It distinguishes this tool from revise_approved_fact by saying locked entitlements cannot be changed here and must be revised elsewhere. It also explicitly warns against inventing entitlements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit conditions: only after the owner approves the exact wording, existing entries require expectedRevision from retrieval, and locked entries must use revise_approved_fact. The warning 'Do not invent an entitlement the customer does not have' further constrains 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.
record_forbidden_concessionrecord forbidden concessionBDestructiveIdempotentInspect
Save either an owner-approved forbidden concession or the rule that no extra concession is approved. decision FORBIDDEN stores only the concession, discount, or extra entitlement the owner said must not be added. decision NONE stores that no extra concession is approved. Do not invent a concession. A locked rule stays locked until the owner revises it. Existing entries require expectedRevision. Identical retries leave history unchanged.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| terms | No | ||
| title | No | Concession policy | |
| status | Yes | ||
| decision | Yes | ||
| accountId | Yes | ||
| revisionReason | No | ||
| expectedRevision | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare write, destructive, and idempotent behavior, but the description adds meaningful context beyond them: locked rules stay locked until owner revision, existing entries need expectedRevision, and identical retries leave history unchanged. It does not contradict the annotations, though it does not spell out the destructive effect of an overwrite.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core action and decision semantics, and every sentence adds a behavioral or validation rule. It is dense but not bloated, though a little repetition around owner approval 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?
The description is adequate for purpose and key constraints, and the output schema and annotations relieve it of return-value and safety detail. However, with 0% schema description coverage on eight parameters and no sibling routing, several invocation details remain unclear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for eight parameters, so the description must carry parameter meaning. It explains decision FORBIDDEN/NONE and mentions expectedRevision for existing entries, but leaves accountId, tags, terms, title, status values, and revisionReason undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious 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 ('Save') and resource ('forbidden concession' or the rule that none is approved), and distinguishes the two decision modes. It does not, however, name or differentiate itself from sibling tools such as record_current_entitlement or record_renewal_offer, so an agent still has to infer the boundary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 via owner-approved decisions and warns 'Do not invent a concession' and that existing entries require expectedRevision. It never states when not to use it or which sibling tool to choose for a different kind of record.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
record_renewal_offerrecord renewal offerADestructiveIdempotentInspect
Save what may be offered at renewal, only after the owner approves the exact wording. Do not invent a concession, a discount, or an extra entitlement. An existing locked offer stays locked until the owner revises it. Existing entries require expectedRevision. Identical retries leave history unchanged.
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | ||
| title | Yes | ||
| status | Yes | ||
| content | Yes | ||
| accountId | Yes | ||
| revisionReason | No | ||
| expectedRevision | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructive=true and idempotent=true. The description adds real value beyond them: locked offers stay locked until the owner revises, existing entries require expectedRevision (optimistic concurrency), and identical retries leave history unchanged. Only the idempotency point is redundant 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?
Five short sentences, front-loaded with the core action and followed by constraints. Each sentence carries a rule, though a couple (approval gate, no-invention) overlap in intent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 explanation, and the description covers the approval gate, locking, revision, and idempotency well. It is still incomplete for a 7-parameter tool with 0% schema coverage, leaving most fields undefined.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% across 7 parameters, so the description must carry the burden. It explains only expectedRevision (required for existing entries) and indirectly touches status via 'locked'; accountId, title, content, tags, revisionReason, and the LOCKED/DEVELOPING/UNKNOWN/RETIRED enum are left undocumented.
Input schemas describe structure but not intent. Descriptions should explain 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 ('Save what may be offered at renewal'), which distinguishes it from siblings like record_current_entitlement and record_forbidden_concession. The domain is clear, though it never explicitly names those 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?
Gives a concrete precondition ('only after the owner approves the exact wording') and a negative constraint ('Do not invent a concession, a discount, or an extra entitlement'). That is clear context for when to use it, but it stops short of naming which sibling to choose instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renew_auditrenew auditBRead-onlyIdempotentInspect
Show the locked approved record and what the assistant must not add or discount. If a concession, a discount, or an extra entitlement is absent, it is not approved. If no extra concession is approved, the result says so. This tool supplies evidence; it does not save or approve anything. Page with offset before claiming a complete audit.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | ||
| accountId | Yes | ||
| proposedText | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
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. The description adds real behavioral context on top: it supplies evidence only, never saves/approves, explains the absence semantics ('if a concession... is absent, it is not approved'), and warns about pagination before claiming a complete audit. Return-pagination behavior is a genuinely useful disclosure not present in 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 lead sentence is front-loaded and the pagination warning is well-placed at the end. But the middle sentences are repetitive, particularly 'If no extra concession is approved, the result says so', which restates the prior sentence's logic with no added 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-value structure need not be described. The description adequately covers the read-only contract and pagination caveat, but leaves the two required parameters undocumented, which is a substantive gap for a tool whose central input is the proposed text being audited.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for three parameters. It only addresses 'offset' indirectly via 'Page with offset', and says nothing about accountId (a required UUID) or proposedText (a required 1-12000 char string). The most important input – the text being audited – is left completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says it will 'Show the locked approved record' and describe 'what the assistant must not add or discount', which conveys a read-only audit of approved constraints. However, the verb+resource relationship is fuzzy: it never states that it audits the supplied proposedText against the approved record, so an agent cannot fully predict the output from the name plus description. Siblings like get_approved_context are not differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'This tool supplies evidence; it does not save or approve anything' implicitly separates it from write siblings such as create_account or record_renewal_offer, and 'Page with offset before claiming a complete audit' gives a concrete usage condition. But there is no explicit statement of when to choose this over get_approved_context or search_approved_terms, so guidance 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.
revise_approved_factrevise approved factADestructiveIdempotentInspect
Owner revision of an existing entitlement, renewal offer, or concession rule, including a LOCKED fact. Preserve the existing title and kind. Requires expectedRevision from retrieval. Conflicting edits fail without overwriting. Identical retries leave history unchanged. Do not use this to invent a concession, a discount, or an extra entitlement the owner did not supply.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| tags | No | ||
| title | Yes | ||
| status | Yes | ||
| content | Yes | ||
| accountId | Yes | ||
| revisionReason | Yes | ||
| expectedRevision | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial behavior beyond the annotations: it discloses optimistic-concurrency semantics ('Requires expectedRevision from retrieval', 'Conflicting edits fail without overwriting'), retry behavior ('Identical retries leave history unchanged'), and a preservation invariant ('Preserve the existing title and kind'). These details materially extend the safety/idempotency profile the annotations only sketch.
Agents need to know what a tool does to the 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 tightly packed sentences with the purpose front-loaded, followed by invariants, concurrency, retry, and exclusion rules. No filler; each sentence carries operational weight.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 explanation, and annotations plus description together cover safety, idempotency, and concurrency. The remaining gap is the undocumented non-required parameters, which a caller could still get wrong.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 8 params, so the description must compensate. It adds real meaning for expectedRevision (source from retrieval), title/kind (must be preserved), and status (LOCKED facts editable), but accountId, content, revisionReason, and tags remain undocumented anywhere. Partial compensation only.
Input schemas describe structure but not intent. Descriptions should explain 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 ('revision of an existing') and enumerates the resource types it governs (entitlement, renewal offer, concession rule, including a LOCKED fact). This clearly separates it from the create-oriented siblings like record_current_entitlement and record_forbidden_concession and from read-only siblings like get_fact_history.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 explicit positive context ('owner revision of an existing fact') and a strong negative exclusion ('Do not use this to invent a concession, a discount, or an extra entitlement the owner did not supply'). It does not name a specific sibling to use for the excluded case, so it falls just short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_approved_termssearch approved termsARead-onlyIdempotentInspect
Search saved entitlements, renewal offers, and concession rules by literal title or content, or browse every entry with an empty query and offset. An empty result means that term is not approved. Do not fill it in. Use this to verify a fact before revising it.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | ||
| offset | No | ||
| accountId | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description adds genuinely useful behavioral rules: empty results mean the term is not approved, and the agent must not fill it in. That is real guidance beyond the structured fields, though pagination/offset bounds are left unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three front-loaded sentences: capability, empty-query behavior, then usage. Each earns its place; 'Do not fill it in' is terse and slightly ambiguous on its own but serves the anti-hallucination intent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. 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 needn't be described, and the description covers matching semantics, browse mode, and the empty-result rule. The main omission is that accountId is the required scoping parameter and is never acknowledged.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description has to carry the load. It clarifies that query is a literal title/content match and that an empty query plus offset browses all entries, but accountId, the 200-char maxLength, and the offset ceiling are never 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?
States a specific verb (search) and concrete resources (saved entitlements, renewal offers, concession rules), plus a browse mode. It doesn't name sibling tools directly, but the closing phrase 'verify a fact before revising it' implicitly separates it from revise_approved_fact.
Agents choose between tools based on descriptions. A clear purpose with a specific verb 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 a clear trigger ('use this to verify a fact before revising it') and explains the empty-query browse case. No explicit when-not-to-use or sibling alternative (e.g., get_approved_context) is named, so it stops short of the top tier.
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.
10 tool updates
- First observed
create_account - First observed
get_approved_context - First observed
get_fact_history - First observed
list_accounts - First observed
record_current_entitlement - First observed
record_forbidden_concession - First observed
record_renewal_offer - First observed
renew_audit - First observed
revise_approved_fact - First observed
search_approved_terms
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.1622 npm1MIT
- AlicenseCqualityBmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs1114 npm40 PyPIMIT
- AlicenseAqualityCmaintenanceRevnuvo Company Intelligence tells AI agents what changed at a company, with evidence. It observes company websites, technologies, and DNS over time and returns timestamped, confidence-aware changes, signals, and monitoring.9MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.