MCP Server — Quran Tools for Agents & IDEs

Use MCP to access Quran text, audio, narration differences, and mushaf structure in your apps.

📖 QuranHub MCP Server

The QuranHub MCP Server provides a rich set of tools for accessing and exploring the Quran programmatically.
You can use these tools inside Cursor or any other MCP-compatible client.

⚙️ Setup

Add the server to your MCP configuration file:

{
  "servers": {
    "quranhub": {
      "type": "http",
      "url": "https://api.qurani.ai/gw/mcp"
    }
  }
}

🕌 Core Quran Tools

Essential tools for retrieving Quran content by structure.

ToolDescriptionExample Input
get_complete_quranGet the entire Quran in default edition(no input)
get_complete_quran_by_editionGet complete Quran in specific edition"quran-uthmani"
get_surahGet a complete Surah with all verses2 (Al-Baqarah)
get_surah_by_editionGet Surah in specific editionsurah: 1, edition: "en.sahih"
get_surah_by_multiple_editionsGet Surah in multiple editionssurah: 1, editions: "quran-uthmani,en.sahih"
get_ayahGet a specific verse by reference"2:255"
get_ayah_by_editionGet ayah in specific editionref: "2:255", edition: "en.sahih"
get_ayah_by_multiple_editionsGet ayah in multiple editionsref: "2:255", editions: "quran-uthmani,en.sahih"
get_juzGet a complete Juz (1-30)3
get_juz_by_editionGet Juz in specific editionjuz: 1, edition: "en.sahih"
get_pageGet a specific Quran page (1-604)255
get_page_by_editionGet page in specific editionpage: 1, edition: "quran-uthmani"
get_hizbGet a Hizb section (1-60)15
get_hizb_by_editionGet Hizb in specific editionhizb: 1, edition: "quran-uthmani"
get_hizb_quarterGet Hizb Quarter (1-240)120
get_hizb_quarter_by_editionGet Hizb Quarter in specific editionquarter: 1, edition: "quran-uthmani"
get_manzilGet a Manzil for weekly reading (1-7)5
get_manzil_by_editionGet Manzil in specific editionmanzil: 1, edition: "quran-uthmani"
get_rukuGet a Ruku section40
get_ruku_by_editionGet Ruku in specific editionruku: 1, edition: "quran-uthmani"

🔍 Search & Discovery

Tools to search, explore, and discover Quranic content.

ToolDescriptionExample Input
search_quranSearch Arabic text and translations"mercy"
get_random_ayahGet a random verse(no input)
get_random_ayah_by_editionRandom verse in specific edition"en.sahih"
get_random_ayah_by_multiple_editionsRandom verse in multiple editions"quran-uthmani,en.sahih"
get_similar_ayahs_hafsFind verses similar to given ayah (Hafs)surah: 1, ayah: 1
get_similar_ayahs_by_editionFind similar verses by editionsurah: 1, ayah: 1, edition: "quran-uthmani"
get_mutashabihat_phrases_hafsFind similar phrases (Hafs)surah: 2, ayah: 255
get_mutashabihat_phrases_by_editionFind similar phrases by editionsurah: 2, ayah: 255, edition: "quran-uthmani"
get_ayah_themesList all available themes(no input)
get_themes_for_ayahGet themes for specific ayahsurah: 1, ayah: 1

📚 Editions & Translations

Manage and retrieve different Quran editions, translations, and formats.

ToolDescriptionExample Input
get_all_editionsList all editions with filterslanguage: "en", type: "translation"
get_all_languagesGet all supported languages(no input)
get_editions_by_languageEditions by language"ar" or "en"
get_all_typesGet edition types(no input)
get_editions_by_typeEditions by type"translation"
get_all_formatsGet edition formats(no input)
get_editions_by_formatEditions by format"audio" or "text"
get_editions_by_format_and_typeEditions by format and typeformat: "text", type: "narration"
get_editions_analysisStatistical overview of editions(no input)

🎵 Audio & Recitation

Access audio recitations and reciter information.

ToolDescriptionExample Input
get_distinct_audio_editionsList unique audio reciters(no input)
get_all_narrator_identifiersGet all reciter identifiers(no input)
get_audio_editions_by_narratorAudio by specific reciter"quran-warsh"

📖 Special Features

Advanced features for studying and understanding the Quran.

ToolDescriptionExample Input
get_tajweed_rulesTajweed rules for specific words"1:1:2"
get_word_line_numberLine number for word location"1:1:2"
get_word_imageWord-by-word imageslocation: "1:1:2", type: "v4"
get_all_sajdasGet all prostration verses(no input)
get_sajdas_by_editionSajda verses in specific edition"quran-uthmani"
get_narrations_differencesCompare different narrationspage: 1, source: "hafs", target: "warsh"

📊 Metadata & Structure

Organizational and structural information about the Quran.

ToolDescriptionExample Input
get_quran_metadataComplete Quran structure metadata(no input)
get_all_surahsList all 114 Surahs with detailsrevelationOrder: false
get_surahs_by_revelation_citySurahs grouped by Meccan/Medinan(no input)
get_surahs_by_juzSurahs organized by Juz(no input)
get_all_pages_metadataMetadata for all 604 pages(no input)
get_pages_metadata_by_editionPage metadata for specific edition"quran-uthmani"
get_all_juzs_metadataMetadata for all 30 Juz(no input)
get_juzs_metadata_by_editionJuz metadata for specific edition"quran-uthmani"
get_all_hizbs_metadataMetadata for all 60 Hizbs(no input)
get_hizbs_metadata_by_editionHizb metadata for specific edition"quran-uthmani"

🖋️ Typography & Display

Font resources and page layout information.

ToolDescriptionExample Input
get_font_kindsList all font kinds(no input)
get_font_formatsList all font formats(no input)
get_font_archivesList all font archive types(no input)
get_font_categoriesList all font categories(no input)
get_font_detailGet specific font details"uthmani"
get_font_filesList font files for downloadfontCode: "uthmani"
get_font_page_filesGet font files for specific pagefont: "uthmani", page: 1
list_font_page_filesList paginated font filesfont: "uthmani", format: "ttf"

📐 Mushaf Layouts

Page layout and line structure information.

ToolDescriptionExample Input
list_mushaf_layoutsList mushaf page layoutslinesPerPage: 15
get_layout_detailSpecific layout information"hafs_15"
get_layout_page_linesLine structure for pageslayout: "hafs_15", page: 1
get_layout_surah_linesLine structure for surahlayout: "hafs_15", surah: 1
layout_word_lookupFind page/line by word positionlayout: "hafs_15", from: 1, to: 7

🔧 Utility Functions

Basic utility and test functions.

ToolDescriptionExample Input
get_responseBasic API response test(no input)