Serveur MCP

Sahadeva

io.github.everyai-com/sahadeva
Autres Public et accessible MCP 2026-07-28

Ce que fait ce MCP

Calculates and analyzes Vedic astrology charts, compatibility, dashas, transits, yogas, remedies, and evidence or readiness checks.

analyze_arudha_and_upapada
Analyze Arudha and Upapada structures
Analyze Arudha and Upapada structures
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'arudhaLagna', 'upapadaLagna'], 'additionalProperties': True}
analyze_career_structure
analyze career structure
Evidence-linked analyze career structure without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'domain', 'judgment', 'vargas', 'safety'], 'additionalProperties': True}
analyze_chart_topic
Analyze one chart topic with an evidence ledger
Runs the shared deterministic judgment pipeline for career, education, property, relationships, or spirituality. Returns supporting and opposing evidence, relevant Varga confirmation, current Dasha activation, uncertainty, matched reviewed citations, unresolved source keys, and explicit abstention boundaries. The web app uses the same judgment engine.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string'}, 'topic': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}, 'asOfDate': {'type': 'string'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -12}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'topic', 'conclusion', 'status', 'supportingEvidence', 'opposingEvidence', 'vargaConfirmation', 'timingActivation', 'appliedRules', 'citations', 'unresolvedSourceKeys', 'uncertainty', 'safety'], 'additionalProperties': True}
analyze_education_structure
analyze education structure
Evidence-linked analyze education structure without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'domain', 'judgment', 'vargas', 'safety'], 'additionalProperties': True}
analyze_finance_structure
analyze finance structure
Evidence-linked analyze finance structure without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'domain', 'judgment', 'vargas', 'safety'], 'additionalProperties': True}
analyze_house
Analyze one natal house with support and opposition
Returns the selected house, lord condition, occupants, functional lordship, relevant relationship edges, supporting and opposing evidence, unresolved source keys and sensitive-house restrictions.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'house'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'house': {'type': 'integer', 'maximum': 12, 'minimum': 1}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'house', 'lord', 'supportingEvidence', 'opposingEvidence', 'sourceCoverage', 'safety'], 'additionalProperties': True}
analyze_lal_kitab
Inspect Lal Kitab house structure and source sections
Converts verified natal placements to Lal Kitab fixed houses and returns source locators for all nine planet-house sections. Prediction prose, annual-chart emulation and remedies remain withheld until atomic extraction, scan verification and lineage review.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tradition', 'conversion', 'placements', 'conjunctions', 'sourceCoverage', 'controlledDisclosurePolicy', 'blockedOutputs', 'safety'], 'properties': {'safety': {'type': 'object'}, 'tradition': {'type': 'object'}, 'conversion': {'type': 'object'}, 'placements': {'type': 'array'}, 'conjunctions': {'type': 'array'}, 'schemaVersion': {'const': 'sahadeva-lal-kitab-structure-1'}, 'blockedOutputs': {'type': 'array'}, 'sourceCoverage': {'type': 'object'}, 'controlledDisclosurePolicy': {'type': 'object'}}}
analyze_marriage_structure
analyze marriage structure
Evidence-linked analyze marriage structure without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'domain', 'judgment', 'vargas', 'safety'], 'additionalProperties': True}
analyze_nakshatra_profile
analyze nakshatra profile
Evidence-linked analyze nakshatra profile without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'janma', 'placements', 'notice'], 'additionalProperties': True}
analyze_property_and_vehicle
analyze property and vehicle
Evidence-linked analyze property and vehicle without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'domain', 'judgment', 'vargas', 'safety'], 'additionalProperties': True}
analyze_remedies
Build a source-grounded chart remedy protocol
Combines the topic evidence ledger, belief/cost/burden preferences, Iṣṭa and guiding Devatā calculation, Muhurta-as-remedy routing, optional charity and low-risk conduct. Every candidate exposes its source and publication gate. It withholds unreviewed gemstones, initiation-only mantras, fasting and costly rituals.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic', 'preferences'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topic': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}, 'asOfDate': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'preferences': {'type': 'object', 'required': ['beliefMode', 'maximumBurden', 'maximumCost', 'allowPrayer', 'allowCharity'], 'properties': {'tradition': {'type': 'string'}, 'beliefMode': {'enum': ['hindu', 'spiritual', 'tradition-specific'], 'type': 'string'}, 'allowPrayer': {'type': 'boolean'}, 'maximumCost': {'enum': ['free', 'low'], 'type': 'string'}, 'allowCharity': {'type': 'boolean'}, 'maximumBurden': {'enum': ['minimal', 'moderate'], 'type': 'string'}, 'accessibilityNotes': {'type': 'array', 'items': {'type': 'string'}}}}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'diagnosis', 'chartDiagnosis', 'remedyFamilyEligibility', 'eligiblePractices', 'traditionalChartRemedies', 'traditionalRemedyStatus', 'sourceCoverage', 'decisionTrace', 'contraindications', 'followUp'], 'additionalProperties': True}
analyze_spiritual_path
analyze spiritual path
Evidence-linked analyze spiritual path without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'domain', 'judgment', 'vargas', 'safety'], 'additionalProperties': True}
analyze_transit_activation
Analyze natal, Dasha and transit activation together
Analyze natal, Dasha and transit activation together
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic', 'asOfIso', 'startIso', 'endIso'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topic': {'enum': ['career', 'marriage', 'wealth', 'education', 'children', 'property', 'spirituality'], 'type': 'string'}, 'endIso': {'type': 'string'}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'startIso': {'type': 'string'}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'topic', 'promise', 'transits', 'timingFusion', 'safety'], 'additionalProperties': True}
analyze_varga
Analyze one divisional chart
Analyze one divisional chart
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'varga'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topic': {'enum': ['career', 'marriage', 'wealth', 'education', 'children', 'property', 'spirituality'], 'type': 'string'}, 'varga': {'enum': ['D1', 'D2', 'D3', 'D4', 'D7', 'D9', 'D10', 'D12', 'D16', 'D20', 'D24', 'D27', 'D30', 'D40', 'D45', 'D60'], 'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'varga', 'purpose', 'placements', 'safety'], 'additionalProperties': True}
analyze_yogas
Analyze Yoga formation, strength and opposition
Analyze Yoga formation, strength and opposition
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'detected', 'notDetected', 'notice'], 'additionalProperties': True}
assess_prediction_readiness
Assess prediction and tradition readiness
Reports independent readiness gates for calculations, executable rules, worked examples, practitioner review and outcome calibration. It explicitly reports Lal Kitab as source-only until a dedicated reviewed engine exists.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'overallStatus', 'decision', 'gates', 'traditions', 'recommendedMcpBuildOrder', 'safety'], 'properties': {'gates': {'type': 'array'}, 'safety': {'type': 'object'}, 'decision': {'type': 'object'}, 'traditions': {'type': 'array'}, 'overallStatus': {'const': 'research-preview'}, 'schemaVersion': {'const': 'sahadeva-prediction-readiness-1'}, 'recommendedMcpBuildOrder': {'type': 'array'}}}
audit_chart_calculation
Audit chart calculation provenance and sensitivity
Checks engine certification, timezone provenance, conventions and important sign/Nakshatra/Pada boundary distances before interpretation. It does not claim an external ephemeris recomputation.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'engine', 'inputProvenance', 'convention', 'validation', 'boundaryAudit', 'decision', 'notice'], 'properties': {'engine': {'type': 'object'}, 'notice': {'type': 'string'}, 'decision': {'type': 'object'}, 'convention': {'type': 'object'}, 'validation': {'type': 'object'}, 'boundaryAudit': {'type': 'array'}, 'schemaVersion': {'const': 'sahadeva-calculation-audit-1'}, 'inputProvenance': {'type': 'object'}}}
audit_prediction_claim
Audit one prediction claim before narration
Applies calculation, approved-rule, opposition, calibration and harm gates and returns publish, caution or abstain.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['claim'], 'properties': {'claim': {'type': 'string'}, 'harmClass': {'enum': ['general-cultural', 'sensitive-reflective', 'high-impact-restricted', 'prohibited-output'], 'type': 'string'}, 'claimClass': {'type': 'string'}, 'nearBoundary': {'type': 'boolean'}, 'approvedRules': {'type': 'array'}, 'opposingEvidence': {'type': 'array'}, 'supportingEvidence': {'type': 'array'}, 'calculationCertified': {'type': 'boolean'}, 'unresolvedSourceKeys': {'type': 'array', 'items': {'type': 'string'}}, 'empiricallyCalibrated': {'type': 'boolean'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'claim', 'evidence', 'confidence', 'decision'], 'additionalProperties': True}
audit_reading_evidence
Audit reading prose against calculated placements and safety rules
Audit reading prose against calculated placements and safety rules
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'text'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'text': {'type': 'string', 'maxLength': 30000}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'supported', 'unsupportedClaims', 'prohibitedClaimPatterns'], 'additionalProperties': True}
build_claim_evidence_ledger
build claim evidence ledger
Evidence-linked build claim evidence ledger without deterministic outcome claims.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topics': {'type': 'array', 'items': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'claims', 'summary', 'notice'], 'additionalProperties': True}
calculate_ashtakavarga
Calculate Bhinnashtakavarga and Sarvashtakavarga
Calculate Bhinnashtakavarga and Sarvashtakavarga
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'sarva', 'signs'], 'additionalProperties': True}
calculate_compatibility
Calculate Ashtakoota, Porutham and Kuja compatibility
Resolves both birth places, calculates both charts, and returns separate auditable North Indian 36-point Ashtakoota and South Indian ten-Porutham breakdowns plus Mangal/Kuja Dosha evidence. Traditional research preview; never a relationship verdict.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['bride', 'groom'], 'properties': {'bride': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}, 'groom': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'subjects', 'ashtakoota', 'porutham', 'kujaDosha', 'sourceCoverage', 'safety'], 'properties': {'safety': {'type': 'object'}, 'porutham': {'type': 'object'}, 'subjects': {'type': 'object'}, 'kujaDosha': {'type': 'object'}, 'ashtakoota': {'type': 'object'}, 'schemaVersion': {'const': 'sahadeva-compatibility-1'}, 'sourceCoverage': {'type': 'object'}}}
calculate_dasha_system
Calculate a declared Dasha system
Calculate a declared Dasha system
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'system', 'asOfIso'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'system': {'enum': ['vimshottari', 'yogini', 'ashtottari', 'kalachakra', 'narayana', 'chara', 'status'], 'type': 'string'}, 'asOfIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
calculate_devata_profile
Calculate Iṣṭa and guiding Devatā candidates
Calculates Iṣṭa, Dharma, Pālana, Guru and Kula Devatā anchors from an explicit lineage preset: occupants, Rashi Drishti, then sign lord with visible tie-breaks. Unsupported lineages are withheld rather than silently mixed. It never prescribes initiation-only mantra or claims one uniquely correct deity.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'lineage': {'enum': ['rath-eight-karaka-reversed-rahu', 'seven-karaka-comparative'], 'type': 'string', 'default': 'rath-eight-karaka-reversed-rahu'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'lineage', 'convention', 'anchors', 'ishtaDevata', 'dharmaDevata', 'palanaDevata', 'guruDevata', 'kulaDevata', 'birthTimeSensitivity', 'safety'], 'additionalProperties': True}
calculate_doshas
Calculate evidence-first Dosha patterns
Calculates Mangal/Kuja, Kaal Sarpa enclosure, Kemadruma, and conservative Pitru-related structural candidates with raw/effective severity and explicit cancellation or mitigation evidence.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'subject', 'patterns', 'summary', 'rulebook', 'safety'], 'properties': {'safety': {'type': 'object'}, 'subject': {'type': 'object'}, 'summary': {'type': 'object'}, 'patterns': {'type': 'array'}, 'rulebook': {'type': 'object'}, 'schemaVersion': {'const': 'sahadeva-doshas-1'}}}
calculate_gochara_from_known_place
Calculate gochara from a verified place
Resolves a verified catalogue place and its IANA timezone before calculating sidereal transits, avoiding manual coordinate and offset entry.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['date', 'time', 'place', 'natalLagnaSign'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'place': {'type': 'string'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'natalLagnaSign': {'type': 'integer', 'maximum': 11, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['instantJulianDay', 'engine', 'resolvedPlace', 'natalLagnaSign', 'placements'], 'properties': {'engine': {'type': 'object'}, 'placements': {'type': 'array'}, 'resolvedPlace': {'type': 'object'}, 'natalLagnaSign': {'type': 'integer'}, 'instantJulianDay': {'type': 'number'}}}
calculate_prashna
Ask a Prashna question
Casts a server-time horary chart, checks chart fitness, and returns an auditable structural judgment plus outcome-confirmation hook.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['question', 'category'], 'properties': {'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'category': {'enum': ['career', 'relationship', 'money', 'property', 'travel', 'lost-object', 'general'], 'type': 'string'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'question': {'type': 'string', 'maxLength': 500, 'minLength': 3}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'consultationId', 'chartFitness', 'judgment', 'feedback', 'safety'], 'additionalProperties': True}
calculate_strength_profile
Calculate a separated planetary strength profile
Calculate a separated planetary strength profile
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'dignities', 'avasthas', 'shadbala', 'lineage'], 'additionalProperties': True}
compare_conventions
Compare chart conventions without silent mixing
Compares Lahiri with selected alternative ayanamsa projections for one topic, identifies changed Lagna, topic lord, karaka, sign, house and Nakshatra anchors, and marks when a Lahiri judgment must not be reused. Alternative full derived charts remain explicitly unvalidated.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'topic': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'conventions': {'type': 'array', 'items': {'enum': ['lahiri', 'krishnamurti', 'raman', 'fagan-bradley'], 'type': 'string'}}, 'timezoneOffset': {'type': 'number'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'topic', 'variants', 'judgmentChangeAnalysis', 'traditionBoundary', 'safety'], 'additionalProperties': True}
compare_reading_versions
Explain why two reading versions changed
Compares engine, ruleset, input and conclusion status changes.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['first', 'second'], 'properties': {'first': {'type': 'object'}, 'second': {'type': 'object'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'configurationChanges', 'conclusions'], 'additionalProperties': True}
compare_traditions
Compare traditions without blending them
Compares explicitly supplied tradition ledgers while preserving separate methods, evidence, contradictions and readiness states.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['ledgers'], 'properties': {'ledgers': {'type': 'array', 'items': {'type': 'object'}, 'minItems': 2}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'traditions', 'agreements', 'contradictions', 'synthesisPolicy'], 'additionalProperties': True}
consult_jyotishya
Ask Sahadeva — master Jyotisha consultation
PRIMARY TOOL FOR EVERY NORMAL USER QUESTION AND FIRST READING. Always runs a complete person-first screen covering identity, education, employment, business, money, love, marriage, health routines, family/property, children and spirituality, plus strengths, Doshas/cancellations and safe practical support. It then gives extra Varga and timing depth to the exact question, checks contradictions and reports coverage. Use specialist tools only when this result requests additional inputs or the user asks for technical matrices. Deterministic: it never invokes another AI model.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'name': {'type': 'string'}, 'time': {'type': 'string', 'pattern': '^\\d{2}:\\d{2}$'}, 'focus': {'enum': ['general', 'career', 'marriage', 'children', 'education', 'property', 'health', 'spirituality'], 'type': 'string', 'default': 'general'}, 'place': {'type': 'string'}, 'detail': {'enum': ['brief', 'standard'], 'type': 'string', 'default': 'brief'}, 'asOfDate': {'type': 'string'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'question': {'type': 'string', 'maxLength': 1000}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'profileRef': {'type': 'string', 'pattern': '^chart_[a-f0-9]{20}$', 'description': 'Stable profile reference returned by the first consultation. Pass it on later questions together with the same birth details.'}, 'traditions': {'type': 'array', 'items': {'enum': ['parashari', 'jaimini', 'kp', 'lal-kitab'], 'type': 'string'}, 'default': ['parashari', 'jaimini', 'kp', 'lal-kitab'], 'description': 'Traditions to compare as separate ledgers. They are interconnected by topic but never blended.', 'uniqueItems': True}, 'readingMode': {'enum': ['auto', 'full-profile', 'follow-up'], 'type': 'string', 'default': 'auto', 'description': 'Use auto normally: without profileRef it creates the full first-reading dossier; with profileRef it returns a focused follow-up.'}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -12}, 'remedyPreferences': {'type': 'object', 'properties': {'tradition': {'type': 'string'}, 'beliefMode': {'enum': ['hindu', 'spiritual', 'tradition-specific'], 'type': 'string'}, 'allowPrayer': {'type': 'boolean'}, 'maximumCost': {'enum': ['free', 'low'], 'type': 'string'}, 'allowCharity': {'type': 'boolean'}, 'maximumBurden': {'enum': ['minimal', 'moderate'], 'type': 'string'}, 'accessibilityNotes': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 8}}, 'description': 'Optional explicit consent and burden preferences. Without these, personalized traditional remedies remain withheld.'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'subject', 'anchors', 'priorities', 'currentTiming', 'confidence', 'safety'], 'additionalProperties': True}
explain_chart_sources
Explain the source and review status behind a chart topic
Returns book-section locators and rule-review status without treating discovered prose as executable doctrine.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['topic'], 'properties': {'topic': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'topic', 'sources', 'notice'], 'additionalProperties': True}
explore_lal_kitab_sources
Explore complete Lal Kitab source coverage
Returns all source families, locators, coverage counts, lexical risk signals and graduated disclosure policy without republishing source body text.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'source', 'coverage', 'policy', 'families', 'notice'], 'properties': {'notice': {'type': 'string'}, 'policy': {'type': 'object'}, 'source': {'type': 'object'}, 'coverage': {'type': 'object'}, 'families': {'type': 'array'}, 'schemaVersion': {'const': 'sahadeva-lal-kitab-source-catalog-1'}}}
find_marriage_windows
Find structural marriage-planning windows
Finds overlaps between Jupiter transiting the natal seventh sign and Venus or seventh-lord Vimshottari periods. Returns planning windows, never a guaranteed marriage prediction.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'startDate'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'years': {'type': 'number', 'default': 5, 'maximum': 20, 'minimum': 0.25}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'startDate': {'type': 'string'}, 'timezoneOffset': {'type': 'number'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'subject', 'range', 'natal', 'windows', 'safety'], 'properties': {'natal': {'type': 'object'}, 'range': {'type': 'object'}, 'safety': {'type': 'object'}, 'subject': {'type': 'object'}, 'windows': {'type': 'array'}, 'schemaVersion': {'const': 'sahadeva-marriage-windows-1'}}}
find_muhurta
Find ranked Muhurta windows
Ranks candidate windows over a bounded date range using activity Panchanga fitness, prohibited-period avoidance, optional Tara/Chandra Bala, instant Lagna structure, and activity-karaka condition. Returns every pass/fail reason and draft source key.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['activity', 'startDate', 'endDate'], 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 20, 'minimum': 1}, 'natal': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5}}}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'endDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'activity': {'enum': ['marriage', 'griha_pravesh', 'travel', 'business_start', 'vehicle_purchase', 'property_purchase', 'naming', 'contract', 'important_conversation', 'new_venture', 'surgery'], 'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'startDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'activity', 'rulebook', 'windows', 'safety'], 'properties': {'safety': {'type': 'object'}, 'windows': {'type': 'array'}, 'activity': {'type': 'string'}, 'rulebook': {'type': 'object'}, 'schemaVersion': {'const': 'sahadeva-muhurta-1'}}}
find_muhurta_with_natal_fit
Find Muhurta windows fitted to a natal chart
Ranks a maximum seven-day range using Panchanga, prohibited intervals, Tara Bala and Chandra Bala. Medical procedures are unsupported.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['activity', 'startDate', 'endDate', 'natal'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1}, 'natal': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'endDate': {'type': 'string'}, 'activity': {'enum': ['marriage', 'griha_pravesh', 'travel', 'business_start', 'vehicle_purchase', 'property_purchase', 'naming', 'contract', 'important_conversation', 'new_venture'], 'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'startDate': {'type': 'string'}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'activity', 'windows', 'safety'], 'additionalProperties': True}
fuse_timing
Fuse promise, Dasha, transit, Ashtakavarga and Varga timing
Applies natal promise as a hard gate and returns uncalibrated, auditable timing windows with learnable factor weights.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic', 'startIso', 'endIso'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topic': {'enum': ['career', 'marriage', 'wealth', 'education', 'children', 'property', 'spirituality'], 'type': 'string'}, 'endIso': {'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'startIso': {'type': 'string'}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'topic', 'promise', 'windows'], 'additionalProperties': True}
generate_full_life_report
Generate a complete evidence-linked life report
Builds a normal-person South Indian astrology report covering identity, mind, family, communication, home, learning, routines, relationships, change, beliefs, career, networks, rest, measured strengths, Vargas, structural Yogas, current Dasha and upcoming Antardashas. Interpretations remain qualified and evidence-linked.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['name', 'date', 'time', 'place', 'latitude', 'longitude', 'timezoneOffset'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'focus': {'enum': ['general', 'career', 'marriage', 'children', 'education', 'property', 'health', 'spirituality'], 'type': 'string', 'default': 'general'}, 'place': {'type': 'string'}, 'asOfDate': {'type': 'string', 'description': 'ISO date or instant for the current-timing section; defaults to now'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'horizonYears': {'type': 'integer', 'default': 5, 'maximum': 10, 'minimum': 1}, 'timezoneOffset': {'type': 'number'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5, 'maximum': 1440, 'minimum': 0}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'subject', 'anchors', 'plainLanguageReading', 'placements', 'measuredStrengths', 'aspects', 'ashtakavarga', 'divisionalChartAnchors', 'currentTiming', 'sourceCoverage', 'uncertainty', 'safety'], 'properties': {'safety': {'type': 'object'}, 'anchors': {'type': 'object'}, 'aspects': {'type': 'object'}, 'subject': {'type': 'object'}, 'placements': {'type': 'array'}, 'uncertainty': {'type': 'object'}, 'ashtakavarga': {'type': 'object'}, 'currentTiming': {'type': 'object'}, 'schemaVersion': {'const': 'sahadeva-full-life-report-1'}, 'sourceCoverage': {'type': 'object'}, 'measuredStrengths': {'type': 'array'}, 'plainLanguageReading': {'type': 'object'}, 'divisionalChartAnchors': {'type': 'object'}}}
generate_report_pdf
Generate a hosted shareable PDF report
Generates the full reading context as a server-side PDF and returns a hosted URL valid for 30 days.
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'asOfDate': {'type': 'string'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'horizonYears': {'type': 'number', 'default': 5, 'maximum': 20, 'minimum': 1}, 'timezoneOffset': {'type': 'number'}}}
Schéma de sortie
{'type': 'object', 'required': ['id', 'url', 'expiresAt', 'contentType', 'safety'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'safety': {'type': 'object'}, 'expiresAt': {'type': 'string'}, 'contentType': {'const': 'application/pdf'}}}
get_depth_analysis
Get strength, Varga and additional-Dasha depth
Returns Vimsopaka and Ishta/Kashta evidence, topic-specific cross-Varga synthesis, special Lagnas, expanded Yoga candidates and additional-Dasha status.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topic': {'enum': ['career', 'marriage', 'wealth', 'education', 'children', 'property', 'spirituality'], 'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'strengthLineage', 'vargaSynthesis', 'targetedLagnas', 'yogas', 'additionalDashas', 'safety'], 'additionalProperties': True}
get_full_life_report_section
Get one full-life-report section
Returns one bounded section of the full report for MCP clients with limited context windows.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['name', 'date', 'time', 'place', 'latitude', 'longitude', 'timezoneOffset', 'section'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'section': {'enum': ['summary', 'life-areas', 'placements', 'strengths', 'vargas', 'aspects', 'ashtakavarga', 'synthesis', 'timing', 'uncertainty', 'evidence', 'citations'], 'type': 'string'}, 'asOfDate': {'type': 'string'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'horizonYears': {'type': 'integer', 'default': 5, 'maximum': 10, 'minimum': 1}, 'timezoneOffset': {'type': 'number'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'section', 'data', 'safety'], 'properties': {'data': {}, 'safety': {'type': 'object'}, 'section': {'type': 'string'}, 'schemaVersion': {'const': 'sahadeva-full-life-report-section-1'}}}
get_marriage_readiness
Get one-call marriage readiness context
Returns separate North Indian Ashtakoota and South Indian ten-Porutham compatibility, Kuja evidence, compact summaries for both charts, and structural marriage-planning windows for each person in one call.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['bride', 'groom', 'startDate'], 'properties': {'bride': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'timezoneOffset': {'type': 'number'}}}, 'groom': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'timezoneOffset': {'type': 'number'}}}, 'years': {'type': 'number', 'default': 5, 'maximum': 20, 'minimum': 0.25}, 'muhurta': {'type': 'object', 'required': ['startDate', 'endDate'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1}, 'place': {'type': 'string'}, 'endDate': {'type': 'string'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'startDate': {'type': 'string'}, 'timezoneOffset': {'type': 'number'}}, 'description': 'Optional shared wedding location and bounded date range passed to find_muhurta'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'startDate': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'compatibility', 'subjects', 'marriageWindows', 'safety'], 'properties': {'safety': {'type': 'object'}, 'subjects': {'type': 'object'}, 'compatibility': {'type': 'object'}, 'schemaVersion': {'const': 'sahadeva-marriage-readiness-1'}, 'marriageWindows': {'type': 'object'}}}
get_natal_panchanga
Analyze the five natal Panchanga limbs
Returns calculated Vara, Tithi class, Nakshatra lord, Yoga, Karana, Paksha Bala, boundary warnings and unresolved lineage-specific source keys. This is distinct from daily Panchanga.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'limbs', 'paksha', 'interpretation', 'safety'], 'additionalProperties': True}
get_panchanga
Get complete daily Panchanga
Returns the five limbs plus Rahu Kaal, Yamaganda, Gulika, Bhadra status, Abhijit and Brahma Muhurta, day/night Choghadiya, 24 Horas, solar-day context, festival flags, and optional Tara/Chandra Bala from a natal chart.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['date'], 'properties': {'date': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$'}, 'natal': {'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}, 'birthTimeAccuracyMinutes': {'type': 'number', 'default': 5}}}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'language': {'enum': ['en', 'te'], 'type': 'string', 'default': 'en'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'additionalProperties': True}
get_validation_report
Get versioned calculation, knowledge, review and outcome validation status
Reports coverage and validation gates without converting descriptive counts into scientific or predictive validity.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'tradition': {'type': 'string'}, 'engineVersion': {'type': 'string'}, 'rulesetVersion': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'calculation', 'knowledge', 'review', 'outcomes', 'overallStatus'], 'additionalProperties': True}
record_consultation_outcome
Record a versioned prediction claim and later outcome
Stores one atomic claim and a consent-scoped outcome for descriptive validation without training on narration.
Schéma d’entrée
{'type': 'object', 'required': ['claimId', 'claim', 'claimClass', 'tradition', 'chartVersion', 'rulesetVersion', 'outcome', 'consentScope'], 'properties': {'claim': {'type': 'string'}, 'notes': {'type': 'string'}, 'claimId': {'type': 'string'}, 'outcome': {'enum': ['confirmed', 'partly-confirmed', 'not-confirmed', 'unresolved'], 'type': 'string'}, 'evidence': {'type': 'object'}, 'tradition': {'type': 'string'}, 'claimClass': {'type': 'string'}, 'resolvedAt': {'type': 'string'}, 'chartVersion': {'type': 'string'}, 'consentScope': {'enum': ['service-follow-up', 'descriptive-outcomes', 'blind-validation'], 'type': 'string'}, 'userSawClaim': {'type': 'boolean'}, 'outcomeBlinded': {'type': 'boolean'}, 'rulesetVersion': {'type': 'string'}, 'resolutionWindowEnd': {'type': 'string'}, 'resolutionWindowStart': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'claimId', 'outcomeId', 'status'], 'additionalProperties': True}
record_prashna_outcome
Record a Prashna outcome
Closes the Prashna feedback loop using the private confirmation token returned by calculate_prashna. The token is hashed at rest and is distinct from the consultation ID.
Schéma d’entrée
{'type': 'object', 'required': ['confirmationToken', 'outcome'], 'properties': {'notes': {'type': 'string', 'maxLength': 1000}, 'outcome': {'enum': ['confirmed', 'partly-confirmed', 'not-confirmed', 'unresolved'], 'type': 'string'}, 'resolvedAt': {'type': 'string', 'format': 'date-time'}, 'confirmationToken': {'type': 'string', 'maxLength': 256, 'minLength': 16}}}
Schéma de sortie
{'type': 'object', 'required': ['id', 'consultationId', 'status', 'recordedAt'], 'properties': {'id': {'type': 'string'}, 'status': {'type': 'string', 'const': 'recorded'}, 'recordedAt': {'type': 'string'}, 'consultationId': {'type': 'string'}}, 'additionalProperties': False}
rectify_birth_time
Rank birth-time hypotheses
Scores candidate birth times against life events and validates with a held-out event. Never claims an exact recovered minute.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['baseInput', 'earliestTime', 'latestTime', 'events'], 'properties': {'events': {'type': 'array'}, 'baseInput': {'type': 'object'}, 'latestTime': {'type': 'string'}, 'stepMinutes': {'type': 'integer', 'default': 5}, 'earliestTime': {'type': 'string'}, 'holdoutEventId': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'rankedCandidates', 'rankedClusters', 'notice'], 'additionalProperties': True}
render_chart
Render a shareable South Indian chart
Renders a deterministic South Indian chart as inline SVG, including retrograde, combustion, and dignity flags.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'size': {'type': 'integer', 'default': 1200, 'maximum': 2400, 'minimum': 480}, 'time': {'type': 'string'}, 'place': {'type': 'string'}, 'latitude': {'type': 'number'}, 'timezone': {'type': 'string'}, 'longitude': {'type': 'number'}, 'timezoneOffset': {'type': 'number'}}}
Schéma de sortie
{'type': 'object', 'required': ['format', 'mimeType', 'svg', 'safety'], 'properties': {'svg': {'type': 'string'}, 'format': {'const': 'svg'}, 'safety': {'type': 'object'}, 'mimeType': {'const': 'image/svg+xml'}}}
search_locations
Find a chart location
Searches Sahadeva's deterministic local catalogue and geographic index. It never invokes another AI model. If no result exists, the MCP host should resolve the place with its own capabilities and pass coordinates to the chart tool.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'default': 8, 'maximum': 20, 'minimum': 1}, 'query': {'type': 'string', 'minLength': 2}}}
Schéma de sortie
{'type': 'object', 'required': ['query', 'status', 'matches'], 'properties': {'query': {'type': 'string'}, 'status': {'enum': ['resolved', 'ambiguous', 'not_found'], 'type': 'string'}, 'matches': {'type': 'array', 'items': {'type': 'object', 'required': ['label', 'latitude', 'longitude', 'timezone', 'timezoneOffset']}}}}
search_reviewed_rules
Search independently approved rules
Returns only publication-gated rules and rights-safe source metadata. Drafts and open contradictions are excluded.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string'}, 'topic': {'type': 'string'}, 'harmClass': {'type': 'string'}, 'tradition': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'results', 'publicationPolicy'], 'additionalProperties': True}
search_source_passages
Search source passages with rights controls
Searches passage metadata and returns text only when display rights permit it. Results never become executable rules automatically.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string'}, 'tradition': {'type': 'string'}, 'reviewStatus': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'results', 'rightsPolicy'], 'additionalProperties': True}
suggest_safe_practice
Suggest belief-compatible low-burden support
Builds an optional practice protocol from the evidence ledger and user preferences. It can return no-remedy-needed, never emits unreviewed gemstones, costly rituals or initiation-only mantras, and does not claim causality.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'anyOf': [{'required': ['place']}, {'required': ['latitude', 'longitude', 'timezone']}], 'required': ['name', 'date', 'time', 'topic', 'preferences'], 'properties': {'date': {'type': 'string'}, 'name': {'type': 'string'}, 'time': {'type': 'string'}, 'place': {'type': 'string', 'description': 'Catalogue query or display label when explicit coordinates are supplied'}, 'topic': {'enum': ['career', 'education', 'property', 'relationships', 'spirituality', 'wealth'], 'type': 'string'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90}, 'timezone': {'type': 'string', 'description': 'Required IANA timezone when explicit coordinates are supplied, for example Asia/Kolkata'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180}, 'preferences': {'type': 'object', 'required': ['beliefMode', 'maximumBurden', 'maximumCost', 'allowPrayer', 'allowCharity'], 'properties': {'tradition': {'type': 'string'}, 'beliefMode': {'enum': ['hindu', 'spiritual', 'tradition-specific'], 'type': 'string'}, 'allowPrayer': {'type': 'boolean'}, 'maximumCost': {'enum': ['free', 'low'], 'type': 'string'}, 'allowCharity': {'type': 'boolean'}, 'maximumBurden': {'enum': ['minimal', 'moderate'], 'type': 'string'}}}, 'timezoneOffset': {'type': 'number', 'maximum': 14, 'minimum': -14, 'description': 'Optional fallback offset; derived from timezone and the requested local date when omitted'}}}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'diagnosis', 'outcome', 'preferences', 'remedyFamilyEligibility', 'eligiblePractices', 'traditionalChartRemedies', 'contraindications', 'followUp'], 'additionalProperties': True}
Ajouté
get_validation_report
2 October 2026 02:40
Ajouté
record_consultation_outcome
2 October 2026 02:40
Ajouté
audit_prediction_claim
2 October 2026 02:40
Ajouté
compare_traditions
2 October 2026 02:40
Ajouté
search_source_passages
2 October 2026 02:40
Ajouté
search_reviewed_rules
2 October 2026 02:40
Ajouté
rectify_birth_time
2 October 2026 02:40
Ajouté
fuse_timing
2 October 2026 02:40
Ajouté
get_depth_analysis
2 October 2026 02:40
Ajouté
record_prashna_outcome
2 October 2026 02:40
Ajouté
calculate_prashna
2 October 2026 02:40
Ajouté
generate_report_pdf
2 October 2026 02:40
Ajouté
render_chart
2 October 2026 02:40
Ajouté
get_marriage_readiness
2 October 2026 02:40
Ajouté
find_marriage_windows
2 October 2026 02:40
Ajouté
audit_chart_calculation
2 October 2026 02:40
Ajouté
assess_prediction_readiness
2 October 2026 02:40
Ajouté
calculate_gochara_from_known_place
2 October 2026 02:40
Ajouté
get_full_life_report_section
2 October 2026 02:40
Ajouté
generate_full_life_report
2 October 2026 02:40
Ajouté
find_muhurta_with_natal_fit
2 October 2026 02:40
Ajouté
build_claim_evidence_ledger
2 October 2026 02:40
Ajouté
analyze_spiritual_path
2 October 2026 02:40
Ajouté
analyze_finance_structure
2 October 2026 02:40
Ajouté
analyze_property_and_vehicle
2 October 2026 02:40
Ajouté
analyze_education_structure
2 October 2026 02:40
Ajouté
analyze_career_structure
2 October 2026 02:40
Ajouté
analyze_marriage_structure
2 October 2026 02:40
Ajouté
analyze_nakshatra_profile
2 October 2026 02:40
Ajouté
compare_reading_versions
2 October 2026 02:40