Skip to main content
Glama
atomno-mcp

mcp-fns-calc

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_FNS_CALC_TOKENNoAPI key for live checks and fresh rates (Pro tier). Optional, calculators work without it.
MCP_FNS_CALC_TIMEOUTNoHTTP timeout in seconds.30
MCP_FNS_CALC_API_BASENoBase URL of the hosted backend.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
calc_vatA

Compute Russian VAT (НДС): add on top of net or extract from gross (NK RF art. 164, 168).

When to use

  • Invoice line: net→gross (mode=add) or gross→net+VAT (mode=extract).

  • USN taxpayers on special VAT rates 5% or 7% (from 2025 rules).

  • Quick sanity check before bookkeeping export.

When NOT to use

  • VAT declaration filing, multi-rate invoices, or export/zero-rate cases.

  • Mixed taxable/exempt lines — sum per line in accounting software.

Parameters

  • amount: base sum in RUB (net for add, gross for extract).

  • rate: 20, 10, 0, 5, or 7 (percent).

  • mode: add | extract.

Returns: {net, vat, gross, rate, mode, formula, article, disclaimer, snapshot_date}.

Limitations: read-only, offline, single-rate line; no side effects. Example: amount=100000, rate=20, mode=add → vat=20000, gross=120000.

calc_usnA

Calculate simplified tax (USN/УСН): 6% on income or 15% income-minus-expense with minimum tax (NK RF ch. 26.2).

When to use

  • Estimate USN tax for a quarter/year before payment.

  • Object income (6%): deduct paid IP contributions (capped at 50% if has_employees).

  • Object income_minus_expense (15%): apply minimum tax 1% of income if 15% base is lower.

When NOT to use

  • Exact advance-payment calendar or KKT cash reporting.

  • Taxpayers above USN income limits — check get_rates for limits first.

Parameters: income, obj, expenses, rate (regional override), contributions_paid, has_employees, advances_paid.

Returns: {tax, base, rate, min_tax, contributions_deduction, advances, formula, article, disclaimer}.

Limitations: read-only, offline; regional rates optional; subtracts advances_paid from result.

calc_insurance_ipA

IP fixed insurance contributions + 1% on income above 300k RUB (NK RF art. 430).

When to use: annual IP self-contribution estimate; set months<12 for partial year. When NOT to use: employee payroll — use payroll tools; amounts for closed years without snapshot check. Side effects: read-only, deterministic, offline; rates from bundled snapshot.

Returns: {fixed, extra_1pct, total, income, year, months, formula, article, disclaimer}.

calc_ndflA

Progressive personal income tax (NDFL/НДФЛ) 2025+ with per-bracket breakdown (NK RF art. 224).

When to use: estimate annual NDFL on salary or IP income after deductions. When NOT to use: monthly withholding by employer — use payroll; non-resident rates not modeled. Side effects: read-only, deterministic, offline; no auth or network.

Returns: {tax_total, taxable_base, brackets[], formula, article, disclaimer, snapshot_date}.

calc_patentA

Patent taxation (PSN/ПСН) cost: potential income × 6% × months/12 minus contributions (NK RF ch. 26.5).

When to use: compare patent cost vs USN for an activity; potential_income from regional law. When NOT to use: eligibility/OKVED limits — verify with FNS; employee-heavy cases need manual review. Side effects: read-only, deterministic, offline; no auth or network.

Returns: {patent_cost, before_deduction, contributions_deduction, months, formula, article, disclaimer}.

calc_penaltyA

Estimate late-payment tax penalty (пени) per NK RF art. 75 using the CBR key rate.

When to use

  • Quick what-if: how much penalty accrues on a known arrears amount and delay in days.

  • Org vs IP/individual: orgs use 1/300 for days 1–30, then 1/150; IP and individuals use 1/300 for all days.

  • Before a payment plan or negotiation — ballpark figure, not a filing document.

When NOT to use

  • Multi-period calculation where the key rate changed during the delay (this tool uses one flat rate).

  • Penalties on non-tax debts (commercial loans, fines outside NK art. 75).

  • Official amount on a tax notice — always take the figure from FNS/LK; use this tool only for estimates.

Parameters

  • amount: principal arrears in RUB (non-negative).

  • days: calendar days of delay (0 → penalty 0).

  • key_rate: annual CBR %; omit to use bundled snapshot default (response includes warning_ru if default used).

  • payer: org | ip | individual — selects the 1/300 vs 1/150 split for legal entities.

Returns (dict)

  • penalty (float): total penalty in RUB, rounded to kopecks.

  • amount, days, key_rate, payer: echo inputs used in the formula.

  • formula (str): human-readable breakdown.

  • article: "ст. 75 НК РФ".

  • snapshot_date, disclaimer, source: metadata for audit trail.

  • warning_ru (optional): present when key_rate was taken from snapshot, not passed explicitly.

Limitations

  • Single key rate for the whole period; for rate changes call get_rates(fresh=true) and run per sub-period manually.

  • Does not include other sanctions (штрафы) under NK art. 122/123 — only пени art. 75.

  • Read-only, offline, deterministic; no side effects; idempotent for identical inputs.

Examples

  • Org, 100_000 RUB, 45 days, key_rate=21: days 1–30 @ amount×21%/300×30 + days 31–45 @ amount×21%/150×15.

  • IP, 50_000 RUB, 10 days: amount×rate%/300×10 for all days.

  • days=0 → penalty=0 regardless of amount.

get_ratesA

Tax rates and limits: offline snapshot (default) or live hosted pull (fresh=true, Pro key).

When to use

  • Before calc_penalty: pass fresh CBR key_rate or read cbr_key_rate_default from snapshot.

  • Before calc_usn/calc_insurance_ip: verify USN income limits and IP contribution fixed amounts.

  • kinds filter narrows response: cbr_key_rate | ip_fixed_contrib | usn_limits | ndfl_scale | deflator.

When NOT to use

  • Legal interpretation of limits — snapshot may lag; use fresh=true for production DD.

Parameters

  • fresh: false (default) = bundled snapshot, no network; true = hosted API (MCP_FNS_CALC_TOKEN).

  • kinds: optional list to subset tables.

Returns: rate tables, snapshot_date (offline) or live payload + disclaimer.

Limitations: fresh=true requires Pro token; snapshot date fixed at package build time.

check_selfemployedA

Check self-employed (NPD/НПД) status by taxpayer INN via FNS open data. Requires Pro API key.

When to use: before paying a sole proprietor as individual — mandatory NPD verification. When NOT to use: offline what-if math — use calculators; without token returns missing_token error. Side effects: read-only HTTPS to hosted backend; no local data mutation. Needs MCP_FNS_CALC_TOKEN.

Returns: {is_selfemployed, inn, checked_at, source, disclaimer} or error/missing_token.

check_ip_statusA

IP registration status, OKVED and EGRIP dates by 12-digit INN. Requires Pro API key.

When to use: confirm counterparty is active IP before contract/payment. When NOT to use: full EGRUL extract — use mcp-egrul; offline mode unavailable. Side effects: read-only HTTPS; needs MCP_FNS_CALC_TOKEN.

Returns: {status, inn, okved, registration_date, ... disclaimer} or error.

check_disqualifiedA

Match against FNS disqualified persons register by INN or FIO. Requires Pro API key.

When to use: compliance screen before appointing director/signatory; provide inn or fio. When NOT to use: sole evidence for legal decisions — result is indicative, verify manually. Side effects: read-only HTTPS; needs MCP_FNS_CALC_TOKEN. At least one of inn/fio required.

Returns: {matches[], query, disclaimer} or validation/error.

check_account_blockA

Bank account operation suspension info from FNS (10–12 digit INN). Requires Pro API key.

When to use: treasury/compliance check before large outbound payment. When NOT to use: real-time bank balance — different service; offline unavailable. Side effects: read-only HTTPS; needs MCP_FNS_CALC_TOKEN.

Returns: {suspended, inn, details, disclaimer} or error.

check_tax_arrearsA

Tax arrears / debt flags from FNS Transparent Business open data. Requires Pro API key.

When to use: counterparty due diligence alongside mcp-fns-check; 10–12 digit INN. When NOT to use: official debt certificate — request from FNS; offline unavailable. Side effects: read-only HTTPS; needs MCP_FNS_CALC_TOKEN.

Returns: {has_arrears, inn, amounts[], disclaimer} or error.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/atomno-mcp/mcp-fns-calc'

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