MCP.Market

Sgdata MCP server

by sypherin·io.github.sypherin/sgdata-mcp·v0.5.2

Singapore government data for AI agents: ACRA, HDB, COE, URA, SingStat, MAS, IRAS. 87 tools.

A92/100grade A
What users say
No reviews yet
Be the first
Safety scan
A92/100

full report

Adoption
Growing

0 stars37 downloads/wk

Reviews

Write one

Nobody has reviewed Sgdata yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Sgdata tools (87)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • sg_acra_formations_by_ssic

    Count ACRA corporate entity formations for a given SSIC prefix

  • sg_acra_get_entity

    Look up a single ACRA corporate entity by exact UEN via a server-side

  • sg_acra_search_entities

    Search the curated ACRA corporate registry resource server-side

  • sg_air_temperature

    Live air temperature readings (deg C) from NEA weather stations across

  • sg_ask

    Ask a natural language question about Singapore government

  • sg_births_history

    Monthly live-birth count time series for a category (e.g.

  • sg_births_latest

    Get the most recent month's live-birth counts by sex and

  • sg_carpark_availability

    Live HDB/LTA carpark lot availability across Singapore (updated every

  • sg_cessations_monthly

    Get monthly business cessation (closure/deregistration) counts

  • sg_coe_demand_supply

    COE oversubscription ratio (bids_received / quota) for a single

  • sg_coe_history

    COE premium time series for a single vehicle category.

  • sg_coe_latest

    Get the most recent COE bidding result per vehicle category. If

  • sg_cpi_history

    Monthly CPI time series for a single sub-index (substring match

  • sg_cpi_latest

    Most recent CPI index value and YoY change for a matching

  • sg_cpi_yoy

    Year-on-year inflation rate for a single CPI sub-index in a

  • sg_crime_compare

    Rank all crime types by case count for a given year. Returns

  • sg_crime_history

    Annual crime case count time series for a specific crime

  • sg_crime_latest

    Get the most recent year's crime case counts by type.

  • sg_cross_dataset

    Compare two Singapore datasets side-by-side over time.

  • sg_dataset_query

    Query any data.gov.sg dataset by ID with simple exact-match and

  • sg_dataset_schema

    Fetch the column schema and metadata for any data.gov.sg dataset by

  • sg_deaths

    Singapore mortality indicators: crude death rate and infant

  • sg_dengue_clusters

    Active NEA dengue clusters in Singapore (live). The legacy realtime

  • sg_disease_latest

    Get the most recent week's infectious disease case counts.

  • sg_disease_list

    List all diseases tracked in the Weekly Infectious Disease

  • sg_disease_trend

    Weekly case count trend for a specific disease (e.g. 'Dengue

  • sg_divorces

    Singapore divorce statistics. Defaults to total divorces &

  • sg_ecda_centres_near

    Find childcare centres whose postal_code shares a prefix with

  • sg_ecda_search_centres

    Search ECDA childcare & kindergarten centres. Filters: name

  • sg_ecda_vacancy_summary

    Aggregate vacancy count for a given level (infant/pg/n1/n2/k1/k2),

  • sg_electricity_history

    Monthly electricity generation time series for a given source

  • sg_electricity_latest

    Get the most recent month's electricity generation figures

  • sg_employment_by_sector

    Employment counts by sector for a given year. If year is omitted,

  • sg_employment_growth

    Percent change in employment for a sector between two years

  • sg_employment_sector_history

    Employment time series for a single sector (substring match on

  • sg_formations_compare

    Compare business formation counts across multiple industries

  • sg_formations_history

    Get the historical time series of business formations for a

  • sg_formations_latest

    Get the latest year's business formation counts by industry in

  • sg_formations_monthly

    Get monthly business formation counts for a specific industry

  • sg_fx_basket

    All major SGD currency pairs for a single month. If month is

  • sg_fx_history

    Monthly SGD rate time series for a single currency. Returns

  • sg_fx_rate

    Monthly SGD exchange rate for a given currency. Currency is

  • sg_gdp_history

    Time series of YoY GDP growth for a single industry (substring

  • sg_gdp_industry_compare

    Rank all industries by YoY growth for a given quarter (e.g.

  • sg_gdp_latest

    Get the most recent YoY GDP growth rate for a matching industry

  • sg_hawker_search

    Search for hawker centres by name or location (substring match).

  • sg_hawker_stats

    Summary statistics of all hawker centres — total count,

  • sg_hdb_carpark_lookup

    Exact-match lookup for a single HDB carpark by car_park_no

  • sg_hdb_carparks_by_address

    Substring search over HDB carpark addresses. Useful for 'find all

  • sg_hdb_carparks_by_type

    Filter HDB carparks by type (e.g. 'MULTI-STOREY CAR PARK',

  • sg_hdb_resale_search

    Search HDB resale flat transactions (Jan 2017+). Filters: town,

  • sg_hdb_resale_stats

    Aggregate HDB resale statistics (count, median, mean, min, max resale

  • sg_household_income

    Singapore resident household income from work. Returns the median

  • sg_iras_collection

    Look up IRAS tax collection by tax_type (substring match) and/or

  • sg_iras_collection_history

    Annual tax collection time series for a single tax_type

  • sg_iras_tax_mix

    Percentage breakdown of IRAS total collection by tax type for a

  • sg_labour_force

    Singapore resident labour force participation rate (LFPR), aged 15+.

  • sg_list_datasets

    List all available curated Singapore datasets with their IDs,

  • sg_marriages

    Singapore marriage statistics. Defaults to total marriages; use

  • sg_median_income_history

    Annual median income time series for a given sex ('Males',

  • sg_median_income_lookup

    Look up median monthly income by year and/or sex. If year is

  • sg_moe_school_by_name

    Exact-match lookup for a single MOE school by full school_name.

  • sg_moe_schools_near

    Find schools whose postal_code shares a prefix with the supplied

  • sg_moe_search_schools

    Search MOE-registered schools by name substring, mainlevel

  • sg_net_formations

    Get net business growth (formations minus cessations) by month

  • sg_population_history

    Annual time series for a single population indicator (e.g.

  • sg_population_latest

    Get the most recent annual population figure for a matching

  • sg_psi

    Live NEA Pollutant Standards Index (PSI) for Singapore. Returns the

  • sg_rainfall

    Live 5-minute rainfall readings (mm) from NEA stations across Singapore.

  • sg_retail_sales_history

    Monthly retail sales index time series for a sub-industry.

  • sg_retail_sales_latest

    Most recent retail sales index value for a matching sub-industry

  • sg_retail_sales_yoy

    Year-on-year percent change in retail sales index for a

  • sg_search_datasets

    Search data.gov.sg for datasets matching a free-text keyword query.

  • sg_tourism_history

    Tourism receipts time series for a specific component

  • sg_tourism_latest

    Get the most recent year's tourism receipts breakdown by

  • sg_trade

    Singapore total merchandise trade (imports + exports) by commodity

  • sg_unemployment_history

    Unemployment rate time series for a given residential status

  • sg_unemployment_latest

    Get the most recent quarterly unemployment rates for Singapore.

  • sg_ura_new_sale_pipeline

    New sale volume only, quarter-by-quarter, for pipeline analysis.

  • sg_ura_private_txn_history

    URA private residential transaction volumes over time,

  • sg_ura_private_txn_latest

    Latest quarter of URA private residential transactions, broken

  • sg_visitors_history

    Monthly visitor arrivals time series for a source country.

  • sg_visitors_latest

    Most recent monthly visitor arrivals for a matching source country

  • sg_visitors_top_sources

    Top N source countries by visitor arrivals for a given month.

  • sg_visualize

    Generate an ASCII sparkline chart and summary statistics from

  • sg_wages

    Average monthly nominal earnings per employee in Singapore (overall

  • sg_weather_forecast

    NEA weather forecast for Singapore. By default returns the 2-hour

Public scan report

scanner v0.1.9 · 2026-09-25 · same rubric, same numbers if you re-run it

no findings
  • Code scan89 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 21 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 92/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Sgdata compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
92/100
higher than 95% of 48,255 servers
Tools
87
the typical server has 7
Tools that change things
0%
typical: 0%. Fewer write tools means less an agent can break
Downloads a week
37
more than 28% of 12,191 servers with a package

What its tools let an agent do: 87 read

Install Sgdata in Claude Code, Cursor or VS Code

Runs npx -y @altronis/sgdata-mcp on your machine. Read the scan report first; the gateway never runs local packages.

claude mcp add sgdata-mcp -- npx -y @altronis/sgdata-mcp
Add to Cursor

What the publisher says

From the Sgdata repository's README, as published. We do not edit it. Read it on GitHub

@altronis/sgdata-mcp

A Singapore government data MCP server. 87 tools — 24 curated datasets + 7 SingStat tables + 6 live real-time feeds, CLI mode, data visualization, cross-dataset queries, natural language queries.

Covering ACRA + HDB + URA + COE + CPI + GDP + employment + IRAS + MAS FX + MOE + ECDA + tourism + retail + population + crime + health + energy + hawkers + air quality + weather + carparks + live dengue.

No API keys. Runs anywhere MCP runs. Full write-up: https://altronis.sg/blog/sgdata-mcp

@altronis/sgdata-mcp is an MCP server that lets Claude, Cursor, Continue, or any other MCP-compatible client query Singapore government open data directly from data.gov.sg — corporate registry, real estate, labour, prices, public services, capital flows, crime, health, demographics, energy, and more.

It runs as a local stdio process on your machine. No hosted backend, no API keys. Small curated datasets cache locally at ~/.sgdata-mcp/sgdata.sqlite; large datasets (ACRA, HDB resale) and real-time feeds query data.gov.sg server-side so they never download a whole dataset onto your disk.

v0.5.0: 13 new tools + a smaller footprint. Real-time feeds — sgpsi (air quality), sgweatherforecast, sgairtemperature, sgrainfall, sgcarparkavailability, and sgdengueclusters (live NEA clusters — current dengue, vs the frozen weekly-bulletin feed). SingStat tables — sghouseholdincome, sgwages, sgdeaths, sgmarriages, sgdivorces, sgtrade, sglabourforce. sgsearchdatasets now actually searches (data.gov.sg's q param is a no-op upstream, so it filters a cached catalog locally). ACRA + HDB-resale tools query server-side (datastoresearch) instead of ingesting the full 56 MB / 23 MB datasets — no more multi-GB local cache. FX tools fixed (upstream metadata endpoint 404s; they now read live data via datastore_search).

⚠️ sgacraformationsbyssic is a heavy tool. ACRA's SSIC+year filter

can't be pushed server-side, so it crawls 27 shards with rate-limit backoff —

expect ~1–3 minutes, and for older years the count is a lower bound

(bounded: true). For fast formation counts by SSIC use the SingStat

sgformationshistory / sgformationscompare / sgformationsmonthly

tools instead.

v0.4.1: sgdatasetquery no longer hangs on very large datasets (size-gated server-side paging via datastoresearch + a 60s ingest guard); sgfxrate / sgfxhistory now accept ISO currency codes (USD, GBP, JPY, EUR, …); sgtourismlatest now emits datafreshness (its upstream stops at 2014); and the _history tools return an available label list on a no-match so callers can self-correct.

v0.4.0 highlights: datafreshness metadata block emitted on every latest tool — lastperiod, lastrecorddate, agedays, and a categorical level of fresh / ok / stale / frozen so agents can detect when an upstream data.gov.sg feed has gone silent. Fixes silent stale-data on sgdiseaselatest (MOH stopped publishing the Weekly Infectious Disease Bulletin via data.gov.sg around epi week 2022-W52).

v0.3.2: Monthly business formations + cessations + net growth tools via SingStat Table Builder. Track month-by-month company creation vs closure for any SSIC industry. 74 tools total.

v0.3.1: Annual formation counts by industry via SingStat Table Builder.

v0.3.0: 8 new datasets, CLI mode, ASCII sparkline visualization, cross-dataset correlation queries, natural language query routing.

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Sgdata: common questions

Is Sgdata MCP server safe?
Yes, by our scan: it is graded A (92/100). Read the Sgdata safety report
How do I install Sgdata?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Sgdata need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is Sgdata maintained?
The last commit was 61 days ago (2026-09-04). The latest release is v0.5.2.
How does Sgdata compare with other MCP servers?
safety score 92/100 (higher than 95% of 48,255 servers); tools 87 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.

More from sypherin →