Skip to main content
Glama

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

A3.8/5.0

Scored across 10 tools

Disambiguation4/5

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.

Naming Consistency5/5

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.

Tool Count5/5

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.

Completeness4/5

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 tools
create_accountcreate accountBInspect

Create a new private customer account when the user asks. Does not save entitlements, renewal offers, or concession rules.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
descriptionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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 contextA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
requestYes
accountIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.1/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines5/5

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 historyB
Read-onlyIdempotent
Inspect

Read previous and new content for a saved approved renewal fact, newest first. No changes are made.

ParametersJSON Schema
NameRequiredDescriptionDefault
offsetNo
renewalTermIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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 accountsA
Read-onlyIdempotent
Inspect

Find the user’s saved customer accounts before answering or editing. Use the returned ID; do not guess an account. Page with offset.

ParametersJSON Schema
NameRequiredDescriptionDefault
offsetNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.8/5.0
Behavior3/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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 entitlementA
DestructiveIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleYes
statusYes
contentYes
accountIdYes
revisionReasonNo
expectedRevisionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.2/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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 concessionB
DestructiveIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
termsNo
titleNoConcession policy
statusYes
decisionYes
accountIdYes
revisionReasonNo
expectedRevisionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.4/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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 offerA
DestructiveIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNo
titleYes
statusYes
contentYes
accountIdYes
revisionReasonNo
expectedRevisionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.6/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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 auditB
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
offsetNo
accountIdYes
proposedTextYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.1/5.0
Behavior4/5

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.

Conciseness3/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose3/5

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.

Usage Guidelines3/5

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 factA
DestructiveIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
tagsNo
titleYes
statusYes
contentYes
accountIdYes
revisionReasonYes
expectedRevisionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.4/5.0
Behavior5/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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 termsA
Read-onlyIdempotent
Inspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNo
offsetNo
accountIdYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.9/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines4/5

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.

  1. 10 tool updates
    • First observedcreate_account
    • First observedget_approved_context
    • First observedget_fact_history
    • First observedlist_accounts
    • First observedrecord_current_entitlement
    • First observedrecord_forbidden_concession
    • First observedrecord_renewal_offer
    • First observedrenew_audit
    • First observedrevise_approved_fact
    • First observedsearch_approved_terms

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables 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.
    16
    22 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources