Skip to main content
Glama

Mizan: Zakat owed on cash, gold, silver, shares and business stock

mizan_calculate_zakat
Read-onlyIdempotent

Mizan. Zakat owed on cash, gold, silver, shares and business stock, using live gold and silver prices.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cashNoCash and bank balances.
nisabNoWhich nisab to use. Defaults to silver.
currencyNoDefaults to USD.
gold_gramsNoGold held, in grams.
gold_valueNoOr the value of gold held.
owed_to_youNoMoney owed to you that you expect to be repaid.
silver_gramsNoSilver held, in grams.
silver_valueNoOr the value of silver held.
debts_due_nowNoDebts due now, deducted.
business_stockNoValue of business stock for sale.
shares_tradingNoMarket value of shares held for trading (counted in full)
shares_longtermNoMarket value of shares held long term.
share_zakatable_pctNoShare of long-term holdings treated as zakatable, default 25.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • changedInput schema / properties / business_stock / description
      Previous value: -"Value of business stock for sale"New value: +"Value of business stock for sale."
    • changedInput schema / properties / cash / description
      Previous value: -"Cash and bank balances"New value: +"Cash and bank balances."
    • changedInput schema / properties / debts_due_now / description
      Previous value: -"Debts due now, deducted"New value: +"Debts due now, deducted."
    • changedInput schema / properties / gold_grams / description
      Previous value: -"Gold held, in grams"New value: +"Gold held, in grams."
    • changedInput schema / properties / gold_value / description
      Previous value: -"Or the value of gold held"New value: +"Or the value of gold held."
    • changedInput schema / properties / owed_to_you / description
      Previous value: -"Money owed to you that you expect to be repaid"New value: +"Money owed to you that you expect to be repaid."
    • changedInput schema / properties / share_zakatable_pct / description
      Previous value: -"Share of long-term holdings treated as zakatable, default 25"New value: +"Share of long-term holdings treated as zakatable, default 25."
    • changedInput schema / properties / shares_longterm / description
      Previous value: -"Market value of shares held long term"New value: +"Market value of shares held long term."
    • changedInput schema / properties / silver_grams / description
      Previous value: -"Silver held, in grams"New value: +"Silver held, in grams."
    • changedInput schema / properties / silver_value / description
      Previous value: -"Or the value of silver held"New value: +"Or the value of silver held."
  2. First observed

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), so the description's only added behavioral fact is that valuation uses live gold and silver prices – useful context explaining why results vary over time. It says nothing about the calculation method, output shape, or how nisab affects the result.

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. It is efficient, though it is arguably too terse given the 13-parameter surface it fronts, and the second sentence largely echoes the title.

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?

For a 13-parameter financial calculation with all-optional inputs and no output schema, the description never says what the tool returns (zakat due, nisab threshold applied) or that all inputs may be supplied independently. The schema covers inputs adequately, but the omitted result description leaves a gap an agent would notice.

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 every parameter, including defaults (silver nisab, USD, 25% share zakatable), is documented in the schema itself. The description adds no syntax, unit, or default information beyond what the schema already states, so the baseline 3 applies.

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 names the resource (zakat owed) and enumerates the exact asset classes covered – cash, gold, silver, shares, business stock – which lets an agent distinguish it from mizan_purify_dividend and mizan_screen_company. It does not state the verb explicitly (the name carries 'calculate'), but the scope 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 Guidelines2/5

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

There is no statement of when to use this tool versus its mizan siblings, no mention of prerequisites, and no guidance on the nisab or currency choices despite them being meaningful inputs. Usage is only implied by the asset list.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.