io.github.TarteelAI/tarteel-mcp-server

Tarteel MCP Server

Quran MCP server for translation, tafsir, mutashabihat, recitation playlists, and prayer times.

Endpointhttps://mcp.tarteel.ai/mcp (streamable-http)
Registry version2.0.0
Now16 tools · grade D (58) · pin ts_bbd0899c2791d46fe61f9847228e2611 · protocol 2025-06-18
First / last listed2026-10-28 02:48 UTC / 2026-10-28 02:48 UTC
Grade over time2026-10-28: D (58), 16 tools

Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.

Timeline

First listing · 2026-10-28 02:48 UTC
16 tools, grade D (58)

Tools: ayah_mutashabihat phrase_mutashabihat ayah_translation ayah_tafsir ayah_search list_reciters list_tafsirs list_translations play_ayahs prayer_times lookup_reciters lookup_tafsirs lookup_translations get_translation_text get_tafsir_text search_ayahs_text

Current tools (16)

ayah_mutashabihatShow repeated phrase metadata for one ayah with an interactive display. Use this when: the user asks which phrases in a specific ayah repeat elsewhere; the user needs phrase IDs and counts before calling phrase_mutashabihat.
params: surah*, ayah*, same_surah_only
phrase_mutashabihatShow phrase mutashabihat occurrences with an interactive display. Use this when: the user provides phrase text and asks where it appears; the user has a phrase_id (for example from ayah_mutashabihat) and wants all matches.
params: phrase_id, phrase_text, same_surah_only
ayah_translationDEFAULT tool for user-facing translation display. Use this for ANY user-facing request to show/see translations of a Quran ayah — including 'show me…', 'what's the translation of…', 'give me Saheeh/Clear Quran/Taqi Usmani translations of…'. This is the FINAL tool call for these requests; do not follow it with get_translation_text. ONLY skip this widget and use get_translation_text when EITHER (a)
params: queries*
ayah_tafsirDEFAULT tool for user-facing tafsir display. Use this for ANY user-facing request to show/see tafsir commentary on a Quran ayah — including 'show me the tafsir of…', 'what does Ibn Kathir say about…', 'explain this ayah'. This is the FINAL tool call for these requests; do not follow it with get_tafsir_text. ONLY skip this widget and use get_tafsir_text when EITHER (a) the user explicitly asks for
params: queries*
ayah_searchDEFAULT tool for user-facing Quran search. Use this for ANY user-facing search — 'find ayahs that contain X', 'where does X appear in the Quran', 'search the Quran for X', or similar. This is the FINAL tool call for these requests; do not follow it with search_ayahs_text. Shows matches in an interactive widget the user can browse. Query is Arabic script only (diacritics and punctuation are ignored
params: query*, max_results
list_recitersDEFAULT tool for user-facing reciter-listing questions. Use this for ANY user-facing query like 'what reciters are available', 'who can recite for me', 'list Quran reciters'. This is the FINAL tool call for these requests; do not follow it with lookup_reciters. Shows the catalog in an interactive widget the user can browse. ONLY use lookup_reciters instead when EITHER (a) the user explicitly asks
params: none
list_tafsirsDEFAULT tool for user-facing tafsir-listing questions. Use this for ANY user-facing query like 'what tafsirs are supported', 'list English tafsirs', 'which tafsir collections do you have'. This is the FINAL tool call for these requests; do not follow it with lookup_tafsirs. Shows the catalog in an interactive widget the user can browse. ONLY use lookup_tafsirs instead when EITHER (a) the user expl
params: languages
list_translationsDEFAULT tool for user-facing translation-listing questions. Use this for ANY user-facing query like 'what English translations are available', 'list French translations', 'which translators can I choose from'. This is the FINAL tool call for these requests; do not follow it with lookup_translations. Shows the catalog in an interactive widget the user can browse. Use ISO 639-1 codes like 'en', not
params: language, locale
play_ayahsPlay Quranic ayah audio with an interactive player widget. Use this when: the user asks to play/listen to ayahs. RECITER HANDLING: If the user names a specific reciter (e.g. 'Husary', 'Minshawi', 'Al-Afasy', 'Abdul Basit'), ALWAYS call lookup_reciters first to resolve the exact reciter_id — do not guess the ID. Guessed IDs routinely point at the wrong reciter. If the user doesn't specify a reciter
params: queries*, default_reciter_id
prayer_timesGet Islamic prayer times for a city with an interactive timetable display. Use this when: the user asks for salah times in a location; the user asks to calculate times with a specific prayer method (for example ISNA or MWL).
params: city*, country, method
lookup_recitersINTERNAL/preparatory tool — text-only, no widget rendered. NEVER use as the user-facing answer to a 'what reciters are available' question — use list_reciters for that (the default interactive widget). Use this ONLY when EITHER (a) the user explicitly asks for plain text / raw data / no widget, OR (b) you will chain the result into play_ayahs in the same turn without showing the raw list (e.g. use
params: none
lookup_tafsirsINTERNAL/preparatory tool — text-only, no widget rendered. NEVER use as the user-facing answer to a 'what tafsirs are supported' question — use list_tafsirs for that (the default interactive widget). Use this ONLY when EITHER (a) the user explicitly asks for plain text / raw data / no widget, OR (b) you will chain the result into ayah_tafsir in the same turn without showing the raw list (e.g. reso
params: languages
lookup_translationsINTERNAL/preparatory tool — text-only, no widget rendered. NEVER use as the user-facing answer to a 'what translations are available' question — use list_translations for that (the default interactive widget). Use this ONLY when EITHER (a) the user explicitly asks for plain text / raw data / no widget, OR (b) you will chain the result into ayah_translation in the same turn without showing the raw
params: language, locale
get_translation_textINTERNAL/preparatory tool — text-only, no widget rendered. NEVER use as the user-facing answer to any 'show me / what's the translation of…' request — use ayah_translation for that (the default interactive widget). Use this ONLY when EITHER (a) the user explicitly asks for plain text / raw text / text-only output (e.g. 'give me just the text', 'no widget'), OR (b) you will chain the result into an
params: queries*
get_tafsir_textINTERNAL/preparatory tool — text-only, no widget rendered. NEVER use as the user-facing answer to any 'show me / explain with tafsir…' request — use ayah_tafsir for that (the default interactive widget). Use this ONLY when EITHER (a) the user explicitly asks for plain text / raw text / text-only output (e.g. 'give me just the commentary text', 'no widget'), OR (b) you will chain the result into an
params: queries*
search_ayahs_textINTERNAL/preparatory tool — text-only, no widget rendered. NEVER use as the user-facing answer to a search query — use ayah_search for that (the default interactive widget). Use this ONLY when EITHER (a) the user explicitly asks for plain text / raw results / no widget, OR (b) you will chain the resolved ayah keys into another tool in the same turn (play_ayahs, ayah_tafsir, or ayah_translation) wi
params: query*, max_results

Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.