CalcBloc tax and salary calculator

io.github.itmarkerz由 GitHub 帳號 itmarkerz 發布v0.1.3更新於 Nov 14, 2026

Take-home pay, employer cost and official tax tables for 41 countries, with sources.

發布方自己的服務:Calculator Tools MCP

已驗證STDIO僅桌面金融資料與分析

概覽

AI 產生的概覽

計算稅後實領薪資、雇主用人成本與跨國薪資比較,並查詢 37 個國家的官方所得稅與社會安全費率表。

可以做什麼
  • 計算扣除所得稅與員工提撥後的實領薪資,並提供年度、月度與每週明細
  • 計算包含雇主社會保險與薪資相關費用的總用人成本
  • 依歐洲央行參考匯率比較兩國相同薪資水準
  • 依國家、年度與地區查詢官方稅率表(稅級、免稅額、提撥率與門檻)
  • 列出支援的國家、稅務年度、地區以及各項計算可接受的選項
適用情境
適合讓助理回答實領薪資、用人成本或招募成本問題,或取得附有政府來源的官方稅級與門檻,例如比較不同國家的薪資方案或核對某地區的稅率。
執行需求
需要 Node.js 20 或更新版本,透過 npx 在本機執行;另提供遠端託管端點。計算需要連線至 CalcBloc API 的網路存取。可選的免費 API 金鑰(CALCBLOC_API_KEY)可提高每日額度;可選的資料目錄(CALCBLOC_DATA_DIR)可離線讀取稅率表。
安裝前請注意
沒有金鑰時免費額度較小(每日 50 次請求),用量大時需申請金鑰。結果為估算值,不構成稅務建議,應核對所引用的官方來源。薪資數字與國家資訊會傳送至 CalcBloc API。所有工具皆為唯讀。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 CalcBloc tax and salary calculator,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

CalcBloc MCP server: take-home pay, employer cost and official tax tables for AI assistants

[npm version] [MCP Registry] [License: MIT]

calcbloc-mcp is a Model Context Protocol (MCP) server that lets AI assistants work out take-home pay, employer cost and cross-country salary comparisons, and look up official income tax and social security tables, using CalcBloc data. It covers 41 countries, including the United States (all states), the United Kingdom, Canada, Australia, India, Germany, France, Spain and the Netherlands. Every answer states the tax year, links the official government sources behind the rates, and carries the credit "Data by CalcBloc".

CalcBloc is a product of itmarkerz technologies.

Install with npx -y calcbloc-mcp (npm package). The server is listed in the official MCP Registry as io.github.itmarkerz/calcbloc-mcp.

Contents

What it does

Ask your assistant things like:

  • "What is my take-home pay on $85,000 in California, filing single?"
  • "How much does it cost a German employer to hire someone on €60,000?"
  • "Compare £50,000 in Scotland with the same salary in Germany."
  • "Show me the 2026 Ontario income tax brackets and where they come from."
  • "What are the UK National Insurance thresholds for 2026-27?"

The server provides five read-only tools:

ToolWhat it returns
calculate_take_home_payNet pay after income tax and employee contributions, with a yearly, monthly and weekly breakdown
calculate_employer_costSalary plus employer social security, payroll taxes and other on-costs
compare_countriesThe same salary in two countries, converted at the European Central Bank reference rate
get_tax_tablesOfficial tax tables (bands, allowances, contribution rates and thresholds) for a country, year and region
list_countriesSupported countries, tax years, regions and the options each calculation accepts

Calculations run on CalcBloc's public API (calcbloc.com/developers), the same engines and data as the calculators on calcbloc.com. Every result includes:

  • the tax year the figures apply to;
  • the official source URLs (government or statutory publications) for the rates used, with the date each was last checked;
  • the calcbloc.com page for the result (calculator or tax-table page);
  • the credit "Data by CalcBloc" and a short note that the figures are an estimate, not tax advice.

Tax tables are available for all 41 countries. Take-home pay calculations currently cover 12 of them (US, UK, Canada, Australia, New Zealand, Ireland, India, Germany, France, Spain, the Netherlands and Singapore); for the others the tools say so and link the country's tax tables. list_countries always shows the live list.

Quick start

Requirements: Node.js 20 or newer.

bash
npx -y calcbloc-mcp

The server talks MCP over stdio, so you normally do not run it yourself: you add it to your AI client with the snippets below, and the client starts it when needed. No API key is required. A free key raises the daily limit (see Limits and caching).

Remote server (no install)

The same five tools are also hosted at https://calcbloc.com/mcp (Streamable HTTP, no sign-in). Use it in clients that connect to MCP servers by URL, such as custom connectors on claude.ai or Claude Desktop (Settings > Connectors > Add custom connector), or in Claude Code:

bash
claude mcp add --transport http calcbloc https://calcbloc.com/mcp

Without a key, each address gets 500 tool API calls a day (30 a minute) within a shared daily total. To use your own free key (5,000 a day), send it as the X-API-Key header, for example claude mcp add --transport http calcbloc https://calcbloc.com/mcp --header "X-API-Key: your-free-key", or as Authorization: Bearer your-free-key.

Set up your AI client

All clients use the same command, npx -y calcbloc-mcp. The CALCBLOC_API_KEY entry is optional: leave it out, or paste your free key from calcbloc.com/developers/keys.

Claude Desktop

Open Settings > Developer > Edit Config and add the server to claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\, Linux: ~/.config/Claude/):

json
{  "mcpServers": {    "calcbloc": {      "command": "npx",      "args": ["-y", "calcbloc-mcp"],      "env": {        "CALCBLOC_API_KEY": "your-free-key"      }    }  }}

Quit and restart Claude Desktop.

Claude Code

bash
claude mcp add --transport stdio calcbloc -- npx -y calcbloc-mcp

With an API key, available in all your projects:

bash
claude mcp add --transport stdio --scope user --env CALCBLOC_API_KEY=your-free-key calcbloc -- npx -y calcbloc-mcp

To share it with a project, add it to .mcp.json at the project root and keep the key in your environment:

json
{  "mcpServers": {    "calcbloc": {      "command": "npx",      "args": ["-y", "calcbloc-mcp"],      "env": { "CALCBLOC_API_KEY": "${CALCBLOC_API_KEY:-}" }    }  }}

Cursor

Add to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):

json
{  "mcpServers": {    "calcbloc": {      "command": "npx",      "args": ["-y", "calcbloc-mcp"],      "env": { "CALCBLOC_API_KEY": "your-free-key" }    }  }}

VS Code (GitHub Copilot)

Add to .vscode/mcp.json, or run MCP: Add Server from the Command Palette. VS Code asks for the key the first time and stores it securely:

json
{  "inputs": [    {      "type": "promptString",      "id": "calcbloc-api-key",      "description": "CalcBloc API key (optional, leave empty for anonymous use)",      "password": true    }  ],  "servers": {    "calcbloc": {      "type": "stdio",      "command": "npx",      "args": ["-y", "calcbloc-mcp"],      "env": { "CALCBLOC_API_KEY": "${input:calcbloc-api-key}" }    }  }}

Or from a terminal, without a key:

bash
code --add-mcp '{"name":"calcbloc","type":"stdio","command":"npx","args":["-y","calcbloc-mcp"]}'

Windsurf and Devin

Devin Desktop and Devin CLI read ~/.config/devin/mcp_config.json (Windows: %APPDATA%\devin\mcp_config.json) or .devin/mcp_config.json in a project. Windsurf uses the same mcpServers format in its MCP settings (raw config):

json
{  "mcpServers": {    "calcbloc": {      "command": "npx",      "args": ["-y", "calcbloc-mcp"],      "env": { "CALCBLOC_API_KEY": "your-free-key" }    }  }}

OpenAI Codex (CLI, IDE extension and app)

bash
codex mcp add calcbloc -- npx -y calcbloc-mcp

or in ~/.codex/config.toml:

toml
[mcp_servers.calcbloc]command = "npx"args = ["-y", "calcbloc-mcp"]
[mcp_servers.calcbloc.env]CALCBLOC_API_KEY = "your-free-key"

Other MCP clients

Any client that can start a local (stdio) MCP server works: use the command npx with the arguments -y calcbloc-mcp, and optionally set CALCBLOC_API_KEY in its environment.

Tools

All tools are read-only and idempotent, and declare an output schema; results come back as readable text plus structuredContent that matches the schema.

calculate_take_home_pay

ArgumentTypeNotes
countrystring, requiredCode or name: us, uk, canada, india, germany, "United Kingdom"...
gross_salarynumber, requiredGross salary in the country's currency. Annual everywhere except Singapore (monthly).
regionstringWhere the calculation varies by region: US state (ca), UK nation (scotland), Canadian province (on), Spanish community (md), German state (by), Indian state (mh).
yearstringDefaults to the current tax year (2026 or 2026-27). Earlier years are available as tax tables.
optionsobjectCountry-specific options, e.g. US {"filing_status": "married", "children": 2}, UK {"pension_pct": 5, "student_loan": "plan2"}, Germany {"tax_class": 3, "church": true}. list_countries lists every option.

Returns net annual pay, total deductions and effective rate where available, the engine's full results, a yearly/monthly/weekly breakdown, notes and the inputs used.

calculate_employer_cost

Same arguments as calculate_take_home_pay (with employer options such as UK pension_mode or US health_per_month). Returns the total yearly and monthly cost, the cost multiplier where available, and a breakdown of employer contributions.

compare_countries

ArgumentTypeNotes
country_a, country_bstring, requiredTwo different countries with calculations.
gross_salarynumber, requiredAnnual gross salary in currency.
currencystringCountry A's or country B's currency (ISO code). Default: country A's.
region_a, region_bstringRegion for the US, UK, Canada or India.

Returns both sides (gross, income tax, contributions, take-home pay, effective rate, assumptions), the exchange rate and date, the difference, and a plain-English summary.

get_tax_tables

ArgumentTypeNotes
countrystring, requiredAny of the 41 countries.
yearstringDefault: latest. Some countries also have the previous year (for example UK 2025-26).
regionstringRegional table: US state, Canadian province, UK nation (Scotland, Wales), Swiss canton, Spanish community, Italian region, and others.
groupstringOnly income-tax, employee, employer or other sections.
sectionsstring[]Only these section ids.

Returns each section's rows (bands with from/to/rate, or values with units), its basis, notes and official source, plus links to the tax-table page, the JSON API and a CSV download. Very long tables return a section index first, so the assistant can ask for the part it needs.

list_countries

Without arguments, lists every country with its current tax year and which tools work for it. With country, also lists its regions and every calculation option, with allowed values and defaults.

Sample calls

These are real responses from the server (recorded with the MCP SDK client over stdio; the figures come from the CalcBloc API on 11 November 2026). Long source lists are shortened.

Take-home pay, £50,000 in Scotland

json
{ "name": "calculate_take_home_pay", "arguments": { "country": "uk", "gross_salary": 50000, "region": "scotland" } }
text
Take-home pay in United Kingdom (Scotland), tax year 2026-27Gross salary: GBP 50,000.00 (annual gross salary in GBP)Take-home pay: GBP 38,024.07 a yearEffective deduction rate: 23.95%
Your pay in 2026/27 (Year | Month | Week, GBP):- Gross salary: 50,000.00 | 4,166.67 | 961.54- Income Tax: 8,982.05 | 748.50 | 172.73- National Insurance: 2,993.88 | 249.49 | 57.57- Take-home pay: 38,024.07 | 3,168.67 | 731.23...Calculator: https://calcbloc.com/uk/take-home-pay-calculatorTax tables: https://calcbloc.com/uk/tax-tables/2026-27/scotland
Official sources:- HMRC: Income Tax rates and allowances for current and previous tax years (updated 6 April 2026): https://www.gov.uk/government/publications/rates-and-allowances-income-tax/income-tax-rates-and-allowances-current-and-past (checked 2026-10-16)- GOV.UK: Rates and thresholds for employers 2026 to 2027 (Class 1 National Insurance thresholds and rates): https://www.gov.uk/guidance/rates-and-thresholds-for-employers-2026-to-2027 (checked 2026-10-16)...
Estimate for information only, not tax, legal or financial advice. Figures follow the official sources listed; check them, or ask a qualified adviser, before making decisions.Data by CalcBloc: https://calcbloc.com/uk/take-home-pay-calculator (licence CC BY 4.0, https://calcbloc.com/data)

The matching structuredContent (shortened):

json
{  "country": "uk",  "countryName": "United Kingdom",  "region": "scotland",  "taxYear": "2026-27",  "currency": "GBP",  "grossSalary": 50000,  "netAnnual": 38024.07,  "effectiveRate": 0.2395186,  "results": { "netMonthly": 3168.6725, "incomeTax": 8982.05, "employeeNi": 2993.88, "employerNi": 6749.4 },  "taxTablesUrl": "https://calcbloc.com/uk/tax-tables/2026-27/scotland",  "sources": [{ "title": "HMRC: Income Tax rates and allowances ...", "url": "https://www.gov.uk/government/publications/rates-and-allowances-income-tax/income-tax-rates-and-allowances-current-and-past", "retrievedAt": "2026-10-16" }],  "calcblocUrl": "https://calcbloc.com/uk/take-home-pay-calculator",  "attribution": "Data by CalcBloc",  "licence": "CC BY 4.0",  "disclaimer": "Estimate for information only, not tax, legal or financial advice. ..."}

Employer cost, €60,000 in Germany

json
{ "name": "calculate_employer_cost", "arguments": { "country": "germany", "gross_salary": 60000 } }
text
Employer cost in Germany, tax year 2026Gross salary: EUR 60,000.00 (annual gross salary in EUR (above the Midijob range))Total cost to the employer: EUR 73,392.00 a yearMonthly cost: EUR 6,116.00
Employer cost of a €60,000 salary (Berlin) (Year | Month, EUR):- Gross salary: 60,000.00 | 5,000.00- Pension insurance (employer half): 5,580.00 | 465.00- Unemployment insurance (employer half): 780.00 | 65.00- Health insurance (employer half): 5,250.00 | 437.50- Long-term care insurance (employer half): 1,080.00 | 90.00- U1 sick-pay levy (0.8%): 480.00 | 40.00- U2 maternity levy (0.22%): 132.00 | 11.00- U3 insolvency levy (0.15%): 90.00 | 7.50- Total employer cost: 73,392.00 | 6,116.00...Data by CalcBloc: https://calcbloc.com/germany/germany-employer-cost-calculator (licence CC BY 4.0, https://calcbloc.com/data)

Compare the UK and Germany at £50,000

json
{ "name": "compare_countries", "arguments": { "country_a": "uk", "country_b": "germany", "gross_salary": 50000 } }
text
Salary comparison: United Kingdom vs Germany, GBP 50,000.00 a year
England, United Kingdom (tax year 2026-27):- Gross: GBP 50,000.00- Income Tax: GBP 7,486.00- National Insurance: GBP 2,993.88- Take-home pay: GBP 39,520.12 (20.96% deducted)...Germany (tax year 2026):- Gross: EUR 59,941.26- Wage tax: EUR 9,372.00...- Take-home pay: EUR 37,532.10 (37.39% deducted)...Exchange rate: 1 GBP = 1.1988 EUR, rates as of 6 November 2026 (European Central Bank reference rates)Comparison page: https://calcbloc.com/compare/salary

Ontario income tax tables

json
{ "name": "get_tax_tables", "arguments": { "country": "canada", "region": "on", "group": "income-tax" } }
text
Tax tables: Canada, Ontario, tax year 2026 (in force 2026-01-01 to 2026-12-31)Currency: CAD. Status: verified.
### Ontario income tax brackets(section: provincial-income-tax; group: income-tax; basis: Taxable income, per year)- 0 to 53,891 at 5.05%- 53,891 to 107,785 at 9.15%- 107,785 to 150,000 at 11.16%- 150,000 to 220,000 at 12.16%- 220,000 and above at 13.16%Source: T4127 Payroll Deductions Formulas, 122nd Edition, effective January 1, 2026 (CRA), ..., https://www.canada.ca/content/dam/cra-arc/formspubs/pub/t4127-jan/t4127-01-26e.pdf (checked 2026-10-25)...

A country without calculations yet

json
{ "name": "calculate_take_home_pay", "arguments": { "country": "austria", "gross_salary": 50000 } }
text
Take-home pay calculation is not available for Austria yet. Its official 2026 tax tables are available: call get_tax_tables with country "austria", or see https://calcbloc.com/austria/tax-tables/2026.

Configuration

All settings are optional environment variables, set in your client's env block:

VariableDefaultPurpose
CALCBLOC_API_KEYnoneOptional; needed after 50 requests a day. Free API key from calcbloc.com/developers/keys, sent as the X-API-Key header on every request (5,000 requests a day, 60 a minute).
CALCBLOC_DATA_DIRnoneFolder with a copy of the CalcBloc tax-table data. Tax tables are read from it first (see Offline tax tables).
CALCBLOC_API_URLhttps://calcbloc.com/api/v1API base URL (for testing).
CALCBLOC_TIMEOUT_MS20000Request timeout in milliseconds.
CLAUDE_PLUGIN_OPTION_CALCBLOC_API_KEYnoneThe same API key under the name the CalcBloc Claude plugin passes it (plugin/). CALCBLOC_API_KEY wins when both are set. Empty values and unfilled placeholders such as ${user_config.calcbloc_api_key} count as no key.

Limits and caching

The CalcBloc API is free. Without a key it allows 50 requests a day and 5 a minute per IP address; a free key allows 5,000 a day and 60 a minute. When the keyless allowance runs out (the API answers 429, or reports X-RateLimit-Remaining: 0), the tool error says the free allowance without a key is used up and continues "Add your free API key": it links to calcbloc.com/developers/keys and says to set it as CALCBLOC_API_KEY in this server's env block and restart. Until the limit resets the server sends no more requests (each tool call answers with the same message at once); offline tax tables from CALCBLOC_DATA_DIR keep working. With a key, a limit message gives the key's limits and when to try again.

To save requests, the server keeps the country list and tax tables in memory for six hours. The first calculation for a country uses up to four requests (country list, calculation, and the national and regional tax tables that supply the official source links); later calculations for the same country use one. Tax-table lookups use one request per table, or none when a local data folder is set.

Offline tax tables

The tax tables are also published as open data (JSON and CSV) at calcbloc.com/data. If you keep a copy, point CALCBLOC_DATA_DIR at it (either the repository root or its tables folder, which contains manifest.json). get_tax_tables then reads from the folder without using the API, and keeps working when the API cannot be reached. Calculations always need the API.

The data is not bundled in the npm package: it is about 10 MB, and tables are updated when governments publish changes, so a bundled copy would go out of date between releases.

Development

bash
git clone https://github.com/itmarkerz/calcbloc-mcp.gitcd calcbloc-mcpnpm installnpm run buildnpm test
  • npm test builds the server and runs the unit tests (mocked HTTP) and an end-to-end test that starts dist/index.js over stdio with the MCP SDK client against a local mock of the API.

  • npm run inspector opens the MCP Inspector on the built server. From the command line:

    bash
    npx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/listnpx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/call --tool-name list_countries --tool-arg country=uk
  • To use a local build in a client, replace npx -y calcbloc-mcp with node /path/to/calcbloc-mcp/dist/index.js.

Built with the official MCP TypeScript SDK v2 (@modelcontextprotocol/server 2.4), which implements the 2026-07-28 MCP specification. Node.js 20 or newer.

Data, licence and credit

  • Tax data: CalcBloc, licensed CC BY 4.0. Credit: "Data by CalcBloc (calcbloc.com/data)". Each figure is taken from the official source named next to it, with the date it was last checked.
  • Code: MIT licence, see LICENSE.
  • Results are estimates for information only and are not tax, legal or financial advice.

Links

About

CalcBloc is built and maintained by itmarkerz technologies, a web and mobile app development company in Kerala, India. The data behind this server is at calcbloc.com/data and the API documentation at calcbloc.com/developers. The other CalcBloc packages (Python, JavaScript, PHP, R, Google Sheets and the dataset itself) are in the itmarkerz GitHub organization.

來源:README.md,提交 ea5666f

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

2
  1. v0.1.3最新Nov 14, 2026
  2. v0.1.2Nov 13, 2026

評分

已滿足適用檢查項的 40%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。

其他 Calculator 整合