mcp-singapore
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ONEMAP_TOKEN | No | Jeton OneMap, pour chercher une adresse et le géocodage inverse. | |
| LTA_ACCOUNT_KEY | No | Clé DataMall, pour les arrivées de bus et singapore_query_lta. | |
| DATA_GOV_SG_API_KEY | No | Clé data.gov.sg, envoyée dans l'en-tête x-api-key. Facultative, recommandée en production. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| singapore_lookup_datasetA | Resolve an exact dataset ID in the bundled snapshot. No network; a missing entry may exist in the live catalog. |
| singapore_list_collectionsB | List a live page of data.gov.sg collections and their child dataset IDs. Page size is controlled by the provider. |
| singapore_search_catalogA | Search the bundled full data.gov.sg catalog by English keywords, agency and format. No network needed. Results include snapshot date. Use inspect_dataset then query_dataset; non-tabular datasets may require download. Use list_catalog_page for updates since the snapshot. |
| singapore_list_catalog_pageA | List a current live page of data.gov.sg catalog (upstream page size). Use search_catalog for fast search of the bundled snapshot. |
| singapore_inspect_datasetB | Get live dataset metadata, schema, format, coverage and last update. Field IDs may be internal: use columnMetadata.map/metaMapping names for datastore filters. |
| singapore_query_datasetA | Query any tabular data.gov.sg dataset. Exact filters, column text search, projection, sorting and pagination. Preserve upstream values/units; no SQL. Non-tabular or unsupported datasets can be downloaded instead. |
| singapore_get_collectionB | Get a collection and its child dataset metadata to discover related historical series or ACRA partitions. |
| singapore_download_datasetA | Start or poll a dataset export. Call initiate once, then poll on later calls. Returns provider download URL (may expire), never downloads large files into the conversation. Suitable for CSV/GeoJSON/KML and datasets without datastore support. |
| singapore_catalog_summaryA | List dataset counts by publishing agency and file format, with catalog snapshot date. |
| singapore_list_curated_datasetsB | Browse curated datasets and tool names by topic. Includes coverage dates: some series are historical. The full catalog is searchable separately. |
| singapore_query_hdb_resaleA | Query Resale flat prices based on registration date from Jan-2017 onwards (Housing & Development Board). Topic: housing. Inspect dataset d_8b84c4ee58e3cfc0ece0d773c8ca6abc first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_hdb_rentalsA | Query Renting Out of Flats from Jan 2021 (Housing & Development Board). Topic: housing. Inspect dataset d_c9f57187485a850908655db0e8cfe651 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_hdb_median_rentA | Query Median Rent By Town And Flat Type (Housing & Development Board). Topic: housing. Inspect dataset d_23000a00c52996c55106084ed0339566 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_carpark_directoryA | Query HDB Carpark Information (Housing & Development Board). Topic: transport. Inspect dataset d_23f946fa557947f93a8043bbef41dd09 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_schoolsA | Query General information of schools (Ministry of Education). Topic: education. Inspect dataset d_688b934f82c1059ed0a6993d2a829089 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_hawker_centresB | Query List of Government Markets Hawker Centres (National Environment Agency). Topic: food. Inspect dataset d_68a42f09f350881996d83f9cd73ab02f first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_hawker_closuresB | Query Dates of Hawker Centres Closure (National Environment Agency). Topic: food. Inspect dataset d_bda4baa634dd1cc7a6c7cad5f19e2d68 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_businessesA | Query Entities Registered with ACRA (Accounting and Corporate Regulatory Authority). Topic: economy. Inspect dataset d_3f960c10fed6145404ca7b821f263b87 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_infectious_diseasesA | Query Weekly Infectious Disease Bulletin Cases (Ministry of Health). Topic: health. Inspect dataset d_ca168b2cb763640d72c4600a68f9909e first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_sport_facilitiesA | Query Sport Facilities (Sport Singapore). Topic: culture. Inspect dataset d_2cfb0867cdeb2b7303068995699dc33b first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_museum_visitorsA | Query Visitorship to National Museums and Heritage Institutions (Ministry of Culture, Community and Youth). Topic: culture. Inspect dataset d_618a1224b896b436ce650be1f77c804e first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_hotel_statisticsA | Query Monthly Gazetted Hotels Statistics (Singapore Tourism Board). Topic: tourism. Inspect dataset d_1db0bd2ffd95ac09c66db600e60d3400 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_visitor_arrivalsA | Query International Visitor Arrivals By Place Of Residence, Monthly (Singapore Department of Statistics). Topic: tourism. Inspect dataset d_7e7b2ee60c6ffc962f80fef129cf306e first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_recycling_ratesA | Query Recycling Rate By Waste Type (National Environment Agency). Topic: environment. Inspect dataset d_9740df787da2b59a0b5bd76a6c33453d first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_air_quality_annualA | Query Air Quality, Annual (Singapore Department of Statistics). Topic: environment. Inspect dataset d_b733fb074ed97f4d322525467b0fa457 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_greenhouse_emissionsA | Query Greenhouse Gas Emissions By Sector, Annual (Singapore Department of Statistics). Topic: environment. Inspect dataset d_1b8dcef6bf32ece26deca60e59d99f71 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_government_expenditureA | Query Government Total Expenditure (Ministry of Finance). Topic: finance. Inspect dataset d_00f95040967791729d51bd7cd6af2355 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_land_areaA | Query Land Area (As At December), Annual (Singapore Department of Statistics). Topic: geography. Inspect dataset d_0b2c034da121ef8efc71949af1694b4d first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_private_property_pricesA | Query Price Indices Of Non-Landed Private Residential Properties By Locality (1st Quarter 2009 = 100), Quarterly (Singapore Department of Statistics). Topic: housing. Inspect dataset d_65f5bf43d377db3939d93eb6f744d950 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_healthcare_schemesA | Query Healthcare Schemes and Subsidies (Ministry of Health). Topic: health. Inspect dataset d_586ee0cbc5c79ff8167a46132a405239 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_unemploymentA | Query Average Resident Unemployment Rate By Sex, Age And Highest Qualification Attained (HQA), Annual (Singapore Department of Statistics). Topic: employment. Inspect dataset d_11a640f1e61c1a680efeac8c775cdcb5 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_query_hdb_populationA | Query HDB Resident Population by Geographical Distribution (Housing & Development Board). Topic: population. Inspect dataset d_0a6c6d71f6fa14e2d27e406f1d018439 first for filter fields. Supports exact filters, column text search, fields, sort and pagination. Returns source coverage from the bundled catalog; fetch metadata for current coverage. |
| singapore_get_air_temperatureB | NEA temperature (degrees Celsius). Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_rainfallC | NEA rainfall (mm). Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_relative_humidityC | NEA humidity (%). Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_wind_speedB | NEA wind speed (knots). Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_wind_directionB | NEA wind direction (degrees). Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_forecast_2hB | NEA 2-hour area forecasts. Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_forecast_24hC | NEA 24-hour weather forecast. Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_forecast_4dayC | NEA four-day outlook. Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_psiB | NEA PSI and pollutants by region. Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_pm25B | NEA PM2.5 (micrograms per cubic metre). Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_get_uv_indexC | NEA UV index. Singapore local dates; latest if omitted. Local limits apply to timestamp groups. Consume local offsets before continuing the preserved upstream pagination token. |
| singapore_list_weather_stationsB | Discover weather stations, IDs and WGS84 coordinates by observed measure; search by ID/name. No observations omitted from a claimed national inventory. |
| singapore_get_taxi_availabilityA | Available taxi coordinates from data.gov.sg, optionally within a radius sorted by distance. Latest unless date_time supplied. Coordinates use WGS84; returns a bounded sample and total match count. |
| singapore_get_carpark_availabilityA | HDB/URA carpark live available lots by carpark number. Does not include coordinates: join with carpark directory to locate carparks. |
| singapore_get_traffic_imagesB | Traffic camera image URLs, coordinates and timestamps. Optional radius filter. Image URLs are returned, never fetched by this server. |
| singapore_get_bus_arrivalsA | Live next buses at a bus stop, estimated arrival, load and accessibility. Requires LTA_ACCOUNT_KEY. Bus stop codes retain leading zeros. |
| singapore_query_ltaB | LTA lists and alerts. Requires LTA_ACCOUNT_KEY. Stop/service filters are allowed only on provider endpoints supporting them. Offsets apply only to paginated datasets. |
| singapore_find_nearby_bus_stopsB | Search a bounded set of LTA bus-stop pages near WGS84 coordinates. Requires LTA_ACCOUNT_KEY. Complete is true only after an upstream short page; continuation identifies the next unscanned page. |
| singapore_search_statisticsA | Search SingStat Table Builder across all official economic, population, labour, trade, health and social tables. Returns resource IDs to use with inspect_statistics/get_statistics. Use English terms. |
| singapore_inspect_statisticsB | Get SingStat table metadata, frequency, units, definitions, notes, series and coverage before reading observations. |
| singapore_get_statisticsA | Read SingStat time series, retaining unit and footnotes. Fetches table (or one exact upstream period), then filters series locally and keeps the last N upstream periods per series. Values remain strings to preserve missing-value markers. Use series_offset to paginate series. |
| singapore_convert_coordinatesA | Convert SVY21 easting/northing metres to WGS84 longitude/latitude or the reverse within Singapore. Uses SLA projection parameters; no API key. |
| singapore_search_addressA | OneMap official address/building/postal-code geocoding (WGS84 plus SVY21). Requires ONEMAP_TOKEN. Search pages are provider pages, usually 10 results. |
| singapore_reverse_geocodeB | OneMap reverse geocoding of Singapore WGS84 coordinates to nearby addresses. Requires ONEMAP_TOKEN. |
| singapore_list_indicatorsA | Curated World Bank indicators for Singapore. Other valid indicator codes work with get_indicator. |
| singapore_get_indicatorA | World Bank historical indicator for Singapore, optionally comparing up to five ISO3 countries. Latest years first; null values are preserved. Definitions and publication lag can differ from SingStat. No key required. |
| singapore_get_capabilitiesC | Local configuration and source availability. Reports only whether credentials are configured, never their values. No network requests. |
| singapore_get_sourcesB | List connected official data sources, documentation and API key requirements. This server reads public information; no account mutation tools. |
| singapore_find_relevant_toolsA | Route an English question to tools and datasets. Deterministic keyword matching; suggestions are not evidence or computed facts. Search catalog with English keywords. |
| singapore_search_acraB | Search one detailed ACRA partition by entity name or UEN. Select A-Z or Others explicitly; no automatic scan of all partitions. Inspect returned schema for provider field names. |
| singapore_find_nearby_facilitiesA | Find nearby HDB carparks with live availability, hawker centres, preschools, park facilities or sport facilities. Reads a bounded full official export (64 MiB max). Only Point geometries with validated WGS84 coordinates are considered; omitted geometries are counted. No arbitrary download URL input. |
| singapore_compare_hdb_pricesA | Compare HDB resale prices across towns and a bounded month interval using the entire official CSV export (64 MiB maximum). Does not extrapolate from a Datastore page. Exports may still be processing: retry on EXPORT_PENDING. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| research-singapore | Evidence-based research across Singapore public data |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| sources | Connected data sources and authentication |
| coverage | Catalog coverage and curated datasets |
| usage | Data access conventions and limitations |
| topics | Available data.gov.sg publishing agencies and formats |
TDQS
Scored across 64 tools
The core pattern is clear: generic catalog tools (search_catalog, inspect_dataset, query_dataset, download_dataset) plus per-dataset convenience wrappers. However, ~20 singapore_query_<topic> tools overlap heavily with singapore_query_dataset, and discovery is split across search_catalog, list_catalog_page, list_curated_datasets, catalog_summary, and find_relevant_tools, so an agent can hesitate between near-equivalent entry points. Descriptions do a good job steering (e.g. compare_hdb_prices vs query_hdb_resale, find_nearby_bus_stops vs get_bus_arrivals), which keeps it from being worse.
Every tool uses the singapore_ prefix plus a consistent snake_case verb_noun form (query_*, get_*, list_*, search_*, inspect_*, find_nearby_*, convert_*). Verb choice maps predictably to intent: query for tabular data, get for live readings, list/search for discovery.
64 tools is far beyond a comfortable surface for a single server, even a broad national data portal. Much of the bulk comes from per-dataset query wrappers that duplicate query_dataset's capability and could be replaced by a curated dataset list.
Coverage is broad and coherent: catalog discovery, metadata inspection, tabular querying, export/download, live weather, transport, SingStat, geocoding, World Bank, and capability/source introspection, with a consistent read-only posture. Gaps are minor — e.g. some discovery paths (curated topics) versus the live catalog could be unified, and a few domain areas rely on single datasets.