Porutham
asterwise_get_porutham
Runs the Tamil ten-porutham checklist for two charts, counts passes out of ten, surfaces Rajju/Vedha classical condition booleans, and returns per-porutham evidence objects.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
person1 | object | yes | Birth data for a single person. Fields: date, time, lat, lon*, person_name, timezone, ayanamsa |
person2 | object | yes | Birth data for a single person. Fields: date, time, lat, lon*, person_name, timezone, ayanamsa |
response_format | enum: markdown, json | no |
What it covers
Classical Tamil Nadu marriage screening: Dinam, Ganam, Mahendra, Stree Deergha, Yoni, Rasi, Rasiyathipaty, Rajju, Vedha, Vasya — each with passed plus type-specific fields (counts, ganas, scores, rajju pairs, vedha flags, distances). Rajju and Vedha classical conditions elevate rajju_veto/vedha_veto/hard_veto booleans. It is not twelve-koota Thirumana (asterwise_get_thirumana_porutham) or North Indian Ashtakoota (asterwise_get_compatibility).
Workflow
BEFORE: RECOMMENDED — asterwise_get_natal_chart per native.
AFTER: asterwise_get_thirumana_porutham — extended twelve-koota read if needed.
Input
Two BirthData objects per global contract.
Output contract
data.total_passed (int — out of 10)
data.total_poruthams (int — 10)
data.compatibility_level (string)
data.rajju_veto (bool)
data.vedha_veto (bool)
data.hard_veto (bool)
data.breakdown{} — keyed by porutham name (Dinam, Ganam, Mahendra, Stree Deergha, Yoni, Rasi, Rasiyathipaty, Rajju, Vedha, Vasya):
passed (bool)
Dinam: count (int), position (int)
Ganam: boy_gana (string), girl_gana (string)
Rasiyathipaty/Vasya: score (float)
Rajju: boy_rajju (string), girl_rajju (string), is_veto (bool)
Vedha: is_veto (bool)
Stree Deergha: distance (int), description (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:
— hard_veto aggregates Rajju/Vedha classical condition outcomes — read breakdown before narrating success.
Do not confuse with
asterwise_get_thirumana_porutham — twelve poruthams including Nadi and Varna, not ten.
asterwise_get_dashakoot — South Indian float scoring, not Tamil pass grid.
Connect
Remote MCP endpoint: https://mcp.asterwise.com/mcp. Authenticate with Authorization: Bearer <API key> or OAuth. See the MCP setup guide.