mcpbeat Sign in

Expat Living Italy MCP Server

by expatliving Your server? Claim it
not responding

Expat Living Italy is listed as active in the registry but did not answer our last check. It exposes 11 tools.

Sourced data on Italy's ~7,900 comuni for people relocating or retiring there.

Uptime history 43 days of history · worst day 0%
43 days agonow
0.0%
Uptime 24h
0 of 92 checks
11
Tools
read from the server
137 ms
Response time
average over 24h
open, no key
Access
streamable-http

What changed 13

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 30 September 2026. No other catalogue keeps this.

25 Oct a tool description was rewritten find_comuni
25 Oct a tool changed the parameters it asks for find_comuni
18 Oct 2 tool descriptions were rewritten get_comune, get_province
12 Oct a tool changed the parameters it asks for get_nationality
10 Oct 4 tools appeared find_comuni, get_coverage, get_nationality and 1 more
3 Oct 2 tools appeared check_tax_eligibility, list_tax_regimes
30 Sep 2 tools appeared get_article, list_articles

Expat Living Italy does not always answer

Over the last week it answered 0.0% of our checks. We check every 15 minutes, so you hear about the next outage within the hour — not from your users.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 0 min ago.

run in your terminal
claude mcp add data --transport http https://www.expatliving.it/api/v1/mcp
Settings → Connectors → Add custom connector, then paste this address
https://www.expatliving.it/api/v1/mcp
~/.codex/config.toml
[mcp_servers.data]
url = "https://www.expatliving.it/api/v1/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "data": {
      "url": "https://www.expatliving.it/api/v1/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "data": {
      "type": "http",
      "url": "https://www.expatliving.it/api/v1/mcp"
    }
  }
}

Available tools 11

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

comuni
find_comuni
Which Italian comuni match: region, province, population range, purchase-price and rent ranges (OMI), population change 2019–2025, the eight shortlist filters (January low, days above 30 C, regional hospital-care score, all three care scores at 60, tourist beds per resident, outside seismic zone 1, road time to a hospital with inpatient beds, road time to an airport) and/or the verified comuni of a tax regime. Paged (max 100) and sortable. Healthcare scores are region grain (autonomous-province grain for Bolzano and Trento): every town in the region shares the score. A comune with no price, rent, population-change, climate, healthcare, tourism, seismic or drive-time figure is left out of the filter on it and COUNTED in `missingData` — never treated as cheap, free or stable; say how many were left out. The taxRegime filter lists only comuni on the regime's verified routes: a comune missing from it is NOT a 'no' (the response says so in `taxRegime.note`). Rows carry plain numbers; their source and vintage are in `figures`. Use search_comuni to turn a town name into a code, get_comune for one town's full profile.
search_comuni
Look up Italian comuni by name (case- and accent-insensitive, partial names work) and get each one's 6-digit ISTAT code, province and region — the code get_comune needs. Returns identifiers only, no figures. Several comuni share a name; check the province before choosing.
tax
check_tax_eligibility
For one regime slug (from list_tax_regimes) and one 6-digit ISTAT code (from search_comuni): qualifies, does_not_qualify or not_assessable, with a one-sentence reason to quote. not_assessable is never a no. This is about the place only; say so, and never present it as whether a person qualifies or as tax advice.
list_tax_regimes
Each regime's status (verified or draft), whether it depends on place (geographic) or on the person, its legislation, population ceiling and how many comuni meet its verified criteria. Places, not people: not tax advice.
article
get_article
One article's full text as Markdown, with its places, datasets and a ready-made citation. Quote figures from the dataset pages it cites, which carry their vintage. Content is free to use provided you credit Expat Living Italy and link to the article.
articles
list_articles
Dated, sourced reporting on moving to and retiring in Italy, newest first. Filter by topic, by place (a comune's ISTAT code) or by dataset slug. Each entry has its URL, a Markdown URL for the full text, and the places and datasets it cites. Content is free to use provided you credit Expat Living Italy and link to the article.
comune
get_comune
One Italian comune's population, foreign residents by citizenship, property purchase/rent price, price-to-rent, verified tax-regime eligibility, its province's rollup, `seismicZone` (the official zona sismica 1-4: a legal classification, not a forecast and not a verdict on any building; quote it with its label and say so — a comune that straddles zones has no single zone, never round it; the zone has nothing to do with tax eligibility, and is not the 7% regime’s “seismic” routes, which depend on the 2009 and 2016-17 earthquake areas), `layers` (climate, air quality, crime, healthcare quality, age, population change and every other Italy-map layer) and `provinceWellbeing` (ISTAT BES indicators, polarity-aware percentiles) — looked up by 6-digit ISTAT code. Each layer's `grain` and `measuredFor` say whose number it is: a province or region value is not a measurement of this comune — say so when you quote it. Every field is wrapped in a provenance envelope (source, vintage, extractedOn, license); repeat the vintage when you state the number, and if a value is null, say why rather than treating it as zero.
coverage
get_coverage
For every dataset: how many places it covers, out of how many at its grain, plus the source's own coverage caveat. Pass `dataset` (a slug from list_datasets) to list the places that dataset lacks, with the gaps by region. Use it before telling anyone data does not exist for a place, and to explain a null. Missing means no figure, never a zero. Keys a source publishes that match no current place (a superseded province code) are reported and never mapped onto a current place. Drafts are listed as not served, without counts.
datasets
list_datasets
The catalog: each dataset's source institution, vintage (the period it describes), geographic grain, license, the expatliving.it page that presents it, and whether it is servable (false = still an unverified draft; never quote its values). Use it to say what data exists and where a reader can see it.
nationality
get_nationality
For one tracked citizenship (ISO-2 code such as US, GB, DE): the comuni, provinces and regions where its holders concentrate, with counts and shares. It is CITIZENSHIP, not birthplace — foreign-born Italian citizens are not counted — and it carries small-number caveats: the comune ranking skips places under 1,000 residents by default and flags rows under 30 residents (`smallNumber`). A comune with no ISTAT row is left out, not counted as zero, so totals are floors. State those caveats when you quote a ranking; they are in the result's `caveats`. Province and comune lists are different levels of detail — say which.
province
get_province
One Italian province (two-letter code such as AQ, or its slug — a comune's `provinceCode`): population, OMI prices, foreign residents by citizenship (citizenship, not birthplace), ALL ISTAT BES well-being indicators with polarity-aware percentiles among provinces (no composite score), every province- and region-grain map layer, `seismicZones` (how many of its comuni sit in each official seismic zone — a count of comuni, never an average, since a province has no zone of its own), and how much of the province meets each verified tax regime (places, not people). Sources use different province lists — Sardinia was reorganized in 2026 — so a section a source lacks is null with a reason and listed in `missingSections`: report it as missing, never substitute another province's figure.

Endpoints

URLTransportStateLatencyChecked
https://www.expatliving.it/api/v1/mcp streamable-http answering 137 ms 0 min ago

Alternatives to Expat Living Italy

same job, measured the same way
Demand Discovery AI
by demanddiscovery

Validate startup ideas with real people asking for them, each quote linked to its source.

10 tools answering
progrss
by progrss

Sourced charts on how the world is shifting: power, economy, energy, people, planet, food.

6 tools answering
Formlab MCP
by juliu1980

Read-only MCP server for FormLab formulation data: a local export file or your live cloud workspace.

4 107 installs/wk local only
Present Of AI
by presentofai

Free, read-only data on about 4,900 AI companies, open AI jobs and dated AI news, with source links.

6 tools answering
llm-oracle
by weiseer

Up-to-date LLM pricing + availability catalog with cited sources for AI agent routing.

83 installs/wk local only
Specita
by specita

Read-only release evidence for coding agents: findings, deliveries, source and runtime data.

answering
SEO Stack MCP
by raffaele86

The complete open-source SEO data stack for AI agents: 7 sources, 86 tools, one MCP server

128 installs/wk local only
Borgo
by abcastor

Compare cities to live in on open, sourced data: take-home pay, rent, visas, climate, safety.

260 installs/wk local only

Expat Living Italy — questions

Answers built from our own checks of this server.

What can Expat Living Italy do?
It exposes 11 tools, read directly from the server on our last check. Among them: check_tax_eligibility, find_comuni, get_article, get_comune, get_coverage, get_nationality and 5 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Expat Living Italy mostly used for?
Its tools cluster around tax and comuni. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Expat Living Italy working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 0 of 92 checks got a reply (0.0%), average response time 137 ms. The bar chart above shows every period we have measured.
The registry lists Expat Living Italy as active — why does it not respond?
The official MCP registry stores what the author submitted; it does not verify that the server still runs. We check the endpoint ourselves, and this one does not answer. Catalogues that copy the registry without checking will show it as working.
How do I connect Expat Living Italy?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Expat Living Italy need an API key?
No. Expat Living Italy completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 11 of them are readable on this page. This is what we observed, not what the docs claim.