Skip to main content
Glama
iseppo

e-arveldaja MCP Server

by iseppo

Prepare Dividend Distribution

prepare_dividend_package

Calculate dividend corporate income tax under Estonian rules and draft corresponding journal entries, ensuring compliance with retained earnings and net asset requirements.

Instructions

Calculate dividend CIT (22/78 from 2025-01-01; earlier dates date-gated) and create draft journal entries. Only the NET dividend debits retained earnings (Jaotamata kasum); the CIT books as a current-period income-tax expense (P&L 'Tulumaks' line), never a direct reduction of retained earnings — so the ENTIRE retained-earnings balance is distributable as net dividend (ÄS § 157 lg 1). Hard-blocks a net dividend exceeding retained earnings, or a distribution whose gross effect (net + CIT) would push net assets below share capital + restricted reserves (ÄS § 157 lg 2), unless force=true. Reports max_net_dividend. Requires an approved annual report and a profit-distribution decision — attach the decision to the journal with attach_document.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNoCreate journal even if retained earnings are insufficient (default false)
dry_runNoPreview calculation and postings without creating journal (default false)
net_dividendYesNet dividend amount to shareholder (EUR)
effective_dateYesDistribution date (YYYY-MM-DD)
tax_payable_accountNoDividend income-tax payable (liability) account (default: auto-detect 'Dividenditulumaksu võlg', standard 2656)
share_capital_accountNoShare capital account for ÄS §157 net-assets check (default: auto-detect 'Osakapital', standard 2900)
shareholder_client_idYesShareholder client ID
dividend_payable_accountNoDividend payable account (default: auto-detect 'Dividendivõlad', standard 2650)
retained_earnings_accountNoRetained earnings account debited with the NET dividend (default: auto-detect 'jaotamata kasum', standard 2960)
income_tax_expense_accountNoIncome-tax expense account debited with the CIT — the P&L 'Tulumaks' line (default: lowest Kulud account in 8900–8999, else 8900)
restricted_reserve_accountsNoAccounts whose balances ÄS §157(2) makes non-distributable (net assets must stay above share capital + these reserves). Default: auto-detect every 'Kohustuslik reservkapital' account (active or inactive) AND always the standard reserve number 2940, so a funded-but-renamed 2940 is never missed; only booked balances raise the floor, so unfunded accounts add nothing. If your chart has REPURPOSED 2940 to a distributable reserve, pass this list explicitly (e.g. [] for no floor, or your real reserve account) to override the 2940 default.
Behavior5/5

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

The description discloses key behavioral traits: it creates draft journal entries (mutation), hard-blocks insufficient retained earnings or net assets constraints, and explains the accounting treatment (CIT as expense, not retained earnings reduction). Annotations show no hints (readOnlyHint=false), so the description carries the full burden and does so excellently. No contradictions.

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 dense but well-organized, covering all necessary aspects without redundancy. It is somewhat long, but every sentence adds unique value (legal references, accounting rules, default behaviors). Minor improvement would be brevity, but it remains clear.

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?

Given 11 parameters, 3 required, and no output schema, the description thoroughly explains the tool's behavior, constraints, and prerequisites. It mentions reporting max_net_dividend, though no output schema exists. It covers edge cases (date-gated CIT rate, force option) and provides sufficient context for complex accounting logic.

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

Parameters5/5

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

Schema coverage is 100%, yet the description adds significant value beyond the schema. It explains default accounts, auto-detection logic, and the legal implications (ÄS §157). For example, the restricted_reserve_accounts parameter is described with detailed default behavior, which the schema does not cover.

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 clearly states the tool calculates dividend CIT and creates draft journal entries. It specifies the accounting treatment and legal constraints, distinguishing it from any sibling tools (none of which are about dividend distribution). The verb 'calculate' and 'create' combined with 'dividend' make the purpose 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?

The description explains when to use this tool for dividend distribution, mentions prerequisites (approved annual report, profit-distribution decision), and conditions for use (e.g., net dividend ≤ retained earnings unless force=true). It does not explicitly mention alternatives, but the context is clear enough given the sibling tools are unrelated.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/iseppo/e-arveldaja-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server