streamable-httpMITupdated 1mo ago
A remote Model Context Protocol server that exposes Wasilah's Islamic reference data to Claude as a custom connector. Add the URL in Claude and it can answer prayer-time, Qibla, Hijri-date, and Quran-audio questions directly.
What can you do with Wasilah?
Wasilah MCP
A remote Model Context Protocol server that exposes Wasilah's Islamic reference data to Claude as a custom connector. Add the URL in Claude and it can answer prayer-time, Qibla, Hijri-date, and Quran-audio questions directly.
Prayer times are computed with the same astronomy engine as the Wasilah app (ported from lib/features/prayer_times/prayer_astronomy.dart), so the connector and the app agree to the minute for the same location, date, method, and madhab.
Tools
| Tool | What it returns |
|---|---|
get_prayer_times |
The five daily prayers plus sunrise for a city or coordinates. Marks Dhuhr as Jumu'ah on Fridays. |
get_next_prayer |
The next upcoming prayer and time remaining. |
get_qibla |
Compass bearing to the Kaaba. |
get_hijri_date |
Islamic date for a given Gregorian date (Umm al-Qura, with a tabular fallback). |
get_quran_audio |
A streaming full-surah recitation URL plus surah name and ayah count. |
Every location tool accepts either a city name (resolved against a bundled offline database) or explicit latitude + longitude + timezone. Prayer tools also accept method (Karachi, ISNA, MWL, Umm al-Qura, and others) and asr (auto, shafii, hanafi). The connector makes no external network calls.
Run locally
npm install
npm test # exercises every tool through the MCP endpoint, no server needed
npm run dev # serves the worker on http://localhost:8787
With the dev server running, point the MCP Inspector at http://localhost:8787/mcp to browse and call the tools interactively.
Deploy (Cloudflare Workers)
npx wrangler login
npm run deploy
Wrangler prints the deployed URL, for example https://wasilah-mcp.<subdomain>.workers.dev. The connector endpoint is that URL plus /mcp. Visiting the root URL serves a short landing page with the connector URL and setup steps.
Add to Claude
- Settings, then Connectors.
- Add custom connector.
- Paste
https://<your-worker-url>/mcp. - Ask something like "What time is Maghrib in Dhaka today?" or "Which way is the Qibla from Madinah?"
This server is authless and stateless. It exposes only public reference data; it holds no personal information and needs no sign-in.
Notes
- Prayer parity. Calculation-method angles, the Asr shadow factors, and the solar geometry mirror the app exactly. The app's default is Karachi method with Hanafi Asr.
- Hijri source. Uses the Umm al-Qura calendar where the runtime's ICU supports it, and a tabular calculation otherwise. A tabular date can differ from a moon-sighting announcement by a day.
- Fully offline. The connector makes no external API calls. City lookups use a bundled offline database (a subset of GeoNames, CC BY 4.0: top cities per country plus every capital); prayer times, Qibla, and Hijri date are computed on the server. Pass coordinates directly for places not in the database.
- Personal data is out of scope. This server does not touch the on-device Salah tracker. Exposing per-user history would require a Wasilah backend with accounts and OAuth.
Install
Add Wasilah to your client. Pick the one you use.
claude mcp add --transport http wasilah https://wasilah-mcp.aykiz.workers.dev/mcpcodex mcp add wasilah --url https://wasilah-mcp.aykiz.workers.dev/mcp{
"mcpServers": {
"wasilah": {
"url": "https://wasilah-mcp.aykiz.workers.dev/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"wasilah": {
"type": "http",
"url": "https://wasilah-mcp.aykiz.workers.dev/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"wasilah": {
"url": "https://wasilah-mcp.aykiz.workers.dev/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"wasilah": {
"serverUrl": "https://wasilah-mcp.aykiz.workers.dev/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
5 tools
Wasilah exposes 5 tools to a connected agent.
- get_prayer_times
- The five daily prayers plus sunrise for a city or coordinates. Marks Dhuhr as Jumu'ah on Fridays.
- get_next_prayer
- The next upcoming prayer and time remaining.
- get_qibla
- Compass bearing to the Kaaba.
- get_hijri_date
- Islamic date for a given Gregorian date (Umm al-Qura, with a tabular fallback).
- get_quran_audio
- A streaming full-surah recitation URL plus surah name and ayah count.
Score
70 / 100
Good
- Documentation17/25
- Maintenance22/25
- Trust13/20
- Capability6/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 32 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 5 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.4.0Latest | Jul 31, 2026 |
| 1.3.0 | Jul 30, 2026 |
| 1.0.0 | Jul 20, 2026 |