Skip to main content
Glama

islamqa-org-mcp

Claude、Codex、その他あらゆるMCPクライアントに、出典付きの約98,000件のファトワーへのアクセスを提供します。

IslamQA.org 用の MCP サーバーです。スンニ派四大法学派にわたる47の独立したダルル・イフター機関の回答を集約しています。

CI Python 3.11+ License: MIT MCP

ウェブサイト · インストール · ChatGPT · ツール · 仕組み · エチケット


なぜ

言語モデルにフィクフの質問をすると、訓練データのぼんやりとした混ざり物から、出典もなく、法学派もなく、検証手段もないまま回答します。これはこの種の質問に対しては間違った形です。

このサーバーはそのデフォルトを変えます。あなたのアシスタントは、学者の回答の実際のアーカイブを検索し、ムフティー、法学派、機関、そして開けるURL付きで回答を引用します。学派によって見解が異なる場合、一つの見解があたかもイスラームの定めであるかのように提示されるのではなく、異なることがわかるようになっています。

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

インストール

クローンも手動セットアップも不要です。すでに持っているランナーを選んでください。

uv を使う場合(推奨 — 実際にサーバーを実行するのはこれです):

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

npx を使う場合、Node の方が手軽なら:

npx -y islamqa-mcp

npm パッケージは薄いラッパーです — uv に処理を委ね、uv が隔離されたキャッシュ環境でPythonサーバーを取得して実行します。それでも uv のインストールは必要です。ラッパーが不足している場合のインストール方法を教えてくれます。

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

claude_desktop_config.json に追加します — 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

~/.codex/config.toml に追加します:

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

クライアントを再起動してください。最初の検索でローカルインデックスが構築されます(約1分、約22リクエスト)。それ以降は即座に動作します。

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

その後、クライアントに次のように指定します: uv --directory /absolute/path/to/islamqa-org-mcp run islamqa-mcp

ChatGPT

ChatGPTは上記のクライアントとは異なります。ローカルプロセスを起動できないため、サーバーを公開HTTPS URLでホストする必要があります。そこから2つのことが導かれます。

1. stdio ではなく HTTP で実行します。

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

ChatGPTが必要とするエンドポイントは https://your-host/mcp になります。

2. このモードでは searchfetch を公開します。 ChatGPTは、Developer Modeを有効にしていない限り、正確にその名前のツールを持たないコネクタを拒否します。また、Deep Researchは常にこの2つだけを呼び出します。そのため、HTTPで実行する場合、サーバーはこれらを search_fatwas / get_fatwa のアダプターとして、OpenAIが要求する形式で追加します — search は結果ごとに {id, title, url} を返し、fetch{id, title, text, url, metadata} を返します。すべての結果に実際の islamqa.org のURLが含まれるため、ChatGPTは適切な引用を表示します。

これらは意図的に stdio では登録されていません。Claude と Codex はよりリッチな search_fatwas を利用でき、弱いエイリアスを追加すると、より劣った方を使うように誘導してしまうからです。

デプロイせずに試す

ローカルで実行し、トンネルを向けます — これがChatGPTのコネクタダイアログにあるTunnelトグルの目的です:

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

その後、ChatGPTで: Settings → Apps → Advanced → Developer mode に進み、https://<your-tunnel>/mcp を指すコネクタを追加し、認証は None にします。

適切にホストする

Dockerfile が同梱されており、Render、Railway、Fly.io、Cloud Runで動作します:

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

これはイメージのビルド時にURLインデックスを構築します。これが重要なのは、インデックスに約22リクエストの islamqa.org へのアクセスが必要であり、イメージに焼き込むことで、各レプリカのコールドスタートごとではなく、リリースごとに1回で済むからです。これがないと、オートスケーリングする無料枠が一日中サイトマップを再クロールすることになります。また、最初のユーザー検索も即座になります。

公開する前に: 認証のないコネクタは、URLを見つけた誰にでも開かれています。そして彼らが行うすべてのリクエストは、あなたのサーバーの名義で islamqa.org に対するリクエストになります。自分専用でないならOAuthまたは認証プロキシの背後に置き、レート制限は現在のままにしてください。

スキル

MCPサーバーはモデルにツールを与えます。しかし、それをうまく使う方法は教えません — そしてフィクフにおいては、何を使うかよりもどのように使うかの方が重要です。

skills/islamqa-fatwa は、サーバーと一緒に提供されるClaudeスキルです。これによりアシスタントは次のことを行います:

  • 回答前にどの法学派に従うかを尋ねる — または、従う学派がない場合は4つの立場を並べて提示する

  • 取得していない裁定を決して下さない。 捏造されたハディースも、うろ覚えの「ハナフィー派の見解は…」も、でっち上げのアラビア語引用もありません。アーカイブに何もなければ、穴を埋める代わりにその旨を伝えます

  • 伝統の実際のカテゴリーを使う — すべてをハラール/ハラームに平たくするのではなく、ハナフィー派の七段階の区分も含み、makrūh taḥrīmī が「好ましくない」に格下げされたり「ハラーム」に格上げされたりしないようにします

  • カバレッジが薄い場合にそれを伝える。 アーカイブはハナフィー派に偏っています。マーリキー派の回答がない場合は、推測するのではなくその旨を報告します

  • 離婚、相続、親権など、検索インデックスではなく人を必要とする事項については紹介する

グローバルにインストールします:

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

質問が裁定に関するものであると判明すると、自動的に有効になります。

ツール

ツール

機能

search_fatwas

アーカイブ全体の全文検索。madhhab または source でフィルタリング可能。

get_fatwa

1件の回答を全文で取得: 質問、回答、アラビア語引用、発行機関。

list_sources

47すべてのダルル・イフターサイトと、サイトごとの回答数。

browse_fatwas

最新の回答。オプションでフィルタリング可能。

index_status

インデックスサイズ、キャッシュサイズ、最終再構築日時。

rebuild_index

サイトマップからインデックスを更新。ほとんど必要ありません。

HTTPでは、ChatGPT互換性のために searchfetch が追加されます — ChatGPT を参照。

すべての回答には、出典情報と、モデルにURLを引用し、裁定を一人のムフティーの見解として扱い、普遍的なものとして扱わないよう促す注記が付いて返されます。

コマンドライン

MCPクライアントなしで同じ操作を行う場合:

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

仕組み

IslamQA.org はREST APIが無効化されたWordPressで動作しているため、呼び出せるJSONエンドポイントはありません。公開されているのは完全なサイトマップとサーバーサイドレンダリングされたページ — 読者や検索エンジンのクローラーが見るのと同じ公開ページです。

サーバーは2つの層で動作します:

インデックス。 サイトマップを1回スキャン(約22リクエスト)して、すべての回答URLを、そのID、法学派、発行元、スラッグから導出されたタイトルとともに記録します。約98,000件の回答が数メガバイトと約1分で収まり、以降の検索はローカルかつ即時になります。

キャッシュ。 回答を読むとその1ページを取得して解析し、保存します。検索は両方の層に対するSQLite FTS5インデックス上で実行されるため、回答はタイトルで即座に見つかり、誰かが読んだ後は全文でも見つかります — 使えば使うほどアーカイブの検索可能性が高まります。

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

回答は長年にわたって47の異なるサイトからインポートされたため、ページには3つのテンプレート形状があり、すべて処理されます: 現代的な .ai-question / .ai-answer-content ラッパー。明示的な Question: / Answer: ラベルの付いた素の段落。そしてラベルのない素の段落。余分な Q: プレフィックスと末尾の「Original Source Link」テキストは削除され、古典テキストを引用するアラビア語の脚注は別の citations フィールドに分割されるため、回答はその背後にある証拠を失うことなくきれいに読めます。

islamqa.org にAPIはありますか?

公開JSON APIはありません。 サイトはWordPressを実行していますが、REST APIはサイト全体でオフになっています。2026年8月に調査済み:

エンドポイント

結果

/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

サイト内検索ボックスはElasticPressによってクライアントサイドでレンダリングされるため、その結果もHTMLには含まれていません — そのため、このサーバーはサイト検索をプロキシするのではなく、独自のインデックスを構築しています。

機械可読でオープンなもの:

エンドポイント

形式

備考

/sitemap_index.xml

XML

22の子サイトマップ

/sitemap-posts.xml?page=N

XML

ページあたり5,000件の回答URL、lastmod 付き

/feed/

RSS 2.0

サイト全体の最新回答

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

RSS 2.0

機関ごとの最新回答

回答ページ

HTML + JSON-LD

NewsArticle スキーマに公開/更新日が含まれる

/robots.txt

空で配信: 禁止事項なし

このサーバーはサイトマップと回答ページを使用します。RSSフィードは、新しい回答だけが必要で検索が不要な場合の軽量なオプションです — インデックスもスクレイピングも不要です:

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

回答URLは構造化されているため、任意の回答に直接アクセスできます:

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

islamqa.org がいつかREST APIを有効にした場合、このサーバーはそれに切り替えるべきです — 復活に気づいたらissueを開いてください。

設定

すべてオプションで、環境変数として設定します:

変数

デフォルト

目的

ISLAMQA_DATA_DIR

~/.cache/islamqa-mcp

インデックスとキャッシュの保存場所

ISLAMQA_REQUEST_DELAY

1.0

リクエスト間の秒数

ISLAMQA_CACHE_TTL_DAYS

90

キャッシュされた回答の鮮度保持期間

ISLAMQA_INDEX_TTL_DAYS

30

インデックスを再構築するタイミング

ISLAMQA_USER_AGENT

このツールを識別

すべてのリクエストに付与される

エチケット(アダブ)

これは寄付で運営されている無料サービスを読み取るものなので、良いゲストであるように設計されています:

  • 1秒あたり1リクエスト、グローバルに直列化 — 同時のツール呼び出しがバーストに広がることはありません。

  • 積極的にキャッシュします。 ファトワーは公開されると事実上不変なので、ページは一度取得され、90日間再利用されます。

  • 要求されたものだけを取得します。 一括パスはサイトマップを読み、10万の回答ページは読みません。ここにクローラーはありません。

  • 身元を明らかにします — このリポジトリを指す実際のUser-Agentを使用します。

  • 1つのホストに固定。 ソケットが開く前にすべてのURLが許可リストと照合されるため、モデルからの引数でこれがオープンプロキシになることはありません。

  • すべての帰属を明示します。 発行機関、名前が挙がっている場合はムフティー、そしてダール・アル=イフター自身のコピーへのリンクが、すべての回答に付随します。

islamqa.orgを管理されていて、ここで何かを変更したい場合 — レート制限、User-Agent、またはツールの存在自体 — は、issueを開いていただければ対応します。

使用について。 これらは資格のあるムフティーからの回答ですが、ファトワーは特定の文脈における特定の人物に対して与えられるものです。検索結果はあなたの状況に対する裁定ではなく、それを伝える言語モデルは学者ではありません。重要なことについては、資格のある人に直接尋ねてください。

開発

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

パーサーテストは実際のページのトリミングされたコピーに対して実行されます。islamqa.orgがテンプレートを変更すると、テストは明示的に失敗します。これは意図的です。静かなパース回帰は、空の回答をモデルに静かに渡してしまうからです。

ライセンス

MIT — LICENSEを参照。

ライセンスはこのソフトウェアのみを対象とします。ファトワーはそれを発行した学者と機関に帰属します。このツールは公開ページを読み、リンクを返すだけであり、アーカイブを再配布するものではありません。

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