Skip to main content
Glama

fixed-assets

Server Details

Keep a fixed asset register: cost, depreciation to date, disposals and net book value.

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
Repository
theluckystrike/mcp-servers
GitHub Stars
0

TDQS

A4.2/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct lifecycle step or reporting view: add, delete, dispose, list, schedule, journal, report, plus license activation/status. asset_add and asset_schedule are adjacent but clearly separated by 'add to register' vs 'build/price a schedule'.

Naming Consistency5/5

All tools use the same lowercase snake_case domain-prefixed pattern (asset_*, license_*), and the second element is a clear operation such as add, delete, dispose, list, report, or schedule. This makes the set predictable and easy to navigate.

Tool Count5/5

Nine tools is well-scoped for a fixed-asset register: seven cover the asset lifecycle and reporting, and two cover the free/Pro licensing that gates paid features. There are no redundant or filler tools.

Completeness4/5

Core lifecycle coverage is strong: create, list, depreciate, dispose, delete, journal, and report are all present. The main gap is an update/edit tool for correcting asset metadata after creation, but this can often be worked around via delete and re-add while an asset has no dependencies.

Available Tools

9 tools
asset_addAdd a fixed assetAInspect

Add one fixed asset to the register and return its id with the rate, useful life and convention taken from the bundled tax table. Cost and residual are whole minor units. Free tier holds ten assets.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesWhat the asset is, e.g. "MacBook Pro 16" or "Delivery van"
noteNo
methodNo"straight-line" or "declining-balance". Default: the table row method, straight-line for the Polish annex and the reducing-balance pool rate for the UK
schemeNo"pl" Polish KST annex rates, "uk" HMRC capital allowance pools, "us" IRS MACRS GDS. Omit to derive it from the shared business profile currency
projectNoProject, department or cost centre this asset belongs to
categoryYesA code or name from the bundled table, e.g. "487" or "Computers and computer sets" (pl), "main" (uk), "5-year" (us). Read assets://categories for the list
currencyNoISO code. Defaults to the shared business profile currency, else the scheme table currency
rate_pctNoOverride the annual percentage derived from the table. Use for a lowered Polish rate under art. 16i
cost_minorYesAcquisition cost in MINOR units (integer cents/grosze), e.g. 549900 for 5499.00. Never a decimal
life_yearsNoOverride the useful life derived from the table, in years. The answer reports that it was an override
purchase_dateYesISO date YYYY-MM-DD the asset was bought
residual_minorNoResidual or salvage value in MINOR units, default 0. Must be less than cost. MACRS ignores it and the answer says so
in_service_dateNoISO date YYYY-MM-DD the asset entered use and the register. Defaults to purchase_date
declining_coefficientNoDeclining-balance coefficient. Polish default 2.0, capped by the table; ignored with straight-line

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With all annotations false, the description carries the transparency burden and does a good job: it discloses the return payload (id, rate, useful life, convention), the minor-units rule for monetary fields, and the ten-asset free-tier limit. It does not discuss failure or reversibility, but the essential side effects and return behavior are clear.

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 sentences, front-loaded with the primary action and return behavior. The minor-units warning and free-tier limit are genuinely useful constraints, and there is no filler or repetition of schema content.

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?

Because there is no output schema and no helpful annotations, the description usefully covers the return shape, the derived tax values, the minor-units convention, and the capacity limit. It is nearly complete for a create tool, though it leaves failure-mode and alternative-tool guidance unstated.

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 93%, so the schema already documents the parameters thoroughly. The description only restates the minor-units convention for cost and residual, which the schema already states, and adds no new parameter-level meaning beyond that.

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 opens with 'Add one fixed asset to the register', naming the exact action, object, and destination, and additionally states what it returns. This clearly distinguishes it from lifecycle siblings like asset_dispose, asset_delete, and asset_schedule.

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?

The creation context is unmistakable from the verb 'Add' and the register target, and the free-tier cap gives useful capacity context. However, it never explicitly names alternatives or states when not to use this tool, so it relies on the agent inferring usage from the title and sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_deleteDelete an assetA
Destructive
Inspect

Remove one asset from the register when nothing depends on it: not disposed of, never journaled. Its free-tier slot is free again. An asset with a dependent is refused and the dependent is named. Free.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetYesAsset id such as ASSET-2026-0001, or an exact or partial name

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark the tool as destructive, and the description goes beyond that by explaining that dependent assets cause refusal and the dependent is named. It also adds the free-tier-slot consequence, which is useful behavioral context 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short and front-loaded with the core action. The final 'Free.' is slightly redundant with the earlier free-tier-slot sentence, but overall every sentence contributes to the agent's understanding with minimal waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter destructive operation with no output schema, the description is complete: it states the action, the eligibility condition, the consequence on success, and the failure behavior. 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.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter is fully described in the schema, including the expected id format and the exact/partial-name option. The description adds no additional parameter semantics, so the baseline score of 3 is appropriate given 100% schema coverage.

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 action ('Remove one asset from the register') and immediately distinguishes itself from sibling lifecycle tools by clarifying the asset must not be disposed of or journaled. This lets an agent cleanly separate asset_delete from asset_dispose and asset_journal.

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?

It clearly says when to use the tool: only when nothing depends on the asset. It also gives the rejection behavior for dependents. However, it does not explicitly name the alternative tools to use for disposal or journaling, so the routing guidance is implied rather than fully explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_disposeDispose of an assetAInspect

Record that an asset left the business on a date and return the gain or loss against net book value. proceeds_minor is in MINOR units. Depreciation stops here, and a second disposal is refused.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateYesISO date YYYY-MM-DD the asset left the business. It cannot be before the in-service date
noteNoWhat happened, e.g. sold to a dealer, written off after a fire
assetYesAsset id such as ASSET-2026-0001, or an exact or partial name
proceeds_minorNoSale proceeds in MINOR units, default 0 for a scrapping or a write-off

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations describing behavior, the description carries the burden and discloses important effects: depreciation stops here, a second disposal is refused, and a gain or loss is returned. It does not mention authorization needs or downstream accounting effects, but the most critical behavioral traits are surfaced.

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 two dense sentences with no filler. It front-loads the core action, then adds the unit note and the two essential behavioral constraints. Every sentence earns its 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?

Given four parameters, no output schema, and no annotations, the description covers the main purpose, the return value, and key behavioral constraints. It could add a little more about the expected asset state or relationship to other accounting records, but it is adequate for correct invocation.

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 100%, and each parameter already has a meaningful description, so the baseline is 3. The added note that 'proceeds_minor is in MINOR units' repeats the schema's own MINOR units description and adds no new semantic value.

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 clearly states a specific action and resource: 'Record that an asset left the business on a date and return the gain or loss against net book value.' This makes the tool's purpose evident and distinguishes it from a generic delete or list operation, though it does not explicitly compare with sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear usage context: use this tool when an asset leaves the business and a disposal gain or loss must be recorded. It does not name alternative tools like asset_delete or asset_journal, so there are no explicit exclusions or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_journalJournal the month's depreciationAInspect

Return the depreciation journal for one month: debit depreciation expense and credit accumulated depreciation, per asset and in total, plus an expense_add-ready payload per currency. It writes no expense. Pro.

ParametersJSON Schema
NameRequiredDescriptionDefault
monthYesThe month to journal, YYYY-MM. A date YYYY-MM-DD is read as its month
schemeNoOnly assets on this tax scheme
projectNoOnly assets on this project or cost centre
categoryNoExpense category to put on the expense_add payload. Default "depreciation"
expense_accountNoDebit account name. Default "Depreciation expense"
accumulated_accountNoCredit account name. Default "Accumulated depreciation"

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Given the annotations are all false and provide little safety signal, the description usefully discloses that it 'writes no expense,' which prevents the agent from assuming this journals or posts. It also specifies the returned components. It could add more about required permissions or whether anything else is mutated, but the core behavioral ambiguity is addressed.

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 compact and front-loads the purpose before listing output details. 'It writes no expense' is valuable clarification. The stray 'Pro.' at the end is unexplained and low-value, which prevents a 5.

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?

For a tool with no output schema, the description conveys the main return shape: debit/credit journal entries, per-asset and total figures, and a currency-specific expense_add-ready payload. It does not detail the exact response structure, but the essential decision-making information is present. The unexplained 'Pro.' adds minor noise.

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 100%, so the parameters are already documented in the input schema. The description adds general output context but does not explain month, scheme, project, category, or account parameters beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Return the depreciation journal for one month.' It also names the exact accounting entries (debit depreciation expense, credit accumulated depreciation) and the output granularity (per asset, in total, expense_add-ready payload). This clearly distinguishes it from siblings like asset_delete or asset_dispose.

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: to get a depreciation journal without posting an expense, reinforced by 'It writes no expense.' However, it does not explicitly name alternatives or state when not to use this tool, leaving the routing decision mostly to inference from the title and sibling names.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_listList the fixed asset registerA
Read-onlyIdempotent
Inspect

List the assets in the register with cost, method, rate and net book value at a date, filtered by scheme, category, project, currency or disposal state. Free and unlimited.

ParametersJSON Schema
NameRequiredDescriptionDefault
as_ofNoValue the register at this month or date, YYYY-MM or YYYY-MM-DD. Default today
limitNoMaximum rows, default and ceiling 2000
schemeNoOnly assets on this tax scheme
projectNoOnly assets on this project or cost centre
categoryNoOnly assets in this table category code or name
currencyNoOnly assets held in this currency
include_disposedNoInclude assets already disposed of. Default false

TDQS

A3.8/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 read-only behavior is covered. The description adds useful extra behavioral context by noting that the tool is 'Free and unlimited,' which communicates cost and rate-limit characteristics beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence that front-loads the core action, the returned financial fields, the valuation date, and the filter dimensions. There is no filler or redundancy.

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?

For a read-only list with 100% parameter schema coverage dunes, the description is nearly complete: it states output fields, supported filters, date sensitivity, and cost/limits. It does not explicitly mention pagination defaults, but those are documented in the limit parameter, so nothing critical is missing.

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 100%, so parameters are already well-documented in the schema. The description adds a high-level summary of filter dimensions and output fields, but no meaning beyond what the schema properties already state, matching the baseline.

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 clearly states the exact purpose: listing fixed-asset register rows with cost, method, rate, and net book value at a given date, with several named filters. This distinguishes it from the mutation siblings, though it does not explicitly contrast it with asset_report or asset_schedule, so it stops short of a full 5.

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 intended use is implied: call this when you need a filtered list of fixed-asset register values at a date. However, there are no explicit when-to-use or when-not-to-use conditions, nor any mention of when asset_report or asset_schedule would be a better fit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_reportReport the registerA
Read-onlyIdempotent
Inspect

For one year: net book value by category, scheme and currency at as_of, the year's depreciation charge per currency, and every disposal with its gain or loss. Pro; asset_list and asset_schedule are free per-asset views.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNoCalendar year to report, e.g. 2026. Default the year of as_of, else this year
as_ofNoValue the register at this month or date, YYYY-MM or YYYY-MM-DD. Default the last day of the year
schemeNoOnly assets on this tax scheme
projectNoOnly assets on this project or cost centre

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds the Pro restriction and the year/as_of scoping, but it does not disclose return format, pagination, or access-failure behavior.

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?

Two dense sentences carry the full output contract and the sibling contrast without filler. The essential metrics are front-loaded before the access/alternative note.

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?

With no output schema, the description successfully conveys the report's contents and grouping dimensions. It stops short of specifying the exact response shape or how disposals are presented, and the 'Pro' restriction is hinted but not detailed.

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 100%, and the schema already documents year, as_of, scheme, and project with defaults and enum values. The description reinforces year/as_of semantics but adds no parameter-level detail beyond the schema, meeting the baseline.

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 precisely enumerates what the report contains: net book value by category/scheme/currency at as_of, annual depreciation per currency, and disposals with gains/losses. The closing clause distinguishes it from asset_list and asset_schedule, making its purpose unmistakable despite the missing explicit verb.

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?

The first sentence establishes this as the annual aggregated register report, while the last sentence names the free per-asset alternatives. It does not fully spell out a when-not rule, but the contrast between a Pro aggregate report and free per-asset views is enough to route an agent correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

asset_scheduleBuild a depreciation scheduleAInspect

Build the depreciation schedule for a stored asset, or price one not in the register, per year or per month, to residual or zero, with the table's rate, life and convention. Periods sum exactly to the base.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetNoAsset id such as ASSET-2026-0001, or an exact or partial name. Omit and pass the fields below to price an asset that is not in the register
methodNo"straight-line" or "declining-balance"
schemeNoScheme, when pricing an asset that is not in the register
categoryNoTable category code or name, when pricing an asset that is not in the register
currencyNoISO code, when pricing an asset that is not in the register
rate_pctNoOverride the annual percentage from the table
cost_minorNoCost in MINOR units, when pricing an asset that is not in the register
life_yearsNoOverride the useful life from the table, in years
granularityNo"year" for one row per period, "month" for the monthly charge. Default "year"
purchase_dateNoISO date YYYY-MM-DD, when pricing an asset that is not in the register
residual_minorNoResidual in MINOR units, default 0
in_service_dateNoISO date YYYY-MM-DD the asset entered use. Defaults to purchase_date
declining_coefficientNoDeclining-balance coefficient; ignored with straight-line

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are all false, so the description carries the burden. It discloses that periods sum exactly to the base, which is a useful behavioral guarantee. It also mentions using the table's rate, life, and convention, and the option to override. It doesn't mention idempotency or side effects, but the computation nature is clear.

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?

Two sentences, front-loaded with the core action and scope, then a precise guarantee about period summation. Every word earns its place; no fluff.

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?

For a computation tool with 13 parameters but no required ones, the description plus schema covers the modes, defaults, and overrides. No output schema exists, but the description doesn't need to explain return values per the rubric. It could mention what happens when both asset and pricing fields are provided, but that's a minor gap.

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 100%, so the schema already documents all 13 parameters. The description adds context about the two modes (stored asset vs. not in register) and the override options, but doesn't add much beyond the schema's per-parameter descriptions. Baseline 3 is appropriate.

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 ('Build'), a clear resource ('depreciation schedule'), and the key scope options (stored asset vs. not in register, per year/month, to residual/zero). It distinguishes itself from siblings like asset_add or asset_report by focusing on the depreciation schedule computation.

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?

The description implies when to use it: to build a depreciation schedule for a stored asset or price one not in the register. It doesn't explicitly name alternatives or exclusions, but the sibling list shows other asset operations, and the description's scope is clear enough for an agent to select it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

license_activateActivate licenseAInspect

Turn Pro on for this connection with key, an MCPL1.. issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYesLicense key from checkout, MCPL1.<payload>.<signature>

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate this is not read-only and not destructive, and the description adds useful behavioral detail: existing data under the token stays, and a wrong or expired key changes nothing. This goes beyond the annotation hints by explaining failure semantics and safety of the operation.

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 two sentences with no filler. It front-loads the core action, then gives the key format and safety guarantees, and closes with the verification tool. Every sentence contributes essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter activation tool with annotations covering the safety profile, the description is complete: it states what the tool does, what input is needed, what happens on failure, and how to confirm success. There is no missing critical information for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents the key parameter and its format with 100% coverage. The description adds meaning by specifying that the key must be issued at checkout for this server or the bundle, which clarifies validity requirements not present in the schema.

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 uses a specific verb and resource: it 'turns Pro on' for the connection using a license key. It also distinguishes itself from the sibling license_status tool by saying license_status confirms the activation. This leaves no ambiguity about what the tool accomplishes.

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?

The description provides clear context for use: the key must be an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. It does not explicitly list exclusions or alternative tools, but it does reference license_status as the confirmation path, giving the agent a sense of the workflow.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

license_statusLicense statusA
Read-onlyIdempotent
Inspect

Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds useful context beyond annotations by specifying the JSON response contents and stating 'nothing changes,' reinforcing the read-only nature of the call.

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?

Two dense sentences cover output, purpose, usage context, and side-effect guarantee. Every sentence earns its place and the most important information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description sufficiently describes the return value. With no parameters, annotations covering safety, and a clear use case, nothing essential is missing for an agent to invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters and the schema already fully documents that fact. The description explicitly says 'No arguments,' which is accurate and reinforces the schema without needing further elaboration.

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 begins with a specific verb ('Report') and a precise resource ('this endpoint's licence state for your token'), and enumerates the exact output fields: product, tier, reason, and checkout URL. This clearly distinguishes it from sibling tools like license_activate.

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?

The description explicitly states when to call it: 'Call it to explain a free-tier refusal.' This is clear contextual guidance, though it does not name alternatives or explicitly state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 9 tool updates
    • First observedasset_add
    • First observedasset_delete
    • First observedasset_dispose
    • First observedasset_journal
    • First observedasset_list
    • First observedasset_report
    • First observedasset_schedule
    • First observedlicense_activate
    • First observedlicense_status

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    Accounting MCP server for the French LMNP tax status (furnished rentals, e.g. Airbnb hosts). 44 tools to manage properties, income and expenses, compute component-based depreciation and fiscal results, and generate the official French tax return (2031/2033) and FEC accounting export.
    45
    4
    AGPL 3.0
  • A
    license
    A
    quality
    A
    maintenance
    Full double-entry accounting on local GnuCash books: transactions (single and batch), invoices and bills, budgets, investment lots, scheduled transactions, reconciliation, and reports. Multi-currency and multi-book aware, with a plain-text audit trail of every write. Your data never leaves your machine.
    87
    70
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.