Draws N unique random cards from the 78-card deck using cryptographic randomness (Python secrets.SystemRandom). Every call is independent — there is no session state.
SECTION: WHAT THIS TOOL COVERS
Random card selection for open readings, single-card daily pulls, or custom spread layouts. Uniqueness is guaranteed within a single draw — the same card cannot appear twice in one draw. The active_meaning field is pre-computed per orientation so callers do not need to branch on is_reversed.
SECTION: WORKFLOW
BEFORE: None — standalone.
AFTER: None — interpret drawn cards using their active_meaning and active_keywords fields.
SECTION: INPUT CONTRACT
count (int 1–78, default 1) — Number of unique cards to draw.
Example: 1 (daily pull), 3 (simple reading), 10 (Celtic Cross), 78 (full deck shuffle).
Values outside 1–78 are rejected locally with MCP INVALID_PARAMS.
allow_reversed (bool, default false) — When true, each drawn card independently has a 50% chance of reversal (cryptographically random, not seeded).
SECTION: OUTPUT CONTRACT
data.cards[] — array of count objects, each:
card — full card object (same shape as asterwise_get_tarot_card)
is_reversed (bool)
active_meaning (string — orientation-appropriate interpretation)
active_keywords[] (string array)
position (null — no position for free draws; use spread endpoints for positional reads)
position_meaning (null)
data.count (int — echoed)
data.allow_reversed (bool — echoed)
SECTION: RESPONSE FORMAT
response_format=json — structured draw result.
response_format=markdown — human-readable card report.
Both modes return identical underlying data.
SECTION: COMPUTE CLASS
FAST_LOOKUP — cryptographic randomness, no ephemeris.
SECTION: ERROR CONTRACT
INVALID_PARAMS (local):
— count < 1 or count > 78 → MCP INVALID_PARAMS immediately.
INTERNAL_ERROR: Any upstream API failure → MCP INTERNAL_ERROR
SECTION: DO NOT CONFUSE WITH
asterwise_get_tarot_card_of_the_day — deterministic daily card, same for all callers.
asterwise_get_tarot_three_card_spread — positional read with named positions and meanings.
asterwise_get_tarot_celtic_cross — 10-card positional spread.
Connector