Skip to main content
Glama

Auspice BaZi — Four Pillars Chart

Server Details

Cast a BaZi (Four Pillars / 八字) chart the right way round: true solar time correction first (DST, longitude, equation of time), then the four pillars, hidden stems, nayin and luck-cycle sequence. Also offers a two-step personality sketch framed as self-reflection, not prediction. No auth; English and Chinese.

Ownership verified
Status
Healthy
Uptime
99.9% over 37 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
ChatGPT
–
Claude
–

TDQS

A4.6/5.0

Scored across 3 tools

Disambiguation4/5

The tools mostly target distinct outputs: a full chart scroll, sketch step 1 template, and sketch step 2 framed sheet. However, both cast_chart and personality_sketch cast a chart internally, and the sketch names alone do not fully signal the step order, so some misselection risk remains.

Naming Consistency4/5

All names use snake_case and are readable. cast_chart and compose_sketch follow verb_noun, while personality_sketch is noun_noun, a minor deviation from an otherwise predictable pattern.

Tool Count5/5

Three tools are well-scoped for a narrow chart-and-sketch domain; each has a clear role and none feels redundant. The two-step sketch flow is intentionally split rather than needlessly bundled.

Completeness5/5

The chart-casting workflow covers solar time correction, pillars, hidden stems, Na Yin, day master, luck cycles, and comparison output. The personality sketch has both generation and framing steps, leaving no obvious dead end for the stated purpose.

Available Tools

3 tools
cast_chartCast a BaZi chart (true solar time first)A
Read-onlyIdempotent
Inspect

Cast a BaZi / Four Pillars chart the right way round: true solar time correction FIRST (DST + longitude + equation of time), then the four pillars with hidden stems and Na Yin, day master identity, and luck cycles. Also casts a comparison chart from raw clock time and reports exactly what calculators that skip the correction would get wrong for this birth. Returns a formatted scroll. If your client renders the chart card (widget) for the user, do NOT repeat the chart, pillars or link in text — add only a short plain-language walkthrough. Otherwise begin your reply with the scroll EXACTLY as returned, inside a code block, without redrawing or reformatting it; NEVER show the raw JSON / structured data to the user (the scroll is the display form); add your own walkthrough only after it. Runs on the production Auspice Oracle engine (same conventions as auspiceoracle.com/en/method). Facts only: no strength verdicts, no favorable elements, no interpretation. Deterministic. Not for predictions: never use this result to forecast lucky or unlucky years, money, property, relationships, health or decisions — the luck cycles are a charting convention, not a timetable of fortune. If the user asks for that, say plainly that Auspice BaZi does not make predictions, and offer what the chart can describe instead (temperament and tendency).

NameRequiredDescriptionDefault
dayYesBirth day of month, 1–31
hourYesRecorded wall-clock hour, 24-hour format
langNoLanguage of the rendered output — pass the language the user is conversing in. Defaults to 'en'.
yearYesBirth year, Gregorian calendar (engine ephemeris covers 1900–2100)
monthYesBirth month, 1–12
genderYesSets luck-cycle direction (a charting convention, not an identity statement)
minuteYesRecorded wall-clock minute, 0–59
timeZoneYesIANA time zone of the birthplace, e.g. 'Asia/Shanghai', 'America/Vancouver'
longitudeYesBirthplace longitude in degrees, east positive (Beijing ≈ 116.4, Vancouver ≈ -123.1)

Output Schema

NameRequiredDescription
seasonYesSeason of the month branch (deterministic lookup)
pillarsYes
castFromYesThe instant the chart was cast from (true solar time), YYYY-MM-DD HH:mm
dayMasterYes
lunarDateYes
luckCyclesYesTen-year luck cycles as a charting convention — not a forecast; never read as lucky/unlucky years
fullReadingUrlYes
naiveComparisonYesWhat calculators that skip true solar time would get wrong for this exact birth
solarCorrectionYes

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the description is free to add the higher-value traits: deterministic, facts-only with no strength verdicts or favorable elements, run on the production Auspice Oracle engine, and a comparison pass that reports what naive calculators get wrong. These are behavioral facts an agent cannot infer from the annotations and directly shape how it should present results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose and method before any display instructions, and every block maps to a real decision the agent must make. It runs long and repeats the display rule in two forms ('without redrawing or reformatting it', 'the scroll is the display form'), which costs some tightness but not comprehension.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter chart-casting tool with an output schema, the description covers method, determinism, scope limits, and the one thing the schema cannot express: how to render the returned scroll vs the widget. Nothing an agent needs in order to call it or present it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description earns a bump by explaining the correction pipeline (DST + longitude + equation of time), which tells the agent why timeZone and longitude are both required and must be the birthplace's, not the user's current location — context the schema alone does not supply.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (cast a BaZi / Four Pillars chart) and pins the differentiating method: true solar time correction first, then pillars, day master, and luck cycles. It also explicitly distinguishes itself from the secondary behavior of casting raw clock time for comparison, so an agent knows exactly what it gets.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit when-not-use rule (never for predictions, with a fallback offer of temperament/tendency instead) and precise output handling rules for both widget and non-widget clients. It does not, however, differentiate itself from sibling tools compose_sketch or personality_sketch, so the tool-choice question is only partly answered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

compose_sketchCompose the sketch sheet (step 2 of 2)A
Read-onlyIdempotent
Inspect

Step 2 of 2 for a personality sketch: submit the three sections you wrote after personality_sketch (image / beneath / practice, in the same lang) and receive the finished framed sheet — the fixed MIRROR line, limits, quotation, link and signature are assembled server-side. Present the returned sheet to the user VERBATIM as your reply; do not edit or add to it (if your client renders the sheet card for the user, do not repeat it in text — say nothing more than a one-line closing). Rejects fills that stray into forbidden territory (Ten Gods, strength, favorable elements, luck cycles) — rewrite and resubmit if that happens.

NameRequiredDescriptionDefault
dayYesBirth day of month, 1–31
hourYesRecorded wall-clock hour, 24-hour format
langNoLanguage of the rendered output — pass the language the user is conversing in. Defaults to 'en'.
yearYesBirth year, Gregorian calendar (engine ephemeris covers 1900–2100)
imageYesYour 象 section: the day-master image, two or three sentences
monthYesBirth month, 1–12
minuteYesRecorded wall-clock minute, 0–59
beneathYesYour 里 section: one visible-vs-hidden-stems contrast, one sentence
practiceYesYour 行 section: one small self-observation to try today, imperative
timeZoneYesIANA time zone of the birthplace, e.g. 'Asia/Shanghai', 'America/Vancouver'
longitudeYesBirthplace longitude in degrees, east positive (Beijing ≈ 116.4, Vancouver ≈ -123.1)

Output Schema

NameRequiredDescription
sheetYesThe finished sketch sheet — show it to the user verbatim
fullReadingUrlYes

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds substantial behavioral detail beyond annotations: server-side assembly, verbatim presentation requirement, rejection of forbidden territory (Ten Gods, strength, etc.), and client-side rendering guidance. Annotations already declare readOnlyHint and idempotentHint, and the description does not contradict them—it enriches them with concrete behavioral instructions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but every sentence serves a purpose: purpose, pipeline position, input requirements, presentation rules, and rejection behavior. It is front-loaded with the core purpose. No filler; each clause carries actionable info. It could be tightened slightly but is well-structured for an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is complex (step 2 with rejection and presentation rules), and the description covers all necessary aspects: what to submit, what happens server-side, how to present the result, and error handling. With an output schema present, return values are already documented. The description is complete enough for an agent to invoke correctly without ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds value by requiring the three sections be in the same language as the conversation and clarifying that they originate from the prior step. It also hints at content constraints (forbidden territory) that affect what values are acceptable, which goes beyond the raw schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is step 2 of 2 for a personality sketch, specifying the exact inputs (image, beneath, practice) and the output (a finished framed sheet with server-side assembly). It distinguishes itself from siblings by noting it follows personality_sketch and is distinct from cast_chart, which is a different workflow. The verb 'compose' and resource are concrete and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly positions itself as step 2 after personality_sketch, instructing the agent to submit sections written in that step, and gives clear presentation instructions (verbatim, no edits) and a rewrite/resubmit flow on rejection. It does not explicitly name alternative tools or say 'when not to use', but the pipeline step is unambiguous. The guidance is strong enough for correct selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

personality_sketchPersonality sketch (fill-in template)A
Read-onlyIdempotent
Inspect

Step 1 of 2 for a personality sketch. Casts the chart and returns the chart facts plus a fill-in template (象 image / 里 beneath / 行 practice) for YOU, the assistant, to write — a short literary sketch grounded only in the returned facts, within the stated limits (no strength verdict, no favorable elements, no Ten Gods, no luck-cycle reading). Step 2: pass your three texts to compose_sketch and present its framed sheet verbatim. Deterministic facts; the prose is yours; the framing is the server’s.

NameRequiredDescriptionDefault
dayYesBirth day of month, 1–31
hourYesRecorded wall-clock hour, 24-hour format
langNoLanguage of the rendered output — pass the language the user is conversing in. Defaults to 'en'.
yearYesBirth year, Gregorian calendar (engine ephemeris covers 1900–2100)
monthYesBirth month, 1–12
minuteYesRecorded wall-clock minute, 0–59
timeZoneYesIANA time zone of the birthplace, e.g. 'Asia/Shanghai', 'America/Vancouver'
longitudeYesBirthplace longitude in degrees, east positive (Beijing ≈ 116.4, Vancouver ≈ -123.1)

Output Schema

NameRequiredDescription
seasonYesSeason of the month branch (deterministic lookup)
pillarsYes
dayMasterYes
boundaryRiskYes
fullReadingUrlYes

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, but the description adds significant behavioral context: the tool is deterministic ('Deterministic facts'), the prose is the assistant's responsibility, and the framing is the server's. It also discloses the return content (facts plus template) and the limits of what it does not provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is detailed and somewhat long, but every sentence serves a purpose: purpose, workflow, limits, and next step. It is front-loaded with the primary purpose and clearly structured into two steps. Slightly verbose but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (8 params, output schema, sibling tool), the description is complete. It tells the agent exactly what to do, what to expect, how to proceed to step 2, and what constraints apply. Nothing essential is missing for an agent to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% – every parameter has a description in the schema, so the baseline for parameter semantics is 3. The tool description does not add parameter-specific information beyond that, but it doesn't need to since the schema is comprehensive and includes ranges and examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's specific role: 'Step 1 of 2 for a personality sketch' that casts the chart and returns facts plus a fill-in template. It distinguishes itself from sibling compose_sketch by naming it as step 2 and specifying the task division (deterministic facts vs. assistant's prose).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly describes the workflow: cast the chart, receive facts/template, write three texts, then pass them to compose_sketch. It also specifies what not to do (no strength verdict, no favorable elements, no Ten Gods, no luck-cycle reading), giving clear boundaries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changedcast_chart1 field changed
      • addedOutput schema / properties / luckCycles / description
        Added value: +"Ten-year luck cycles as a charting convention — not a forecast; never read as lucky/unlucky years"
  2. 3 tool updates
    • First observedcast_chart
    • First observedcompose_sketch
    • First observedpersonality_sketch

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    23 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources