Block your calendar for solat.
Prayer times for all 60 JAKIM zones, as a calendar feed that keeps itself current. Subscribe once.
Build your feed
Pick your zone, then decide how the events should sit in your day.
Today in your calendar
Subscribe
A subscription re-reads the feed on its own, so next year's times arrive without you doing anything.
Google and Outlook need a publicly reachable address, so those two buttons will only work once this is deployed. Apple Calendar and Download work right now.
The first sync can take a little while. Google Calendar may need a few minutes and a refresh, and Apple Calendar a few minutes and sometimes a restart of the app. Outlook usually shows events straight away.
Or take the URL
How it behaves in your calendar
- Re-importing is safe
- Every event carries a stable identifier built from the zone, date and prayer. Import the same feed twice and your calendar updates those events rather than growing a second copy of them.
- It refreshes itself
- The feed asks calendar apps to re-read it twice a day. Times for the rest of the year are always in there, and the window rolls forward as the year goes on.
- The real time travels with the event
- Even when you snap events to 15 minute blocks, each event's notes hold the exact JAKIM time, your zone, the hijri date and a link back to e-Solat. The block is for your grid, the truth is in the event.
Bring your AI assistant
Your assistant can look up zones, read prayer times and build your feed URL for you. Point it at this endpoint.
Any MCP client works. The server is stateless, needs no key and keeps no session.
The same thing in plain text for any LLM: llms.txt.
Tools
-
list_zonesFind the zone code for any district in Malaysia. -
get_prayer_timesRead one day of prayer times, with the hijri date. -
get_calendar_feedTurn a set of options into a subscribable feed URL.
Common questions
Is SolatCal free?
Yes. SolatCal is free, has no accounts and shows no ads. It reformats the official JAKIM e-Solat prayer times for Malaysia into a calendar feed, and that is all it does.
Which JAKIM zones are covered?
All 60 official e-Solat zones, across every state. WLY01 covers Kuala Lumpur and Putrajaya, SGR01 covers Gombak and Petaling, JHR02 covers Johor Bahru, PNG01 covers Pulau Pinang and SWK09 covers Kuching. Pick yours from the zone list, which is grouped by state.
How do the prayer times stay up to date?
Subscribe once and your calendar app re-reads the feed about twice a day. Times for the rest of the year are always in the feed, so a subscribed calendar rolls into the next year on its own. Downloading an .ics file gives you a snapshot instead, which you will need to replace later.
Can I show prayer times as free instead of busy?
Yes. Show as Free keeps the events visible without blocking your availability, so colleagues can still book over them. Show as Busy is the default and protects the slot.
Where do the prayer times come from?
Every time comes straight from JAKIM e-Solat, the official Malaysian source. SolatCal calculates nothing of its own, and each event carries the exact JAKIM time, the hijri date and a link back to e-Solat.
Can my AI assistant use SolatCal?
Yes. SolatCal runs an MCP server at /mcp, which lets an assistant look up JAKIM zones, read the prayer times for a day and build a calendar feed URL. There is also an llms.txt describing the whole API in plain text, so a model can work from it without MCP at all.
And establish prayer for My remembrance.
Quran 20:14