This MCP server provides official 4D lottery results and draw history. Coverage includes Malaysia, Singapore, and Cambodia. The server focuses on results only, publishing information described as an official source rather than predictions or other analytics.
π οΈ Key Features
Official 4D lottery results
Draw history
Results-only output
Regional scope: Malaysia, Singapore, Cambodia
π Use Cases
Retrieve official 4D lottery outcomes for the supported countries
Access draw history for reference or auditing purposes
Build applications that display past 4D results only
β‘ Developer Benefits
Clear data scope: results and draw history only
Direct mapping to a specific domain (4D lottery) and regions
β οΈ Limitations
Does not provide anything beyond results (results-only)
Only supports the specified countries: Malaysia, Singapore, Cambodia
Returns the official newest 4D draw result for every operator (Magnum, Da Ma Cai, Sports Toto, Singapore 4D, Sabah 88, Sandakan STC, Sarawak Cash Sweep, Grand Dragon, Perdana including its afternoon draw, and 9 Lotto). Official results only; no number recommendations or forecasts.
Parameters
No parameters.
Raw schema
{
"type": "object",
"properties": {}
}
get_results_by_date
Returns every operator's official 4D draw result for a given calendar date. Returns an empty result set with a note if no draws happened that date. Official results only; no number recommendations or forecasts.
Parameters1
date
string
required
Draw date in YYYY-MM-DD format, Malaysia time (MYT).
Raw schema
{
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "Draw date in YYYY-MM-DD format, Malaysia time (MYT)."
}
},
"required": [
"date"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}
get_operator_results
Returns one 4D operator's most recent official draw results (1st, 2nd, 3rd, special and consolation numbers), newest first. Official results only; no number recommendations or forecasts.
Lists every official 4D draw in which a given 4-digit number appeared as a winning number, with its date, operator and prize tier. Past winning appearances only, not a ranking. Official results only; no number recommendations or forecasts.
Parameters1
number
any
required
4-digit number, including any leading zeros (e.g. "0650").
Returns official results for 4D-family games other than the main draw: Toto 5D/6D/Star/Power/Supreme, Magnum Life/Jackpot/Gold, Da Ma Cai 3+3D/Jackpot, and Singapore Toto, including numbers, bonus numbers and jackpot amounts. Official results only; no number recommendations or forecasts.
Parameters2
game
string
required
Game slug. One of: magnum_jackpot, magnum_gold, magnum_life, damacai_jackpot, damacai_3p3d, toto_jackpot, toto_5d, toto_6d, toto_star, toto_power, toto_supreme, sg_toto.
limit
integer
optional
How many recent draws to return (1-30, default 10).
Returns the official upcoming 4D draw schedule (regular and special draw dates) and which operators draw on each date, from the site's calendar. Official results only; no number recommendations or forecasts.
Official 4D lottery results for Malaysia, Singapore and Cambodia, as a free JSON API and a remote MCP server that AI assistants (Claude, ChatGPT, Cursor and others) can query directly.
MCP server:https://4dlivetoday.com/mcp (Streamable HTTP, no sign-in)
REST API:https://4dlivetoday.com/api/v1/ (JSON, no key)
Data licence:CC BY 4.0 β free to use, including commercially, with attribution
On draw nights, results are read from each operator's own official website and cross-checked against independent results sites where one exists. Older draws come from results archives (Magnum's official archive back to 1985, the others mainly the check4d.org archive); see data sources for each operator's coverage. This service publishes results and draw history only. It does not sell tickets or accept bets, and it offers no number recommendations, "hot" numbers or forecasts.
Perdana 4D (evening; the afternoon draw appears as perdana3pm)
Cambodia
9lotto
9 Lotto 4D
Cambodia
Every 4D draw has 23 numbers: 1st, 2nd and 3rd prize, 10 special (starter) and 10 consolation.
Other official games (game ids):
Game id
Name
magnum_life
Magnum Life (8 numbers + 2 bonus)
magnum_jackpot, magnum_gold
Magnum 4D Jackpot / Jackpot Gold amounts
damacai_3p3d
Da Ma Cai 3+3D (6-digit 1stβ3rd, starter, consolation)
damacai_jackpot
Da Ma Cai 1+3D Jackpot and 3D Jackpot amounts
toto_5d, toto_6d
Toto 5D, Toto 6D
toto_star, toto_power, toto_supreme
Star Toto 6/50, Power Toto 6/55, Supreme Toto 6/58
toto_jackpot
Sports Toto 4D Jackpot amounts
sg_toto
Singapore Toto (6 numbers + additional number, Group 1 prize)
History: 4D results go back decades (Magnum from 1985). Magnum and Da Ma Cai other games cover the last 12 months and grow daily; Sports Toto games and Singapore Toto are kept from late September 2026 onward.
Every draw in which the number won, with prize tier, newest first, plus a total count
get_other_game_results
game, limit (1β30, default 10)
Recent results of one of the other games listed above
get_draw_schedule
β
Upcoming draw dates (regular and special) and which operators draw
Every tool result includes a short text summary plus the full structured data, and each result carries a url to the matching page on 4dlivetoday.com so the assistant can link to it.
REST API
Base URL: https://4dlivetoday.com/api/v1
Method & path
Description
GET /api/v1
Index: endpoints and envelope fields
GET /api/v1/latest
Newest draw for every operator
GET /api/v1/results/{date}
All operators on a date (YYYY-MM-DD, Malaysia time)
CORS is open (Access-Control-Allow-Origin: *), so you can call it from a browser.
Response format
Every successful response has the same envelope (url is the matching human-readable page on 4dlivetoday.com):
json
{"data":{"results":[]},"source":"4dlivetoday.com","license":"CC BY 4.0","license_url":"https://creativecommons.org/licenses/by/4.0/","attribution":"Results from 4dlivetoday.com (https://4dlivetoday.com), compiled from each operator's official site.","url":"https://4dlivetoday.com/en/results/2026-09-27","generated_at":"2026-09-30T12:00:00.000Z"}
What data holds per endpoint:
Endpoint
data
/latest
{ results: [draw, β¦] } β newest draw of each operator
/results/{date}
{ date, results: [draw, β¦] } (empty results plus a note on a day with no draws)
/operators/{operator}
{ operator, operator_name, results: [draw, β¦] }
/numbers/{number}
{ number, count, results: [{ operator, operator_name, date, draw_no, tier, url }, β¦] } β tier is 1st, 2nd, 3rd, special or consolation
Money amounts are strings exactly as the operator published them, with currency ("RM 12,749,753.62", "S$ 1,298,326"). draw_no can be empty for operators that don't publish a readable draw number.
Errors
json
{"error":{"code":"invalid_date","message":"date must be a real calendar date in YYYY-MM-DD format"}}
Too many MCP requests from one address; wait for Retry-After
503
upstream_unavailable
Results store temporarily unreachable; retry shortly
A date with no draws (for example a regular Monday for the weekly operators) is not an error: it returns 200 with an empty list.
In MCP, the same problems come back as a tool result with isError: true and the same message.
Fair use and caching
No key and no sign-up. Responses are cached for about 60 seconds; results change only around draw times, so please cache on your side too.
Unknown query parameters are dropped with a redirect to the canonical URL.
The MCP endpoint accepts one request per call (no JSON-RPC batches).
Draw nights (roughly 18:30β21:30 Malaysia time on draw days) are when results change; polling more often than once a minute gains nothing.
Abusive traffic may be rate-limited without notice.
Attribution
The data is licensed CC BY 4.0. If you show or republish it, credit:
Results from 4dlivetoday.com, compiled from each operator's official site.
A link back is appreciated and is how this stays free.
Data quality
On draw nights each result is read from the operator's own official site. Where a second independent source exists, the result is cross-checked and its status becomes checked.
Older draws were imported from results archives. They carry status: history, or checked where a second source confirmed the same numbers (for example every Magnum draw back to 1985). How far each operator goes back, and how many older draws a second source has confirmed, is listed on the data sources page.
Always treat the operator's own announcement as final. If you find a result that differs from the operator's official site, please open an issue with the date, operator and the operator's page.
4dlivetoday is an independent results site. It is not affiliated with any operator named above; operator names are used only to identify their results. For readers aged 21 and over, where the law allows.