Lo Shu Grid
asterwise_get_lo_shu_grid
Derives a Lo Shu three-by-three frequency grid from birth-date digits and annotates planes, missing or repeated digits, and per-digit traits.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
date | string | yes | Date in YYYY-MM-DD format. |
response_format | enum: markdown, json | no | Output format: 'markdown' (default) for a readable report, or 'json' for the raw structured payload. |
What it covers
Chinese Lo Shu analysis: counts how often each digit one through nine appears in the date string, lays counts into the classical magic-square positions, and adds plane_analysis plus number_analysis entries keyed by digit strings '1'..'9'. Zero digits are ignored for placement. It does not compute Pythagorean Life Path (asterwise_get_numerology_profile) or Chaldean compounds. number_analysis.plane is a deprecated legacy grouping that does not follow the square; read lo_shu_plane.
Workflow
BEFORE: None — standalone.
AFTER: None.
Input
date string only; validated upstream.
Output contract
data.birth_date (string)
data.grid — three-by-three nested int array (row-major):
row positions map to numbers [4,9,2], [3,5,7], [8,1,6] respectively; cell value = count of that digit in the date (0 if absent)
data.present_numbers[] (int array)
data.missing_numbers[] (int array)
data.repeated_numbers[] (int array — digits appearing at least twice)
data.plane_analysis — the eight lines of the Lo Shu square 4 9 2 / 3 5 7 / 8 1 6:
mental_plane (top row 4-9-2) — { numbers[] (int array), description (string), complete (bool) }
emotional_plane (middle row 3-5-7) — same shape
practical_plane (bottom row 8-1-6) — same shape
thought_plane (left column 4-3-8) — same shape
will_plane (centre column 9-5-1) — same shape
action_plane (right column 2-7-6) — same shape
diagonal_4_5_6 — same shape
diagonal_2_5_8 — same shape
golden_yod (3-5-7), silver_yod (1-5-9) — deprecated duplicates of emotional_plane and will_plane, kept for compatibility
data.number_analysis{} — keys '1' through '9' (string keys):
count (int)
plane (string — deprecated legacy grouping: 1-3 mental, 4-6 physical, 7-9 spiritual; not a line of the square, use lo_shu_plane)
lo_shu_plane (string — row of the square: mental 4-9-2, emotional 3-5-7, practical 8-1-6)
trait (string)
status (string — 'missing', 'present', or 'strong')
note (string)
Response format
response_format=json serialises the complete response as indented JSON — use this for programmatic parsing, typed clients, and downstream tool chaining. response_format=markdown renders the same data as a human-readable report. Both modes return identical underlying data — no fields are added, removed, or filtered by either mode.
Compute class
MEDIUM_COMPUTE
Errors
INVALID_PARAMS (local — caught before upstream call):
None — all validation is upstream.
INVALID_PARAMS (upstream):
— None — upstream rejection surfaces as MCP INTERNAL_ERROR at the tool layer.
INTERNAL_ERROR:
— Any upstream API failure or timeout → MCP INTERNAL_ERROR
Edge cases:
— Zeros in ISO dates are skipped — only digits one through nine populate the grid.
Do not confuse with
asterwise_get_numerology_profile — letter-based Western numbers, not digit-frequency Lo Shu.
asterwise_get_name_correction — spelling harmonics, not birth-date grids.
Connect
Remote MCP endpoint: https://mcp.asterwise.com/mcp. Authenticate with Authorization: Bearer <API key> or OAuth. See the MCP setup guide.