eorscope-mcp

MCP serverDev tools

Lets your agent calculate statutory employer costs by country, before any Employer of Record fee.

Then ask your AI: use eorscope-mcp to list countries

Details

Available today. Use it as a step in a pipeline you build, or from your connected AI.

Add it as a step in a pipeline you build on Ahel, or connect Ahel to Claude, ChatGPT, Cursor, Claude Code or Codex and ask your AI to use it.

About this server

Statutory employer cost by country, before any Employer of Record (EOR) fee.

Install eorscope-mcp

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user eorscope-mcp 'https://mcp.eorscope.com/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://mcp.eorscope.com/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=eorscope-mcp&config=eyJ1cmwiOiJodHRwczovL21jcC5lb3JzY29wZS5jb20vbWNwIn0=

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://mcp.eorscope.com/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add eorscope-mcp --url 'https://mcp.eorscope.com/mcp'

    Run it once, then sign in with codex mcp login eorscope-mcp if the server asks for an account.

From the project's README

As published by eorscope/eorscope-mcp in README.md.

A Model Context Protocol server (stdio) that answers one question about hiring abroad, before any Employer of Record (EOR) fee: what an employer pays on top of a gross salary in a given country (statutory employer contributions, line by line, each with its source, official wherever one exists, and the date it was read).

It does not carry EOR provider fees: the providers' terms do not allow their prices to be redistributed. Compare providers on their own pricing pages.

It runs the same engine and the same data as the EOR Scope calculator: 76 countries in the snapshot of 2026-10-04. The data ships inside the package; the server makes no network call.

Cost comparison, not legal or tax advice.

Remote server (no install)

https://mcp.eorscope.com/mcp (Streamable HTTP, no authentication, read-only) runs the main branch of this repository: 14 tools (employer cost, country and offer comparisons, budget-to-salary, quote check, EOR / entity / contractor cost, employment terms, exchange-rate stress, contractor rate, dated changes, next year's cost) and two display widgets for ChatGPT and other MCP Apps hosts. A monthly salary is converted with the country's statutory number of payments where it is tracked. Documentation: https://mcp.eorscope.com/docs.html.

The npm package below (0.2.0) is the earlier stdio server: four tools, same engine.

Install

Node 18 or later.

Claude Code:

claude mcp add eorscope -- npx -y eorscope-mcp

Claude Desktop, or any client that reads an mcpServers block:

{
  "mcpServers": {
    "eorscope": {
      "command": "npx",
      "args": ["-y", "eorscope-mcp"]
    }
  }
}

Tools

Every answer is JSON and ends with a meta block: the snapshot date, the URL of the matching page on the site, the URL of the methodology page, the disclaimer and the data licence. The examples below are real outputs of the 2026-10-04 snapshot, shortened where marked …; meta is left out.

Figures come as text ("at least $156") and as numbers under values, next to a bound field. When a country's total is declared as a floor or a ceiling, the words "at least" or "at most" are part of the figure: keep them when you quote it.

list_countries

Optional region. Alphabetical order.

{
  "count": 6,
  "countries": [
    { "iso": "IL", "name": "Israel", "slug": "israel", "region": "Middle East", "currency": "ILS", "example_salary_usd": 75000, "employer_cost_at_example": "at least 15.4%" },
    { "iso": "JO", "name": "Jordan", "slug": "jordan", "region": "Middle East", "currency": "JOD", "example_salary_usd": 24000, "employer_cost_at_example": "14.3%" },
    …
  ]
}

employer_cost

country (ISO code or name), optional salary with salary_currency (USD or local), optional assumptions, optional include_notes. Without a salary, the country's example salary is used. {"country": "India"} returns the figure printed on the India page:

{
  "summary": "One employee in India at $30,000 gross a year costs about $154 a month in statutory employer charges (+6.2% of gross), before any EOR fee.",
  "salary": {
    "annual_usd": 30000,
    "annual_local": "INR 2,876,322",
    "is_country_example": "example salary (software engineer), not a median",
    "fx": { "local_per_usd": 95.8774, "date": "2026-09-18", "source": "European Central Bank — euro foreign exchange reference rates" }
  },
  "employer_cost": {
    "pct_of_gross": "6.2%",
    "monthly": "$154",
    "annual": "$1,850",
    "values": { "bound": null, "pct_of_gross": 6.1659, "monthly_usd": 154.15, "annual_usd": 1849.77 }
  },
  "lines": [
    {
      "id": "epf_employer",
      "name": "EPF employer contribution (Employees' Provident Fund)",
      "type": "contribution",
      "rate": 0.0367,
      "rate_printed": "3.67%",
      "base": "basic",
      "base_cap_annual_local": 300000,
      "currency": "INR",
      "capped": true,
      "annual_usd": 114.83,
      "monthly_usd": 9.57,
      "applies": "Applies to basic wage plus dearness allowance, capped at the statutory wage ceiling of Rs 25,000/month (in force since 17 September 2026)",
      "source": {
        "name": "Employees' Provident Fund Organisation - FAQs on the revision of the EPFO statutory wage ceiling (Rs 15,000 to Rs 25,000, S.O. 5109(E))",
        "url": "https://pmvbry-cdn.epfindia.gov.in/wp-content/uploads/2026/09/EPFO_Wage_Ceiling_FAQs.pdf",
        "checked_at": "2026-09-26"
      }
    },
    …
  ],
  "assumptions": [{ "id": "basic_share_of_gross", "label": "Basic wage as a share of gross", "value": 0.5 }]
}

compare_countries

countries (2 to 10) and salary_usd. Rows come back in the order requested, not ranked. {"countries": ["DE", "PL", "AE"], "salary_usd": 80000}:

{
  "salary_annual_usd": 80000,
  "countries": [
    { "iso": "DE", "name": "Germany", "salary_local": "EUR 69,808", "employer_cost": { "pct_of_gross": "22.2%", "monthly": "$1,483", "annual": "$17,793", … } },
    { "iso": "PL", "name": "Poland", "salary_local": "PLN 304,607", "employer_cost": { "pct_of_gross": "19.8%", "monthly": "$1,320", "annual": "$15,844", … } },
    { "iso": "AE", "name": "United Arab Emirates", "salary_local": "AED 293,800", "employer_cost": { "pct_of_gross": "at least 2.9%", "monthly": "at least $192", "annual": "at least $2,301", … } }
  ]
}

Sources and method

  • Employer contributions: the tax and social-security administrations and the legislation of each country. Each line carries its source URL and the date it was read; a line that rests on a secondary source says so in its note (include_notes).
  • Exchange rates: ECB reference rates; the issuing central bank's parity for currencies pegged to the dollar; the European Commission's monthly accounting rate for the rest. The rate, its date and its source are in every answer.
  • Calculation: each contribution on its own base (gross, basic wage, fixed amount or a band of gross), floored and capped as the law writes it and skipped where a salary threshold excludes it, plus the recurring statutory extras the country counts in its total. Employee-side deductions and income tax are not modelled.

The full method, its known limits and the list of sources are on the methodology page.

The numbers are an illustrative model of statutory charges. Confirm every figure with a qualified local adviser before hiring.

Development

npm ci
npm run build   # bundles src/ into dist/
npm test        # the built package against the site's published dataset, country by country, then over stdio

The engine is the site's own, not a rewrite, and it is not under the MIT terms of the rest of the code (see Licence). src/vendor/ (engine and formatters), data/snapshot.json and test/fixtures/country_summary.csv are copied from the site's repository by npm run sync; do not edit them here. sync only has something to do inside that repository. In a checkout of this package alone it says so and changes nothing.

Licence

Three parts, three sets of terms, all in LICENSE:

  • Server code (src/ outside src/vendor/, scripts/, tests, documentation): MIT.
  • Cost engine (src/vendor/, and its bundled form in dist/): Copyright EOR Scope, all rights reserved. It is distributed with this package only: you may run it as part of eorscope-mcp, not extract, modify or redistribute it separately.
  • Data (data/snapshot.json, test/fixtures/): CC BY 4.0, attribution "EOR Scope, eorscope.com". Terms in LICENSE-DATA.

Published by EOR Scope.

Tools it offers (14)

What this server listed when Ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.

  • list_countries
  • employer_cost
  • compare_countries
  • max_salary_for_budget
  • employment_terms
  • reconcile_quote
  • compare_structures
  • compare_offers
  • fx_stress
  • contractor_rate_equivalent
  • scheduled_changes
  • cost_next_year
  • show_ledger
  • show_compare

Signals

Last commit
Oct 2026
Advanced
Delivery
eorscope-mcp MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-eorscope-eorscope-mcp
Source
github.com/eorscope/eorscope-mcp
Hosted endpoint
https://mcp.eorscope.com/mcp