Skip to main content
Glama
2yousefreda

Islamic Content MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}
resources
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
quran_servicesA

Access QuranEnc to fetch Quran textual translations, translations lists, and ayah-level audio. Unlike islamhouse_quran, this tool specializes strictly in text-based translations of meanings and single-ayah audio, rather than full recitations or reciter data.

Behavior: Read-only. Idempotent. No authentication required. No strict rate limits. Usage Guidelines:

  • Use this tool when you need the textual translation of an Ayah or Sura in a specific language, or a short audio clip of one Ayah.

  • Do NOT use this tool for full Sura recitations or fetching reciter profiles (use islamhouse_quran instead). Action Mapping & Parameters:

  • list_translations: Requires language (optional localization). Returns a JSON array of available translations.

  • get_sura_translation: Requires translationKey and suraNumber. Returns a JSON object with the translation of the full Sura.

  • get_aya_translation: Requires translationKey, suraNumber, and ayaNumber. Returns a JSON object with the specific Ayah's text.

  • get_aya_audio: Requires translationKey, suraNumber, and ayaNumber. Returns a JSON object with an audio URL for the Ayah. Returns: A JSON array or object containing the requested QuranEnc data.

islamhouse_quranA

Access IslamHouse to fetch Quranic audio recitations, reciter (author) profiles, and Sura recitation metadata. Unlike quran_services, this specializes in high-quality, full-Sura audio recitations and reciter catalogs rather than textual translations.

Behavior: Read-only. Idempotent. No authentication. Returns 404/empty on invalid IDs, with safe fallbacks on missing audio. Usage Guidelines:

  • Use for full audio recitations of the Quran or reciter information (e.g., Al-Sudais).

  • Do NOT use for fetching written Quran text/translations (use quran_services instead). Action Mapping:

  • list_categories: language (ISO-639-1) -> Category[] { id: number, title: string }

  • get_category, get_author: language (ISO-639-1), id (int) -> { id, title, description, count }

  • get_author_recitations: id (author ID, int), language (ISO-639-1) -> { data: [{ recitationId, title }] }

  • get_sura_recitations: suraId (int 1-114), language (ISO-639-1) -> { suraId, name, recitations: [] }

  • get_recitation_details: id (recitation ID, int), language (ISO-639-1) -> { id, reciterId, audioUrl, duration }

hadeethenc_servicesA

Access HadeethEnc to fetch authentic Hadith texts, categories, and translations in multiple languages. This is the only tool dedicated exclusively to Hadith texts and their detailed explanations.

Behavior: Read-only. Idempotent. No authentication. No strict rate limits. Returns empty if ID not found. Usage Guidelines:

  • Use when the user asks for Prophetic sayings, Hadith translations, or scholarly explanations.

  • Do NOT use for official fatwas or general books (use islamhouse_library or risalat_al_haramain). Action Mapping:

  • list_languages, list_categories, list_root_categories: languageCode (ISO-639-1) -> Returns { categories: [{ id, title, hadeeths_count }] }

  • list_hadiths: language, categoryId (int), page (int), perPage (int) -> Returns { data: [{ id, title }] }

  • get_hadith_details: id (int), language (ISO-639-1) -> Returns { id, hadeeth, explanation, translations: [] } Returns: JSON array for lists or a detailed JSON object containing specific Hadith text and translations.

islamhouse_libraryA

Access IslamHouse Library for books, audios, videos, fatwas, articles, and author metadata. Excludes Quran recitations (use 'islamhouse_quran') and Hadith texts (use 'hadeethenc_services').

Behavior: Read-only, idempotent, public access (no auth/rate limits). Cached dynamically with real-time freshness. Fallback to English on missing translations; returns empty arrays for unknown IDs; returns 400 error payload on invalid actions or malformed parameters.

Usage Guidelines:

  • Use for: Scholarly books, articles, fatwas, multimedia, and author biographies.

  • Do NOT use for: Raw Quran text/audio ('islamhouse_quran' / 'quran_services') or Hadith collections ('hadeethenc_services').

Parameters & Enums:

  • action: API operation (see Action Groups below).

  • type: Content format enum: books, audios, videos, fatwas, articles.

  • period: Trending window enum: daily, weekly, monthly.

  • sort: Ordering enum: popular, newest, oldest.

  • kind: Scope filter enum: main, sub.

  • language, siteLang, contentLang, slang, locale: 2-letter ISO-639-1 codes (e.g., 'en', 'ar').

  • page, limit: Integer pagination controls.

  • id, categoryId, authorId: Positive integer identifiers.

Action Groups & Returns:

  • Taxonomy (list_categories, list_types, get_categories_tree): Requires language -> Array of { id: number, name: string, parentId?: number }.

  • Listings (list_items, get_latest_items, get_highlighted_items): Uses page, limit, type, [categoryId/authorId/period/sort/contentLang] -> { data: ItemSummary[], total: number, page: number }.

  • Aggregations (get_items_count): Uses type, [categoryId/contentLang] -> { type: string, total: number }.

  • Details (get_item_details, get_item_attachments, get_item_translations): Requires id, [language] -> Detailed { id, title, description, attachments: Attachment[], locales: string[] }.

  • Authors (get_author_details, list_authors): Uses id, page, limit, [language, kind, locale, sort] -> Author profile with { id, name, biography, itemsCount: number }.

bayan_al_islamA

Access Bayan Al-Islam to fetch specialized Islamic content targeting Muslims and Non-Muslims, including translated articles and structured lookups. Unlike the general IslamHouse library, this provides curated content categorized by the target audience's faith perspective.

Behavior: Read-only. Idempotent. No authentication. Falls back to default language if translation is missing. Usage Guidelines:

  • Use when seeking content specifically tailored for non-Muslims, or curated responses to common questions.

  • Do NOT use for raw Hadith (use hadeethenc_services) or Quran recitations (use islamhouse_quran or quran_services). Action Mapping:

  • list_languages, list_paginated_languages: language, page (int), [name] -> Returns { languages: [{ code, name }] }

  • list_muslim_content, list_non_muslim_content: language -> Returns { paths: [] }

  • get_content, search_name: id (int) or name (string), language -> Returns { id, title, body, matchingResults: [] }

  • get_recent_contents: ids (array of ints), init (bool), lang (overrides language) -> Returns { recentItems: [] }

  • get_lookups, get_available_languages: id (int), language -> Returns { metadata: [] }

  • get_content_translation, get_attachments_translation: id (int), targetLanguage (ISO-639-1), language -> Returns { translatedBody, attachments: [] } Returns: Concrete JSON payload { id, title, body, paths: [], recentItems: [] } containing targeted content.

risalat_al_haramainA

Access Risalat Al-Haramain to fetch official Haramain (Two Holy Mosques) fatwas, Friday sermons, specific hadeeths, and institutional contents. Specializes in official decrees and sermons originating from Mecca and Medina, distinguishing it from general libraries.

Behavior: Read-only. Idempotent. Public endpoints have no auth. Lookup endpoints require apiKey. Handles rate limits via graceful empty returns. Usage Guidelines:

  • Use for Friday sermons from the Haramain, official fatwas from Haramain scholars, or institutional news.

  • Do NOT use for general Islamic books (use islamhouse_library). Action Mapping:

  • get_full_contents, get_contents: language, lang -> Returns { data: [{ id, title, date }] }

  • get_fatwas, get_hadeeths, get_quran: language, lang, [isFeatured (0/1)] -> Returns { data: [{ id, content }] }

  • get_content: id (int), language -> Returns { id, title, body, mediaUrls: [] }

  • search_contents: query (string), language -> Returns { results: [{ id, title }] }

  • get_lookups_languages, get_lookups_content_types: language, [apiKey] -> Returns { lookups: [] } Returns: Concrete JSON object { data: [], lookups: [], results: [] } for Haramain official releases.

al_montakaA

Access Al Montaka to fetch general content. Note: Content fetching by category is currently unstable upstream, so use it to fetch the latest general content instead.

Action Mapping:

  • list_contents: page (int) -> Returns { data: [], meta: {} }

  • get_comments: id (int) -> Returns comments for content

  • get_lookups_age_groups, get_lookups_languages, get_lookups_targeted_groups, get_lookups_youtube_channels: No args -> Returns lookups array

  • get_lookups_categories, get_lookups_entities, get_lookups_expert_levels, get_lookups_sections, get_lookups_tags: languageId (int), [nameCont] -> Returns lookups array

  • get_lookups_ideologies: languageId (int), parentId (int), [nameCont] -> Returns lookups array

  • get_lookups_persons: [nameCont], [page] -> Returns lookups array

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
Islamic Content SDK Integration Guide (NPM & PIP)Official guide on how to import, initialize, and use the Islamic Content SDK in both Python (PIP) and Node.js (NPM/TS).

TDQS

A4.3/5.0

Scored across 7 tools

Disambiguation3/5

Most tools are separated by source and content type, but there is overlap between islamhouse_library, bayan_al_islam, and al_montaka for articles/general content, and risalat_al_haramain's get_hadeeths/get_fatwas overlap with dedicated Hadith and library fatwa tools. The detailed 'Do NOT use' guidance helps, but agents must read carefully to avoid mis-selection.

Naming Consistency3/5

All names use lower_snake_case and are source-based, which is readable, but the pattern is inconsistent: some include domain suffixes (islamhouse_quran, quran_services, hadeethenc_services) while others are bare source names (bayan_al_islam, risalat_al_haramain, al_montaka). There is no verb_noun pattern, though this is understandable for provider-style content servers.

Tool Count5/5

Seven tools is well-scoped for a multi-source Islamic content server. Each tool represents a distinct content provider or content type and earns its place without overwhelming an agent with excessive options.

Completeness4/5

The set covers the major content types for the domain: Hadith, Quran text and audio, library books/fatwas/articles, official Haramain content, and curated targeted articles. Minor gaps exist, such as no cross-source unified search and al_montaka's unstable category fetching, but agents can work around these limitations.

Maintenance

ActivityMaintained
ResponsivenessNo issues