Model Context Protocol server
islamqa-org-mcp gives Claude, Codex and any MCP client search across the IslamQA.org archive — answers from 47 darul ifta institutions, each with its madhhab, its mufti, and a link you can open.
Ask a language model a fiqh question and it answers from a blur of training data — no source, no madhhab, no way to check it. Worse, it answers with the same fluency whether it knows or is inventing. Fabricated fiqh reads exactly like real fiqh.
This changes the default. The assistant searches a real archive and quotes a real answer, or tells you it found nothing.
Can I wipe over ordinary cotton socks in wudu?
search_fatwas(query="wiping over socks wudu", madhhab="hanafi")
Not in the Hanafi school. Masah is only valid on socks with the characteristics of leather khuffayn: thick enough that water doesn't seep through, able to stand upright unaided, and durable over three to four miles of walking. Ordinary cotton socks fail all three.
Askimam.org · Mufti Ebrahim Desai · islamqa.org/hanafi/askimam/127638/…
Bin Bayyah notes the Hanbali school does permit wiping over cloth socks, while the Maliki position restricts it to leather.
BinBayyah.net · islamqa.org/maliki/binbayyah/29891/…
Every answer carries the institution, the madhhab and the URL. Where the schools differ, you see that they differ.
No clone, no setup. Pick whichever runner you already have.
claude mcp add islamqa -- uvx --from \
git+https://github.com/RealYusufIsmail/islamqa-org-mcp islamqa-mcp
{
"mcpServers": {
"islamqa": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/RealYusufIsmail/islamqa-org-mcp",
"islamqa-mcp"
]
}
}
}
npx -y islamqa-mcp
The npm package is a thin wrapper that hands off to uv, which
runs the Python server in an isolated cached environment.
The first search builds a local index — about a minute and 22 requests to the sitemap. Everything after that is instant and offline.
| Tool | What it does |
|---|---|
search_fatwas | Full-text search across the archive, filterable by madhhab or institution |
get_fatwa | One answer in full — question, answer, Arabic citations, issuing darul ifta |
list_sources | All 47 institutions with per-site answer counts |
browse_fatwas | Most recent answers, optionally filtered |
index_status | Index size, cache size, last rebuild |
rebuild_index | Refresh from the sitemap |
A server gives the model tools; it doesn't teach it judgement. A bundled Claude skill handles the part that actually matters:
islamqa.org is a free service run on donations, and it has no public API — its WordPress REST endpoints are disabled. So this reads the same public pages a browser does, carefully:
If you maintain islamqa.org and want anything here changed — the rate limit, the User-Agent, or the tool's existence — open an issue and it will be addressed.