sgdata-mcp

87 tools, 24 datasets — Singapore government data for AI agents

sgdata-mcp — Singapore government data for AI agents

sgdata-mcp is an open-source MCP server that lets any AI agent query Singapore government data directly — ACRA business records, HDB resale prices, COE bidding results, URA private property transactions, SingStat economic indicators, MAS exchange rates, IRAS tax collections, unemployment, population, infectious disease cases, electricity generation, births, crime, tourism receipts, hawker centres, and more. It is MIT licensed, lives on npm as @altronis/sgdata-mcp, and works in Claude Desktop, Claude Code, Cursor, and anything else that speaks the Model Context Protocol.

New in v0.5.0: six live real-time feeds (air quality / PSI, weather forecasts, rainfall, temperature, live carpark availability, and current NEA dengue clusters), seven SingStat tables (household income, wages, deaths, marriages, divorces, merchandise trade, labour-force participation), a fixed dataset search, and a lighter footprint — the ACRA and HDB-resale tools now query data.gov.sg server-side instead of downloading whole datasets onto your machine.

First, what is MCP?

MCP stands for Model Context Protocol. It is an open standard, introduced by Anthropic in late 2024, that solves a boring but painful problem: how does an AI agent talk to the real world? An LLM on its own is a very expensive autocomplete. It only becomes useful when you let it read your calendar, query your database, run your scripts, or call your APIs. Before MCP, every one of those integrations was a bespoke glue job — different for every IDE, different for every chat client, different for every agent framework.

MCP fixes that by specifying a single wire protocol. An MCP server is a small program that exposes tools and data over a standard JSON-RPC interface. An MCP client — Claude Desktop, Claude Code, Cursor, Continue, Windsurf, and a growing list of others — knows how to connect to any MCP server, see its tools, and let the LLM call them. Write the integration once as an MCP server, and it immediately works in every client that speaks MCP. Think of it as the USB-C connector for AI tools: one shape, any tool, any client.

sgdata-mcp is one such MCP server. It exposes 87 tools for querying Singapore government data, and because it speaks MCP, any agent that speaks MCP can use it immediately — no plugins, no wrappers, no custom adapters.

The problem it solves

Every serious Singapore research question eventually hits the same wall. You can ask an LLM about HDB resale prices in Yishun or about which companies were incorporated in 2024 under SSIC 62010, and it will happily produce a plausible-sounding answer. Some of it might even be right. None of it is verifiable.

The data exists. It is free, it is public, and it sits on data.gov.sg. The problem is that every agent I wanted to build for a local client — a company-lookup tool, a property comparison, a macro dashboard, a compliance check — had to reinvent the same fetching, schema parsing, and caching layer before it could answer a single useful question. That glue code is not where the value is.

sgdata-mcp is that glue code, turned into something an agent can just plug in.

What is in the box

87 tools across 24 curated datasets, plus a generic layer that works against any dataset on data.gov.sg by ID. The curated tools handle the datasets most likely to show up in local work:

Three generic tools — sg_search_datasets, sg_dataset_schema, sg_dataset_query — cover the long tail of roughly two thousand datasets on data.gov.sg that are not in the curated list.

New in v0.3.2

Monthly business formation and cessation data from ACRA via SingStat Table Builder. Three new tools for tracking company lifecycle at monthly granularity:

New in v0.3.0

8 new datasets, 22 new tools, and four major capabilities:

Live demos

These widgets pull real-time data from sgdata-mcp running on this server. The same tools your AI agent would call — rendered here as interactive dashboards.

Live data from data.gov.sg via @altronis/sgdata-mcp. For informational purposes only — verify critical figures against the official source.

How to use it

If you use Claude Desktop, drop this into your config (typically at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "sgdata": {
      "command": "npx",
      "args": ["-y", "@altronis/sgdata-mcp"]
    }
  }
}

Restart Claude Desktop. The 87 tools show up under the MCP icon and you can immediately ask things like:

For Claude Code, the equivalent is one command:

claude mcp add sgdata -- npx -y @altronis/sgdata-mcp

For the CLI (no MCP client needed):

npx @altronis/sgdata-mcp query "What is the latest COE premium?"
npx @altronis/sgdata-mcp tool sg_hdb_resale_search '{"town":"TAMPINES"}'
npx @altronis/sgdata-mcp datasets

Cursor, Continue, and other MCP clients take the same config block as Claude Desktop. The full setup guide is in the GitHub README.

How it works under the hood

The server is a stdio child process. Small curated datasets (most of them) are fetched once and cached in a local SQLite store at ~/.sgdata-mcp/sgdata.sqlite, so repeat queries are sub-millisecond with exact-match and LIKE predicates and no network round trip. Large datasets — ACRA's corporate registry, HDB resale transactions — and the real-time feeds are queried against data.gov.sg server-side instead, fetching only the rows you filter for, so the server never downloads a whole multi-megabyte dataset onto your disk. Nothing leaves your machine; your prompts are not sent to Altronis or to any third party, and the cache is yours to inspect or delete at any time.

Why open source

The actual interesting work in Singapore AI projects is not the data-fetching layer — it is everything that happens on top of a clean, queryable data layer. If sgdata-mcp becomes the default way to wire Singapore public data into an agent, the entire Singapore AI ecosystem moves faster. The only other MCP server covering Singapore government data has five real-time endpoints and no historical data. sgdata-mcp fills the gap with 87 tools across 24 datasets, MIT licensed, and available on npm for anyone to use.

Disclaimer

This tool fetches and caches data from data.gov.sg. While we take care to preserve data integrity during ingestion, you should independently verify any data before making decisions based on it. All data originates from Singapore government agencies — we do not alter source values, but column mappings, transformations, and caching may introduce discrepancies. This is not a substitute for professional financial, legal, medical, or policy advice. Cached data may be hours to weeks behind the source.

Get started:

Frequently asked

What is sgdata-mcp and how does it differ from data.gov.sg directly?

sgdata-mcp is an open-source Model Context Protocol server that exposes 70+ typed tools across 24 SG government datasets to any AI agent. Direct data.gov.sg requires hand-rolled API calls; sgdata-mcp gives Claude/Cursor/Goose a structured tool catalog so the agent itself decides which dataset to query.

Which Singapore datasets does sgdata-mcp cover?

ACRA company filings, HDB resale prices, COE bidding history, URA planning data, SingStat economic series, MAS exchange and policy rates, IRAS tax data, plus crime, health, demographics, transport, land-use and more. Each dataset is one MCP tool with typed parameters and JSON results.

Is sgdata-mcp free to use commercially?

Yes. MIT-licensed. Self-host on your own infra; the server makes outbound calls only to public SG government APIs.

Related reads

Last updated 3 May 2026.