Skip to main content
Glama

Muslim Prayer Reminder MCP

Server Details

Production-ready Muslim prayer reminder MCP with astronomical precision and theological disclosure.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
tareq7/muslim-prayer-mcp
GitHub Stars
1
Server Listing
Muslim Prayer Reminder MCP

Available Tools

5 tools
configure_prayer_preferencesConfigure User Prayer PreferencesA
Idempotent
Inspect

Configures prayer calculation parameters, location behavior (fixed or auto_travel), madhab, reminder mode, and notification language in persistent storage.

ParametersJSON Schema
NameRequiredDescriptionDefault
localeNoLanguage for reminder text: en or ar
madhabNoJurisprudential Asr shadow calculation: Shafi or Hanafi
userIdYesUnique user identifier
enabledNoWhether prayer reminders are enabled
timezoneNoIANA timezone identifier (e.g. Asia/Riyadh, Europe/London)
fixedCityNoPredefined city name for fixed location (e.g. Riyadh, London)
locationModeNoLocation strategy: auto_travel or fixed
reminderModeNoReminder display policy: prayer_window, exact_window, persistent
fixedCoordinatesNoFixed geographical coordinates
highLatitudeRuleNoHigh latitude twilight adjustment rule
calculationMethodNoIslamic prayer calculation authority
minuteAdjustmentsNoCustom per-prayer minute offsets (-60 to +60)
exactWindowMinutesNoDuration in minutes for exact_window mode

Output Schema

ParametersJSON Schema
NameRequiredDescription
successYesWhether configuration succeeded
preferencesYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare idempotentHint=true, destructiveHint=false, and readOnlyHint=false, so the safety profile is covered. The description adds the useful context that changes are stored in 'persistent storage,' but it does not disclose whether unspecified fields are preserved or reset, or how partial updates behave.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence with the action verb front-loaded and no filler words. It packs the key scopes of configuration into a compact list without sacrificing readability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the high schema richness (13 parameters, enums, nested objects) and the existing annotations for idempotency and safety, the description is a sufficient entry point. The only minor gap is the lack of explicit statement about whether calling this tool updates only provided fields or overwrites the entire preference object.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema fully documents every parameter. The description merely summarizes categories already present in the schema (location, madhab, reminder mode, language) without adding semantic details like defaults, interaction between parameters, or unit context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb ('Configures') and names the concrete resource: prayer calculation parameters, location behavior, madhab, reminder mode, and notification language. This clearly distinguishes it from the sibling get_* tools, which are all read-only lookups.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit statement of when to use this tool versus the sibling getters, nor any mention of prerequisites or exclusions. The usage is only implied by the verb 'Configures' and the presence of write-oriented annotations, but the description itself gives no direct guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_next_prayerGet Upcoming Prayer and CountdownA
Read-onlyIdempotent
Inspect

Returns the immediate next prayer name, scheduled time, authority calculation method, and remaining countdown in minutes. MANDATORY: The LLM must always explicitly disclose to the user which calculation authority method was used and why it was selected (see authorityNotice in response).

ParametersJSON Schema
NameRequiredDescriptionDefault
madhabNoOptional Asr shadow jurisprudence override (Shafi or Hanafi)
userIdNoUnique user or device ID
latitudeNoOptional explicit latitude override
timezoneNoOptional IANA timezone override
longitudeNoOptional explicit longitude override
calculationMethodNoOptional calculation authority override (auto-resolved from location by default)

Output Schema

ParametersJSON Schema
NameRequiredDescription
madhabYesActive Asr jurisprudence
timezoneYesResolved IANA timezone
nextPrayerYesName of the upcoming prayer
locationSourceYesSource of location resolution
authorityNoticeNo
nextPrayerAtUtcYesUTC timestamp of the upcoming prayer
selectionReasonNo
currentLocalDateYesCurrent local date YYYY-MM-DD
remainingMinutesYesMinutes remaining until prayer start
calculationMethodYesActive calculation authority
minuteAdjustmentsNo
nextPrayerLocalTimeYesFormatted local time HH:mm
authorityDescriptionNo

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the operation read-only and idempotent, and the description adds a behavioral obligation: the LLM must always disclose the calculation authority method and the reason it was selected. It also references authorityNotice in the response, providing context about the output contract beyond the raw schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one tight sentence enumerating the returned fields, followed by a short, clearly marked mandatory instruction. No filler or repetition; the important disclosure requirement is placed at the end but prominent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 100% schema coverage, all six optional parameters are documented, annotations cover the read-only/idempotent safety profile, and an output schema exists to define the return shape. The description fills the remaining gaps: what the function returns and the mandatory disclosure requirement. It could be more complete by noting that no parameters are required, but the schema already makes this evident.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the parameter descriptions already carry the semantic load. The tool description adds no additional meaning about madhab, calculationMethod, or the geographic overrides; it only mentions the authority calculation method as an output field. The baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Returns') and identifies the resource ('immediate next prayer') along with the exact fields returned: name, scheduled time, authority calculation method, and countdown in minutes. It is clear, but it does not explicitly distinguish this from sibling tools such as get_today_prayer_times or get_prayer_status, so it misses the top score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to choose this tool rather than get_today_prayer_times, get_prayer_status, or get_prayer_preferences. The description only contains a mandatory disclosure instruction for the response, not any context about tool selection or when the tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_prayer_preferencesRetrieve Stored Prayer PreferencesA
Read-onlyIdempotent
Inspect

Returns the currently active calculation settings and preferences for a user. Read-only operation.

ParametersJSON Schema
NameRequiredDescriptionDefault
userIdYesUnique user identifier

Output Schema

ParametersJSON Schema
NameRequiredDescription
localeNo
madhabNo
userIdNo
enabledNo
messageNo
timezoneNo
fixedCityNo
locationModeNo
reminderModeNo
updatedAtUtcNo
fixedCoordinatesNo
highLatitudeRuleNo
calculationMethodNo
minuteAdjustmentsNo
exactWindowMinutesNo

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description need not repeat those. It adds minimal context by clarifying that the returned settings are the 'currently active' ones, but it does not describe behavior for invalid userIds or whether there are any side effects. No contradiction with annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the main action and object. The second sentence, 'Read-only operation', is redundant with annotations but is short and does not significantly detract from clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with one documented parameter and an output schema, the description covers the essential semantics. It lacks sibling differentiation and usage conditions, but the context signals and schema fill most gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the single parameter 'userId' is already described as 'Unique user identifier' in the schema. The description's mention of 'for a user' aligns with the parameter but does not add new semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Returns') and names the resource ('currently active calculation settings and preferences for a user'), making the tool's purpose clear. It is distinguishable from siblings like get_next_prayer or get_today_prayer_times by focusing on settings and preferences, though it does not explicitly name a sibling to differentiate from.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for retrieving a user's active preferences but does not state when to use it over alternatives such as configure_prayer_preferences or get_prayer_status. The 'Read-only operation' note signals safety but offers no explicit when-to-use or when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_prayer_statusCheck Muslim Prayer Due StatusA
Read-onlyIdempotent
Inspect

Checks if a Muslim obligatory prayer (Fajr, Dhuhr, Asr, Maghrib, Isha) is currently due for the user location and returns active reminder details. MANDATORY: The LLM must always explicitly disclose to the user which calculation authority method was used and why it was selected (see authorityNotice in response).

ParametersJSON Schema
NameRequiredDescriptionDefault
madhabNoOptional Asr shadow jurisprudence override (Shafi or Hanafi)
userIdNoUnique user or device ID for preference and deduplication tracking
latitudeNoOptional explicit latitude override
timezoneNoOptional IANA timezone override (e.g. Asia/Riyadh)
longitudeNoOptional explicit longitude override
calculationMethodNoOptional calculation authority override (auto-resolved from location by default)

Output Schema

ParametersJSON Schema
NameRequiredDescription
madhabYesActive Asr jurisprudence
prayerNoThe name of the currently due prayer if applicable
timezoneYesResolved IANA timezone
dedupeKeyNoDeduplication cache key
localDateYesCurrent local date in YYYY-MM-DD
nextPrayerYesThe name of the next upcoming prayer
reminderDueYesWhether a prayer is currently due for reminder
expiresAtUtcNoUTC expiration time of the active prayer window
reminderTextNoLocalized reminder message
startedAtUtcNoUTC start time of the active prayer window
locationSourceYesSource of location resolution
authorityNoticeNoMandatory theological transparency notice
nextPrayerAtUtcYesUTC timestamp of the next upcoming prayer
selectionReasonNoReason for authority selection
calculationMethodYesActive calculation authority
minuteAdjustmentsNoApplied minute adjustments
authorityDescriptionNoDescription of the calculation authority

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the key behavioral disclosure that the LLM must disclose the calculation authority method used and why, which is exactly the kind of non-obvious behavior an agent needs to know. It also clarifies that the result is location-dependent and that the calculation method is auto-resolved unless overridden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: the first states the core function with the relevant prayer names, the second gives a mandatory compliance instruction. No filler, front-loaded with the core purpose. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The function is a read-only lookup with an output schema available, all parameters are documented, and the only critical non-obvious requirement (disclosing the calculation method) is explicitly stated. There is no missing information an agent would need to call this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all six parameters are already documented in the schema. The description adds context that calculationMethod and location overrides are optional and auto-resolved, but the description does not add significant new meaning beyond the schema's own descriptions. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks whether a Muslim obligatory prayer (Fajr, Dhuhr, Asr, Maghrib, Isha) is currently due for the user's location and returns active reminder details. The specific verb 'checks', the resource ('prayer due status'), and the listed prayer names distinguish it clearly from siblings like get_next_prayer and get_today_prayer_times.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description names the sibling tools implicitly through the five prayers and 'due status' framing, and the MANDATORY instruction tells the agent a key practice to follow (disclosing the calculation method). It could explicitly say 'use get_next_prayer for upcoming prayers' or 'use get_today_prayer_times for a schedule', but the due-status wording plus sibling names is clear enough context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_today_prayer_timesGet Full Daily Prayer TimetableA
Read-onlyIdempotent
Inspect

Retrieves today prayer timetable (Fajr, Sunrise, Dhuhr, Asr, Maghrib, Isha) in UTC and formatted local time. MANDATORY: The LLM must always explicitly disclose to the user which calculation authority method was used and why it was selected (see authorityNotice in response).

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoDate in YYYY-MM-DD format (defaults to today)
madhabNoOptional Asr shadow jurisprudence override (Shafi or Hanafi)
userIdNoUnique user or device ID
latitudeNoOptional explicit latitude override
timezoneNoOptional IANA timezone override
longitudeNoOptional explicit longitude override
calculationMethodNoOptional calculation authority override (auto-resolved from location by default)

Output Schema

ParametersJSON Schema
NameRequiredDescription
madhabYesActive Asr jurisprudence
timesUtcYes
timezoneYesResolved IANA timezone
localDateYesLocal schedule date YYYY-MM-DD
timesLocalYes
coordinatesYes
authorityNoticeNo
selectionReasonNo
calculationMethodYesActive calculation authority
minuteAdjustmentsNo
authorityDescriptionNo

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and non-destructive, covering the safety profile. The description adds meaningful behavioral context beyond annotations: the response includes both UTC and formatted local time, and there is a strict user-facing disclosure obligation about the calculation authority method via authorityNotice.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with zero wasted words the retrieval action and scope are front-loaded, followed by the high-priority disclosure directive. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return value documentation is not the description's job. The description covers the prayer times returned, the dual time formats, and the mandatory disclosure, while all seven optional parameters are fully captured in the schema. It could have explicitly mentioned the auto-resolution default, but that is already present in the calculationMethod parameter description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter already documented and enums provided for madhab and calculationMethod, so the baseline of 3 applies. The description does not add semantic detail about parameters; the authorityNotice reference is about the response behavior rather than input meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Retrieves') and a clear resource ('today prayer timetable') and enumerates the exact set of returned times (Fajr, Sunrise, Dhuhr, Asr, Maghrib, Isha). The full-day scope distinguishes it from the sibling get_next_prayer without needing to open either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides no guidance on when to use this tool versus siblings such as get_next_prayer, get_prayer_status, or configure_prayer_preferences. The MANDATORY disclosure requirement is an invocation condition, not a selection guideline, so there is no when-to-use or when-not-to-use information.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updates
    • Changedconfigure_prayer_preferences3 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • removedInput schema / properties / fixedCoordinates / additionalProperties
        Removed value: -false
      • removedInput schema / properties / minuteAdjustments / additionalProperties
        Removed value: -false
    • Changedget_next_prayer3 fields changed
      • removedInput schema / additionalProperties
        Removed value: -false
      • addedOutput schema / properties / remainingMinutes / maximum
        Added value: +9007199254740991
      • addedOutput schema / properties / remainingMinutes / minimum
        Added value: +-9007199254740991
    • Changedget_prayer_preferences1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_prayer_status1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedget_today_prayer_times1 field changed
      • removedInput schema / additionalProperties
        Removed value: -false
  2. 5 tool updates
    • First observedconfigure_prayer_preferences
    • First observedget_next_prayer
    • First observedget_prayer_preferences
    • First observedget_prayer_status
    • First observedget_today_prayer_times

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Azan-MCP is an open-source Model Context Protocol (MCP) server that brings a comprehensive suite of Islamic utilities directly into AI assistants such as Claude Desktop.
    34
    383
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server providing Malaysian/global prayer times (JAKIM + Aladhan fallback), nearest mosque/surau finder, and Islamic calendar events.
    4
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Remote MCP server exposing Wasilah's Islamic reference data, enabling prayer-time, Qibla, Hijri-date, and Quran-audio queries via natural language.
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    An MCP server providing comprehensive Islamic utilities, including prayer times, azan, Hijri calendar, du'a, zakat, and the 99 Names of Allah.
    34
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes: configuration, preference retrieval, next prayer timing, current-due status, and the full daily timetable. There is slight potential confusion between get_prayer_status and get_next_prayer because both deal with current/upcoming prayer timing, but their descriptions sufficiently separate 'currently due' from 'immediate next.'

Naming Consistency5/5

All tool names follow a consistent get_/configure_ + noun-phrase pattern in snake_case. The naming is predictable and an agent can infer likely behavior from the verb and object.

Tool Count5/5

Five tools is well-scoped for a prayer reminder server. Each tool covers a distinct need without redundancy or bloat.

Completeness4/5

The set covers configuration, preference retrieval, daily schedule, next prayer, and current due status—core reminder workflows are represented. Minor gaps exist such as no ability to retrieve prayer times for arbitrary dates or list calculation authorities, but these are not blocking for the apparent purpose.