Muslim Prayer Reminder MCP
Production-ready Muslim prayer reminder MCP with astronomical precision and theological disclosure.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"muslim-prayer-mcp": {
"command": "npx",
"args": [
"muslim-prayer-mcp"
]
}
}
}실행 가능한 패키지
1.0.1stdio원격 엔드포인트
https://muslim-prayer-mcp.najetareqz.workers.dev/mcpstreamable-http할 수 있는 일
도구 목록
도구 (5)
🟢get_prayer_status(city, userId, latitude, longitude, timezone, ...)
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).
입력 스키마
{
"type": "object",
"properties": {
"city": {
"description": "Supported predefined city. Supply city or coordinates with an IANA timezone; connector/IP geolocation is never used.",
"type": "string"
},
"userId": {
"description": "Optional unique user identifier to load stored preferences. If omitted, pure geographic auto-resolution is applied.",
"type": "string",
"minLength": 1
},
"latitude": {
"description": "Optional explicit latitude override",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional explicit longitude override",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "Optional IANA timezone override (e.g. Asia/Riyadh)",
"type": "string"
},
"calculationMethod": {
"description": "Optional calculation authority override (auto-resolved from location by default)",
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
]
},
"madhab": {
"description": "Optional Asr shadow jurisprudence override (Shafi or Hanafi)",
"type": "string",
"enum": [
"Shafi",
"Hanafi"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"nextPrayerCalculation": {
"description": "Adjustment disclosure for the actual schedule of the next event, including tomorrow",
"type": "object",
"properties": {
"localDate": {
"type": "string"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
},
"authorityNotice": {
"type": "object",
"properties": {
"method": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "The calculation authority method"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "The Asr jurisprudence school"
},
"authorityDescription": {
"type": "string",
"description": "Full descriptive name of the calculation authority"
},
"selectionReason": {
"type": "string",
"description": "Rationale for selecting this authority"
},
"requiredDisplayInstruction": {
"type": "string",
"description": "Mandatory theological notice for AI presentation"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"required": [
"method",
"madhab",
"authorityDescription",
"selectionReason",
"requiredDisplayInstruction"
],
"additionalProperties": false
}
},
"required": [
"localDate"
],
"additionalProperties": false
},
"reminderDue": {
"type": "boolean",
"description": "Whether a prayer is currently due for reminder"
},
"prayer": {
"description": "The name of the currently due prayer if applicable",
"type": "string"
},
"localDate": {
"type": "string",
"description": "Current local date in YYYY-MM-DD"
},
"startedAtUtc": {
"description": "UTC start time of the active prayer window",
"type": "string"
},
"expiresAtUtc": {
"description": "UTC expiration time of the active prayer window",
"type": "string"
},
"nextPrayer": {
"type": "string",
"description": "The name of the next upcoming prayer"
},
"nextPrayerAtUtc": {
"type": "string",
"description": "UTC timestamp of the next upcoming prayer"
},
"timezone": {
"type": "string",
"description": "Resolved IANA timezone"
},
"calculationMethod": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "Active calculation authority"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "Active Asr jurisprudence"
},
"minuteAdjustments": {
"description": "Applied minute adjustments",
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"authorityDescription": {
"description": "Description of the calculation authority",
"type": "string"
},
"selectionReason": {
"description": "Reason for authority selection",
"type": "string"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
},
"authorityNotice": {
"description": "Mandatory theological transparency notice",
"type": "object",
"properties": {
"method": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "The calculation authority method"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "The Asr jurisprudence school"
},
"authorityDescription": {
"type": "string",
"description": "Full descriptive name of the calculation authority"
},
"selectionReason": {
"type": "string",
"description": "Rationale for selecting this authority"
},
"requiredDisplayInstruction": {
"type": "string",
"description": "Mandatory theological notice for AI presentation"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"required": [
"method",
"madhab",
"authorityDescription",
"selectionReason",
"requiredDisplayInstruction"
],
"additionalProperties": false
},
"reminderText": {
"description": "Localized reminder message",
"type": "string"
}
},
"required": [
"reminderDue",
"localDate",
"nextPrayer",
"nextPrayerAtUtc",
"timezone",
"calculationMethod",
"madhab"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_today_prayer_times(city, userId, date, latitude, longitude, ...)
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).
입력 스키마
{
"type": "object",
"properties": {
"city": {
"description": "Supported predefined city. Supply city or coordinates with an IANA timezone; connector/IP geolocation is never used.",
"type": "string"
},
"userId": {
"description": "Optional unique user identifier to load stored preferences. If omitted, pure geographic auto-resolution is applied.",
"type": "string",
"minLength": 1
},
"date": {
"description": "Date in YYYY-MM-DD format (defaults to today)",
"type": "string"
},
"latitude": {
"description": "Optional explicit latitude override",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional explicit longitude override",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "Optional IANA timezone override",
"type": "string"
},
"calculationMethod": {
"description": "Optional calculation authority override (auto-resolved from location by default)",
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
]
},
"madhab": {
"description": "Optional Asr shadow jurisprudence override (Shafi or Hanafi)",
"type": "string",
"enum": [
"Shafi",
"Hanafi"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"localDate": {
"type": "string",
"description": "Local schedule date YYYY-MM-DD"
},
"timezone": {
"type": "string",
"description": "Resolved IANA timezone"
},
"calculationMethod": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "Active calculation authority"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "Active Asr jurisprudence"
},
"minuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"authorityDescription": {
"type": "string"
},
"selectionReason": {
"type": "string"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
},
"authorityNotice": {
"type": "object",
"properties": {
"method": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "The calculation authority method"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "The Asr jurisprudence school"
},
"authorityDescription": {
"type": "string",
"description": "Full descriptive name of the calculation authority"
},
"selectionReason": {
"type": "string",
"description": "Rationale for selecting this authority"
},
"requiredDisplayInstruction": {
"type": "string",
"description": "Mandatory theological notice for AI presentation"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"required": [
"method",
"madhab",
"authorityDescription",
"selectionReason",
"requiredDisplayInstruction"
],
"additionalProperties": false
},
"timesUtc": {
"type": "object",
"properties": {
"fajr": {
"type": "string",
"description": "Fajr UTC timestamp"
},
"sunrise": {
"type": "string",
"description": "Sunrise UTC timestamp"
},
"dhuhr": {
"type": "string",
"description": "Dhuhr UTC timestamp"
},
"asr": {
"type": "string",
"description": "Asr UTC timestamp"
},
"maghrib": {
"type": "string",
"description": "Maghrib UTC timestamp"
},
"isha": {
"type": "string",
"description": "Isha UTC timestamp"
}
},
"required": [
"fajr",
"sunrise",
"dhuhr",
"asr",
"maghrib",
"isha"
],
"additionalProperties": false
},
"timesLocal": {
"type": "object",
"properties": {
"Fajr": {
"type": "string",
"description": "Fajr local 24h time HH:mm"
},
"Sunrise": {
"type": "string",
"description": "Sunrise local 24h time HH:mm"
},
"Dhuhr": {
"type": "string",
"description": "Dhuhr local 24h time HH:mm"
},
"Asr": {
"type": "string",
"description": "Asr local 24h time HH:mm"
},
"Maghrib": {
"type": "string",
"description": "Maghrib local 24h time HH:mm"
},
"Isha": {
"type": "string",
"description": "Isha local 24h time HH:mm"
}
},
"required": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
],
"additionalProperties": false
}
},
"required": [
"localDate",
"timezone",
"calculationMethod",
"madhab",
"timesUtc",
"timesLocal"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_next_prayer(city, userId, latitude, longitude, timezone, ...)
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).
입력 스키마
{
"type": "object",
"properties": {
"city": {
"description": "Supported predefined city. Supply city or coordinates with an IANA timezone; connector/IP geolocation is never used.",
"type": "string"
},
"userId": {
"description": "Optional unique user identifier to load stored preferences. If omitted, pure geographic auto-resolution is applied.",
"type": "string",
"minLength": 1
},
"latitude": {
"description": "Optional explicit latitude override",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional explicit longitude override",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "Optional IANA timezone override",
"type": "string"
},
"calculationMethod": {
"description": "Optional calculation authority override (auto-resolved from location by default)",
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
]
},
"madhab": {
"description": "Optional Asr shadow jurisprudence override (Shafi or Hanafi)",
"type": "string",
"enum": [
"Shafi",
"Hanafi"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"currentLocalDate": {
"type": "string",
"description": "Current local date YYYY-MM-DD"
},
"timezone": {
"type": "string",
"description": "Resolved IANA timezone"
},
"nextPrayer": {
"type": "string",
"description": "Name of the upcoming prayer"
},
"nextPrayerAtUtc": {
"type": "string",
"description": "UTC timestamp of the upcoming prayer"
},
"nextPrayerLocalTime": {
"type": "string",
"description": "Formatted local time HH:mm"
},
"remainingMinutes": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991,
"description": "Minutes remaining until prayer start"
},
"calculationMethod": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "Active calculation authority"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "Active Asr jurisprudence"
},
"authorityDescription": {
"type": "string"
},
"selectionReason": {
"type": "string"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
},
"authorityNotice": {
"type": "object",
"properties": {
"method": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
],
"description": "The calculation authority method"
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
],
"description": "The Asr jurisprudence school"
},
"authorityDescription": {
"type": "string",
"description": "Full descriptive name of the calculation authority"
},
"selectionReason": {
"type": "string",
"description": "Rationale for selecting this authority"
},
"requiredDisplayInstruction": {
"type": "string",
"description": "Mandatory theological notice for AI presentation"
},
"highLatitudeAdjustment": {
"type": "object",
"properties": {
"applied": {
"type": "boolean"
},
"rule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"methodSpecificTwilightRule": {
"type": "string",
"const": "MoonsightingCommittee"
},
"astronomicalLatitudeClamped": {
"type": "boolean"
},
"effectiveLatitude": {
"description": "Substitute latitude only; never the user coordinate",
"anyOf": [
{
"type": "number",
"const": 48
},
{
"type": "number",
"const": -48
}
]
},
"adjustedPrayers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"Fajr",
"Sunrise",
"Dhuhr",
"Asr",
"Maghrib",
"Isha"
]
}
},
"explanation": {
"type": "string"
}
},
"required": [
"applied",
"rule",
"astronomicalLatitudeClamped",
"adjustedPrayers",
"explanation"
],
"additionalProperties": false
},
"calculationDetails": {
"type": "object",
"properties": {
"locationBasis": {
"type": "string",
"enum": [
"explicit_coordinates",
"explicit_city",
"stored_fixed_coordinates",
"stored_fixed_city",
"host_coordinates",
"host_city",
"network_geolocation",
"default_location"
]
},
"locationIsApproximate": {
"type": "boolean"
},
"fallbackLocationUsed": {
"type": "boolean"
},
"methodSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"madhabSource": {
"type": "string",
"enum": [
"explicit_override",
"stored_preference",
"geographic_default"
]
},
"highLatitudeRuleSource": {
"type": "string",
"enum": [
"stored_preference",
"geographic_default"
]
},
"regionalMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"customMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"methodMinuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"appliedMinuteAdjustments": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "number"
}
},
"calendarAlignmentAdjusted": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"required": [
"method",
"madhab",
"authorityDescription",
"selectionReason",
"requiredDisplayInstruction"
],
"additionalProperties": false
},
"minuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
}
},
"required": [
"currentLocalDate",
"timezone",
"nextPrayer",
"nextPrayerAtUtc",
"nextPrayerLocalTime",
"remainingMinutes",
"calculationMethod",
"madhab"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}⚪configure_prayer_preferences(userId, locationMode, fixedCity, fixedCoordinates, timezone, ...)
Configures prayer calculation parameters, location behavior (fixed or auto_travel), madhab, reminder mode, and notification language in persistent storage.
입력 스키마
{
"type": "object",
"properties": {
"userId": {
"type": "string",
"minLength": 1,
"description": "Unique user identifier"
},
"locationMode": {
"description": "Location strategy: auto_travel or fixed",
"type": "string",
"enum": [
"auto_travel",
"fixed"
]
},
"fixedCity": {
"description": "Predefined city name for fixed location (e.g. Riyadh, London)",
"type": "string"
},
"fixedCoordinates": {
"description": "Fixed geographical coordinates",
"type": "object",
"properties": {
"latitude": {
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"type": "number",
"minimum": -180,
"maximum": 180
}
},
"required": [
"latitude",
"longitude"
]
},
"timezone": {
"description": "IANA timezone identifier (e.g. Asia/Riyadh, Europe/London)",
"type": "string"
},
"calculationMethod": {
"description": "Islamic prayer calculation authority",
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
]
},
"madhab": {
"description": "Jurisprudential Asr shadow calculation: Shafi or Hanafi",
"type": "string",
"enum": [
"Shafi",
"Hanafi"
]
},
"highLatitudeRule": {
"description": "High latitude twilight adjustment rule",
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"reminderMode": {
"description": "Reminder display policy: prayer_window, exact_window, persistent",
"type": "string",
"enum": [
"prayer_window",
"exact_window",
"persistent"
]
},
"exactWindowMinutes": {
"description": "Duration in minutes for exact_window mode",
"type": "integer",
"minimum": 5,
"maximum": 120
},
"locale": {
"description": "Language for reminder text: en or ar",
"type": "string",
"enum": [
"en",
"ar"
]
},
"minuteAdjustments": {
"description": "Custom per-prayer minute offsets (-60 to +60)",
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
}
},
"enabled": {
"description": "Whether prayer reminders are enabled",
"type": "boolean"
}
},
"required": [
"userId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"description": "Whether configuration succeeded"
},
"preferences": {
"type": "object",
"properties": {
"fixedCoordinatesConfigured": {
"type": "boolean"
},
"fixedCityConfigured": {
"type": "boolean"
},
"locationMode": {
"type": "string",
"enum": [
"auto_travel",
"fixed"
]
},
"fixedCity": {
"type": "string"
},
"timezone": {
"type": "string"
},
"calculationMethod": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
]
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
]
},
"highLatitudeRule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"reminderMode": {
"type": "string",
"enum": [
"prayer_window",
"exact_window",
"persistent"
]
},
"exactWindowMinutes": {
"type": "number"
},
"locale": {
"type": "string",
"enum": [
"en",
"ar"
]
},
"minuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"enabled": {
"type": "boolean"
},
"updatedAtUtc": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"fixedCoordinatesConfigured",
"fixedCityConfigured"
],
"additionalProperties": false
}
},
"required": [
"success",
"preferences"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_prayer_preferences(userId)
Returns the currently active calculation settings and preferences for a user. Read-only operation.
입력 스키마
{
"type": "object",
"properties": {
"userId": {
"type": "string",
"minLength": 1,
"description": "Unique user identifier"
}
},
"required": [
"userId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}출력 스키마
{
"type": "object",
"properties": {
"fixedCoordinatesConfigured": {
"type": "boolean"
},
"fixedCityConfigured": {
"type": "boolean"
},
"locationMode": {
"type": "string",
"enum": [
"auto_travel",
"fixed"
]
},
"fixedCity": {
"type": "string"
},
"timezone": {
"type": "string"
},
"calculationMethod": {
"type": "string",
"enum": [
"UmmAlQura",
"MuslimWorldLeague",
"Egyptian",
"Karachi",
"NorthAmerica",
"Dubai",
"Qatar",
"Kuwait",
"MoonsightingCommittee",
"Singapore",
"Turkey",
"Tehran"
]
},
"madhab": {
"type": "string",
"enum": [
"Shafi",
"Hanafi"
]
},
"highLatitudeRule": {
"type": "string",
"enum": [
"MiddleOfTheNight",
"SeventhOfTheNight",
"TwilightAngle"
]
},
"reminderMode": {
"type": "string",
"enum": [
"prayer_window",
"exact_window",
"persistent"
]
},
"exactWindowMinutes": {
"type": "number"
},
"locale": {
"type": "string",
"enum": [
"en",
"ar"
]
},
"minuteAdjustments": {
"type": "object",
"properties": {
"fajr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"sunrise": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"dhuhr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"asr": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"maghrib": {
"type": "integer",
"minimum": -60,
"maximum": 60
},
"isha": {
"type": "integer",
"minimum": -60,
"maximum": 60
}
},
"additionalProperties": false
},
"enabled": {
"type": "boolean"
},
"updatedAtUtc": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"fixedCoordinatesConfigured",
"fixedCityConfigured"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}커뮤니티
증거