Sri Lanka Tax (lk-tax)

io.github.ShalomHunukumburav0.1.0更新于 Oct 5, 2026

Exact, sourced Sri Lankan tax calculations: APIT, income tax, withholding tax, VAT and SSCL.

已验证STDIO仅桌面FinanceData & Analytics

概览

AI 生成的概览

让助手依据带日期的斯里兰卡税务局规则计算 APIT、所得税、预扣税、增值税和 SSCL,而不是凭记忆报税率。

功能
提供只读的斯里兰卡税务计算工具:calculate_salary_tax 计算每月 APIT,calculate_annual_income_tax 给出年度所得税及税档明细,calculate_withholding_tax 覆盖多种付款类型,calculate_vat 用于加计或剥离增值税,另有 check_vat_registration、calculate_sscl、check_sscl_registration、get_tax_rules 和 get_rule_history。每次计算都需传入适用日期,因此采用当时生效的规则;结果包含摘要、精确的十进制金额以及所用的规则版本和 IRD 来源。
适用场景
适合需要以精确、带日期和出处的方式回答斯里兰卡工资税、所得税、增值税或 SSCL 问题的场景,例如对比 2025 年 4 月税档调整前后的 APIT。不适用于一次性款项、非居民雇员、增值税免税分类以及 2023 年之前的日期。
运行要求
作为本地 stdio 进程运行;README 说明需要 uv,用 uvx lk-tax-mcp 启动,或用 pip 安装。未声明任何认证、环境变量或请求头,README 称其不需要网络访问、文件或凭据。
安装前请注意
README 称其为只读且离线,不索取任何凭据。它是计算器而非税务建议,README 也说明存在未覆盖之处,如一次性款项、非居民雇员、增值税免税分类和 2023 年之前的日期,因此结果应对照所引用的 IRD 来源核实。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Sri Lanka Tax (lk-tax),将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

lk-tax-mcp

Exact, sourced Sri Lankan tax calculations for AI assistants. An MCP server that lets Claude (or any MCP client) calculate APIT, income tax, withholding tax, VAT and SSCL from the official Inland Revenue Department rules for any date since 1 January 2023, instead of recalling rates from memory.

What it looks like

A real Claude Code session with only this server connected:

You: I'm paid Rs. 350,000 a month in Sri Lanka. How much APIT will my employer deduct this month, and how much was it before the April 2025 change?

Claude calls calculate_salary_tax twice, once for today and once for 31 March 2025, and answers (abridged):

This month: Rs. 32,500 APIT. The first Rs. 150,000/month is tax-free, then 6% / 18% / 24% / 30%. Source: IRD Notice PN/IT/2025-01 and APIT Tax Table No. 01 (2025/26). In force since 1 April 2025.

Before the change (to 31 March 2025): Rs. 52,500. Rs. 100,000/month tax-free, then 6% / 12% / 18% / 24% / 30% / 36%. Source: APIT Tax Table No. 01 (2023/24 & 2024/25).

So you now pay Rs. 20,000 less per month. This assumes it's your regular pay from your main job and you're a Sri Lankan tax resident; one-off bonuses or a second job use different tables.

The numbers come from the tool, the caveats come from the server's instructions, and every figure is traceable to an IRD document.

Why

Language models are confident about tax rates, and Sri Lanka's change often: in 2025 the salary tax bands were rebuilt, and in 2026 alone the SSCL threshold dropped, VAT on financial services rose to 20.5% and withholding tax was extended to more professions, all mid-year. A model recalling "the rate" is wrong for some dates and has no source to show. This server gives the model exact arithmetic over dated, sourced rules, built on lk-tax, which is tested against every row of the IRD's official APIT tables.

Install

Requires uv (uvx runs the server without a manual install).

Claude Code

bash
claude mcp add lk-tax -- uvx lk-tax-mcp

Claude Desktop: add to claude_desktop_config.json (Settings → Developer → Edit Config):

json
{  "mcpServers": {    "lk-tax": { "command": "uvx", "args": ["lk-tax-mcp"] }  }}

Any other MCP client: run uvx lk-tax-mcp as a stdio server, or pip install lk-tax-mcp and run lk-tax-mcp.

Tools

ToolAnswers
calculate_salary_taxAPIT to deduct from a month's salary (official Tax Table No. 01 amount)
calculate_annual_income_taxIncome tax for a year of assessment, with band breakdown
calculate_withholding_taxWHT on 11 payment types: thresholds, exemptions, grossing up
calculate_vatAdd VAT to a price or extract it from a VAT-inclusive price
check_vat_registrationDoes a business need to register for VAT?
calculate_ssclSSCL on turnover by activity (liable share × 2.5%)
check_sscl_registrationDoes a business need to register for SSCL?
get_tax_rulesRates, bands and thresholds in force on a date
get_rule_historyEvery change to a tax since 2023, with dates and sources

Every result includes a one-line summary, exact amounts as decimal strings, and the rule version used (effective_from, effective_to, IRD sources).

Design notes

  • Read-only and offline. Every tool is a pure calculation, annotated readOnlyHint and idempotentHint. No network access, no files, no credentials.
  • Dates are explicit. Each calculation takes the date it applies to (pay date, invoice date), so "what was it last year?" gets last year's rules.
  • Errors the model can act on. Bad input comes back as a tool error explaining what to fix (monthly_income must be a number, lk-tax covers 2023-01-01 onwards), not a generic failure.
  • Choices are enumerated. Payment types and SSCL activities are enums in the schema, each described, so the model picks a valid one.
  • Honest about gaps. The server instructions tell the model what isn't covered (lump sums, non-resident employees, VAT exemption classification, dates before 2023) and to say so rather than estimate.

Development

bash
uv syncuv run pytest                    # includes a test that launches the real command over stdiouv run mcp dev src/lk_tax_mcp/server.py   # explore the tools in the MCP Inspector

Built with the MCP Python SDK v2.

Disclaimer

Not tax advice. Results link to the IRD sources they come from, so you can check them.

License

MIT

来源:README.md,提交 7688c98

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v0.1.0最新Oct 5, 2026