Returns the Personal Year, Personal Month, and Personal Day numbers for a given birth date and optional target date. All three cycle numbers are derived from the birth month, birth day, and the target calendar date.
SECTION: WHAT THIS TOOL COVERS
Personal cycles are the Pythagorean timing system. The Personal Year (1–9) sets the annual theme. The Personal Month refines it to a 30-day window. The Personal Day gives the daily energy flavour. A Personal Year 1 favours new beginnings; a 9 favours completion and release. Cycles nest: the same number in Year, Month, and Day simultaneously creates a peak intensity day.
Formula:
Personal Year = birth_month_reduced + birth_day_reduced + target_year_reduced
Personal Month = Personal Year + target_month, reduced
Personal Day = Personal Month + target_day, reduced
Master numbers 11 and 22 are preserved where they arise.
SECTION: WORKFLOW
BEFORE: None — standalone.
AFTER: asterwise_get_numerology_profile — see personal cycles alongside core numbers.
SECTION: INPUT CONTRACT
date — Birth date in YYYY-MM-DD format. Example: '1985-11-12'
year (optional int) — Target year. Defaults to current calendar year.
Example: 2026
month (optional int 1–12) — Target month. Defaults to current month.
Example: 5
day (optional int 1–31) — Target day. Personal Day is only returned when day is provided. Defaults to null (Personal Day omitted).
Example: 1
SECTION: OUTPUT CONTRACT
data.personal_year (int — 1–9 or master 11/22)
data.personal_month (int — 1–9 or master 11/22)
data.personal_day (int or null — null when day parameter is not provided)
data.target_year (int — echoed)
data.target_month (int — echoed)
data.target_day (int or null — echoed)
SECTION: RESPONSE FORMAT
response_format=json — structured JSON. response_format=markdown — human-readable.
Both modes return identical underlying data.
SECTION: COMPUTE CLASS
FAST_LOOKUP
SECTION: ERROR CONTRACT
INVALID_PARAMS (local): None — all validation is upstream.
INTERNAL_ERROR: Any upstream API failure → MCP INTERNAL_ERROR
SECTION: DO NOT CONFUSE WITH
asterwise_get_personal_year — returns Personal Year only, no month or day breakdown.
asterwise_get_numerology_profile — core name numbers; personal_year field is null there.
Connector