Skip to main content
Glama

islamqa-org-mcp

Geben Sie Claude, Codex und jedem anderen MCP-Client Zugriff auf ~98.000 belegte Fatwas.

Ein MCP-Server für IslamQA.org, das Antworten von 47 unabhängigen Darul-Ifta-Institutionen aus den vier sunnitischen Madhahib bündelt.

CI Python 3.11+ License: MIT MCP

Website · Installation · ChatGPT · Tools · So funktioniert es · Etikette


Warum

Stellen Sie einem Sprachmodell eine Fiqh-Frage, und es antwortet aus einem Brei von Trainingsdaten – ohne Quelle, ohne Madhhab und ohne Möglichkeit der Überprüfung. Das ist die falsche Form für diese Art von Frage.

Dieser Server ändert den Standard. Ihr Assistent durchsucht ein echtes Archiv wissenschaftlicher Antworten und zitiert eine davon mit Mufti, Madhhab, Institution und einer URL, die Sie öffnen können. Wenn sich die Schulen unterscheiden, sehen Sie, dass sie sich unterscheiden, statt eine Position als die islamische Regelung präsentiert zu bekommen.

You:  Can I wipe over ordinary cotton socks in wudu?

Claude: [searches IslamQA.org]

        The Hanafi position (Askimam.org, Mufti Ebrahim Desai) is that masah
        is only valid on socks with the characteristics of leather khuffayn —
        thick enough that water does not seep through, able to stand upright
        unaided, and durable over three to four miles of walking. Ordinary
        cotton socks do not qualify.
        https://islamqa.org/hanafi/askimam/127638/...

        Bin Bayyah (Maliki) notes the Hanbali school permits wiping over cloth
        socks, while the Maliki position restricts it to leather.
        https://islamqa.org/maliki/binbayyah/29891/...

Related MCP server: NexusNote MCP Server

Installation

Kein Klonen, keine manuelle Einrichtung. Wählen Sie den Runner, den Sie bereits haben.

Mit uv (empfohlen – es ist das, was den Server tatsächlich ausführt):

uvx --from git+https://github.com/RealYusufIsmail/islamqa-org-mcp islamqa-mcp

Mit npx, wenn Node das ist, wozu Sie greifen:

npx -y islamqa-mcp

Das npm-Paket ist ein dünner Wrapper – es übergibt an uv, das den Python-Server in einer isolierten Cache-Umgebung abruft und ausführt. Sie benötigen trotzdem uv; der Wrapper sagt Ihnen, wie, falls es fehlt.

curl -LsSf https://astral.sh/uv/install.sh | sh    # macOS / Linux
brew install uv                                    # Homebrew
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"   # Windows

Claude Code

claude mcp add islamqa -- uvx --from git+https://github.com/RealYusufIsmail/islamqa-org-mcp islamqa-mcp

Claude Desktop

Fügen Sie zu claude_desktop_config.json hinzu – auf macOS: ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "islamqa": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/RealYusufIsmail/islamqa-org-mcp",
        "islamqa-mcp"
      ]
    }
  }
}

Codex

Fügen Sie zu ~/.codex/config.toml hinzu:

[mcp_servers.islamqa]
command = "uvx"
args = ["--from", "git+https://github.com/RealYusufIsmail/islamqa-org-mcp", "islamqa-mcp"]

Starten Sie den Client neu. Die erste Suche erstellt einen lokalen Index (etwa eine Minute, ~22 Anfragen); alles danach ist sofort.

git clone https://github.com/RealYusufIsmail/islamqa-org-mcp.git
cd islamqa-org-mcp && uv sync

Zeigen Sie den Client dann mit uv --directory /absolute/path/to/islamqa-org-mcp run islamqa-mcp darauf.

ChatGPT

ChatGPT unterscheidet sich von den obigen Clients: Es kann keinen lokalen Prozess starten, also benötigt es den Server gehostet unter einer öffentlichen HTTPS-URL. Daraus folgen zwei Dinge.

1. Führen Sie ihn über HTTP statt stdio aus.

islamqa-mcp --transport streamable-http --host 0.0.0.0 --port 8000

Der Endpunkt, den ChatGPT möchte, ist dann https://your-host/mcp.

2. Es stellt in diesem Modus search und fetch bereit. ChatGPT lehnt jeden Connector ab, der keine Tools mit genau diesen Namen hat, es sei denn, Sie haben den Entwicklermodus aktiviert, und Deep Research ruft nur diese beiden auf. Wenn der Server also über HTTP läuft, fügt er sie als Adapter über search_fatwas / get_fatwa hinzu, in OpenAIs erforderlicher Formsearch gibt {id, title, url} pro Ergebnis zurück, fetch gibt {id, title, text, url, metadata} zurück. Jedes Ergebnis trägt eine echte islamqa.org-URL, sodass ChatGPT ordentliche Zitate rendert.

Sie sind absichtlich nicht für stdio registriert: Claude und Codex erhalten das reichhaltigere search_fatwas, und ein schwächerer Alias würde sie nur einladen, das schlechtere zu verwenden.

Ausprobieren ohne Bereitstellung

Führen Sie es lokal aus und richten Sie einen Tunnel darauf – dafür ist der Tunnel-Schalter im Connector-Dialog von ChatGPT da:

islamqa-mcp --transport streamable-http --port 8000
cloudflared tunnel --url http://localhost:8000     # or: ngrok http 8000

Dann in ChatGPT: Einstellungen → Apps → Erweitert → Entwicklermodus, einen Connector hinzufügen, der auf https://<your-tunnel>/mcp zeigt, Authentifizierung Keine.

Ordnungsgemäßes Hosten

Ein Dockerfile ist enthalten und funktioniert auf Render, Railway, Fly.io oder Cloud Run:

docker build -t islamqa-mcp .
docker run -p 8000:8000 islamqa-mcp

Es erstellt den URL-Index zur Image-Build-Zeit, was wichtig ist: Der Index kostet ~22 Anfragen an islamqa.org, und ihn ins Image zu backen bedeutet, dass dies einmal pro Release geschieht statt bei jedem Kaltstart jeder Replik. Ohne das würde eine autoskalierende Gratis-Stufe den ganzen Tag die Sitemap neu crawlen. Es macht auch die erste Benutzersuche sofort.

Bevor Sie es öffentlich freigeben: Ein Connector ohne Authentifizierung ist für jeden offen, der die URL findet, und jede Anfrage, die sie stellen, ist eine Anfrage an islamqa.org unter dem Namen Ihres Servers. Stellen Sie es hinter OAuth oder einen Auth-Proxy, wenn es nicht nur für Sie ist, und behalten Sie das Ratenlimit bei.

Die Fähigkeit

Ein MCP-Server gibt dem Modell Werkzeuge. Er sagt ihm nicht, wie es sie gut einsetzt – und bei Fiqh zählt wie mehr als was.

skills/islamqa-fatwa ist eine Claude-Fähigkeit, die zusammen mit dem Server ausgeliefert wird. Sie bewirkt, dass der Assistent:

  • Fragt, welchem Madhhab Sie folgen, bevor er antwortet – oder alle vier Positionen nebeneinander präsentiert, wenn Sie keinem folgen

  • Nie eine Regelung erlässt, die er nicht abgerufen hat. Kein erfundener Hadith, kein halb erinnertes „die hanafitische Ansicht ist…", keine fabrizierten arabischen Zitate. Wenn das Archiv nichts hat, sagt er das, statt die Lücke zu füllen

  • Die tatsächlichen Kategorien der Tradition verwendet, statt alles auf halal/haram zu reduzieren – einschließlich des hanafitischen Siebenfach-Schemas, sodass makrūh taḥrīmī nicht stillschweigend zu „missbilligt" herabgestuft oder zu „haram" hochgestuft wird

  • Sagt, wenn die Abdeckung dünn ist. Das Archiv ist stark hanafitisch; wenn es keine malikitische Antwort gibt, berichtet es das, statt eine abzuleiten

  • Weiterverweist bei Scheidung, Erbschaft, Sorgerecht und anderen Angelegenheiten, die eine Person statt eines Suchindex benötigen

Installieren Sie es global:

git clone https://github.com/RealYusufIsmail/islamqa-org-mcp.git /tmp/islamqa-mcp
cp -r /tmp/islamqa-mcp/skills/islamqa-fatwa ~/.claude/skills/

Es aktiviert sich von selbst, wenn sich eine Frage als Regelungsfrage herausstellt.

Tools

Tool

Was es tut

search_fatwas

Volltextsuche im Archiv. Filtern nach madhhab oder source.

get_fatwa

Eine Antwort vollständig: Frage, Antwort, arabische Zitate, ausstellende Institution.

list_sources

Alle 47 Darul-Ifta-Websites mit Antwortzahlen pro Website.

browse_fatwas

Neueste Antworten, optional gefiltert.

index_status

Indexgröße, Cache-Größe, letzter Neuaufbau.

rebuild_index

Index aus der Sitemap aktualisieren. Selten nötig.

Über HTTP werden search und fetch für die ChatGPT-Kompatibilität hinzugefügt – siehe ChatGPT.

Jede Antwort wird mit ihrer Quellenangabe und einem Hinweis zurückgegeben, der das Modell daran erinnert, die URL zu zitieren und die Regelung als Position eines einzelnen Mufti zu behandeln, nicht als universelle.

Befehlszeile

Dieselben Operationen ohne MCP-Client:

uv run islamqa search "wiping over socks" --madhhab hanafi
uv run islamqa get https://islamqa.org/hanafi/askimam/127638/can-i-wipe-make-masah-over-the-new-socks/
uv run islamqa sources
uv run islamqa status

So funktioniert es

IslamQA.org läuft mit WordPress und deaktivierter REST-API, es gibt also keinen JSON-Endpunkt. Was es veröffentlicht, ist eine vollständige Sitemap und serverseitig gerenderte Seiten – dieselben öffentlichen Seiten, die jeder Leser oder Suchmaschinen-Crawler sieht.

Der Server arbeitet in zwei Schichten:

Der Index. Ein Durchlauf über die Sitemap (~22 Anfragen) erfasst jede Antwort-URL zusammen mit ihrer ID, Madhhab, Quelle und einem aus dem Slug abgeleiteten Titel. Das sind ~98.000 Antworten für ein paar Megabyte und etwa eine Minute, und es bedeutet, dass die Suche von da an lokal und sofort ist.

Der Cache. Das Lesen einer Antwort ruft diese eine Seite ab und parst sie, dann speichert er sie. Die Suche läuft auf einem SQLite-FTS5-Index über beide Schichten, sodass eine Antwort sofort per Titel auffindbar ist und per Volltext, sobald jemand sie gelesen hat – das Archiv wird mit zunehmender Nutzung durchsuchbarer.

sitemap ──► index (~98k URLs + titles) ──┐
                                         ├──► FTS5 (BM25) ──► search_fatwas
answer page ──► parse ──► cache (full) ──┘                    get_fatwa

Da Antworten über viele Jahre von 47 verschiedenen Websites importiert wurden, kommen Seiten in drei Vorlagenformen vor, und alle drei werden behandelt: die modernen .ai-question / .ai-answer-content-Wrapper; nackte Absätze mit expliziten Question: / Answer:-Beschriftungen; und nackte Absätze ohne Beschriftungen. Verirrte Q:-Präfixe und nachgestellter „Original Source Link"-Text werden entfernt, und arabische Endnoten, die klassische Texte zitieren, werden in ein separates citations-Feld aufgeteilt, sodass eine Antwort sauber liest, ohne die Belege dahinter zu verlieren.

Hat islamqa.org eine API?

Keine öffentliche JSON-API. Die Website läuft mit WordPress, aber die REST-API ist seitenweit abgeschaltet. Getestet August 2026:

Endpunkt

Ergebnis

/wp-json/

401{"code":"rest_disabled"}

/wp-json/wp/v2/posts

401rest_disabled

/wp-json/wp/v2/search

401rest_disabled

/wp-json/elasticpress/v1/search

401rest_disabled

/graphql, /api/

404

Das Suchfeld auf der Website wird clientseitig von ElasticPress gerendert, daher sind seine Ergebnisse auch nicht im HTML – weshalb dieser Server seinen eigenen Index erstellt, statt die Website-Suche zu proxien.

Was maschinenlesbar und offen ist:

Endpunkt

Format

Hinweise

/sitemap_index.xml

XML

22 untergeordnete Sitemaps

/sitemap-posts.xml?page=N

XML

5.000 Antwort-URLs pro Seite, mit lastmod

/feed/

RSS 2.0

Neueste Antworten seitenweit

/category/{madhhab}/{source}/feed/

RSS 2.0

Neueste pro Institution

Antwortseiten

HTML + JSON-LD

NewsArticle-Schema trägt Veröffentlichungs-/Änderungsdaten

/robots.txt

Leer ausgeliefert: nichts gesperrt

Dieser Server verwendet die Sitemap und die Antwortseiten. Die RSS-Feeds sind eine leichtgewichtige Option, wenn Sie nur neue Antworten wollen und keine Suche benötigen – sie brauchen keinen Index und kein Scraping:

curl -s https://islamqa.org/hanafi/askimam/feed/

Antwort-URLs sind strukturiert, sodass Sie jede Antwort direkt adressieren können:

https://islamqa.org/{madhhab}/{source}/{post_id}/{slug}/
                     hanafi   askimam  127638   can-i-wipe-make-masah-over-the-new-socks

Falls islamqa.org jemals seine REST-API aktiviert, sollte dieser Server darauf umsteigen – eröffnen Sie ein Issue, wenn Sie bemerken, dass sie zurückkommt.

Konfiguration

Alle optional, als Umgebungsvariablen gesetzt:

Variable

Standard

Zweck

ISLAMQA_DATA_DIR

~/.cache/islamqa-mcp

Wo Index und Cache leben

ISLAMQA_REQUEST_DELAY

1.0

Sekunden zwischen Anfragen

ISLAMQA_CACHE_TTL_DAYS

90

Wie lange eine gecachte Antwort frisch bleibt

ISLAMQA_INDEX_TTL_DAYS

30

Wann der Index neu aufgebaut wird

ISLAMQA_USER_AGENT

identifiziert dieses Tool

Wird mit jeder Anfrage gesendet

Etikette (adab)

Dies liest einen kostenlosen Dienst, der von Spenden betrieben wird, daher ist es darauf ausgelegt, ein guter Gast zu sein:

  • Eine Anfrage pro Sekunde, global serialisiert — gleichzeitige Tool-Aufrufe können nicht zu einem Burst ausufern.

  • Cachet aggressiv. Fatwas sind nach der Veröffentlichung praktisch unveränderlich, daher wird eine Seite einmal abgerufen und 90 Tage lang wiederverwendet.

  • Holt nur, was angefragt wird. Der Massendurchlauf liest die Sitemap, nicht 100.000 Antwortseiten. Hier gibt es keinen Crawler.

  • Identifiziert sich mit einem echten User-Agent, der auf dieses Repository verweist.

  • Auf einen Host beschränkt. Jede URL wird vor dem Öffnen eines Sockets gegen eine Allowlist geprüft, sodass kein Argument eines Modells dies in einen offenen Proxy verwandeln kann.

  • Schreibt alles zu. Die ausstellende Institution, der Mufti, sofern genannt, und ein Link zur eigenen Kopie des darul ifta begleiten jede Antwort.

Wenn Sie islamqa.org betreiben und hier etwas geändert haben möchten — das Rate-Limit, den User-Agent oder die Existenz des Tools —, öffnen Sie bitte ein Issue, und es wird bearbeitet.

Zur Verwendung. Dies sind Antworten qualifizierter Muftis, aber eine Fatwa wird einer bestimmten Person in einem bestimmten Kontext gegeben. Ein Suchergebnis ist kein Urteil über Ihre Situation, und ein Sprachmodell, das eines übermittelt, ist kein Gelehrter. Bei allem, was Konsequenzen hat, fragen Sie direkt eine qualifizierte Person.

Entwicklung

uv sync --extra dev
uv run pytest          # 81 tests, no network — runs against saved fixtures
uv run ruff check .
uv run mypy src/islamqa_mcp

Die Parser-Tests laufen gegen gekürzte Kopien echter Seiten. Wenn islamqa.org seine Vorlage ändert, schlagen sie laut fehl, was beabsichtigt ist: Eine stille Parse-Regression würde dem Modell leise leere Antworten zuführen.

Lizenz

MIT — siehe LICENSE.

Die Lizenz deckt nur diese Software ab. Die Fatwas gehören den Gelehrten und Institutionen, die sie ausgestellt haben. Dieses Tool liest öffentliche Seiten und verlinkt zurück; es verteilt das Archiv nicht weiter.

A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides AI assistants with comprehensive access to Islamic resources including Quran verses with translations, Tafsir commentary, Hadith collections, and audio recitations. Enables users to explore Islamic texts, get daily inspiration, and access scholarly interpretations through natural language queries.
    18
    31
    9
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables debate search and citation functionality through web search, Wikipedia, arXiv, and AWS documentation APIs. Designed to power debate features with comprehensive research and citation tools via MCP protocol.
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables fetching and searching canonical hadith texts (Arabic and English) with cross-references and citation-safe URLs for assistants, built on FastMCP.
    1
    GPL 3.0

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/RealYusufIsmail/islamqa-org-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server