AI 사주풀이 (Korean Saju)
Server Details
Korean saju (BaZi) chart calculator, daily zodiac fortunes, dream meanings, 2027 New Year fortune
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
calculate_saju (chart computation) and interpret_dream (dream lookup) are clearly distinct from each other and from the fortune tools. The only overlap is between get_2027_zodiac_fortune and get_daily_zodiac_fortune, which both return readings for a zodiac animal, but the names and descriptions make the annual-vs-daily distinction explicit.
All four names follow a verb_noun pattern (calculate_saju, get_*_zodiac_fortune, interpret_dream) in snake_case, which is easy to scan. The only quirk is the hardcoded year inside get_2027_zodiac_fortune, which is a naming/shelf-life wart rather than an inconsistency.
Four tools is a tight, well-scoped surface for a niche saju/fortune server, and each tool covers a genuinely different use case. It sits at the thin end of the ideal range but nothing feels padded or redundant.
Core flows are covered (chart calculation, daily fortune, annual fortune, dream lookup), but calculate_saju explicitly stops at raw chart data with no interpretation/reading tool, and there is no compatibility (gunghap) or general life-reading operation. The annual fortune is also pinned to 2027 only, which becomes a dead end for other years.
Available Tools
4 toolscalculate_sajuFour Pillars (saju) chart calculatorARead-onlyIdempotentInspect
Calculate a Korean saju / Chinese BaZi (Four Pillars of Destiny) chart from a birth date: the year, month, day and hour pillars in hanja and hangul, the day master, five-element counts, ten gods, the 10-year luck cycles, and the solar terms around the birth. Handles solar or lunar (including leap month) dates, month boundaries by solar term, and local solar time correction for the birth place. Calculation only; the input is not stored.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Answer language: ko (Korean) or en (English) | ko |
| gender | No | Sets the direction of the 10-year luck cycles | |
| calendar | No | Calendar of birth_date | solar |
| latitude | No | Instead of birth_place: latitude | |
| timezone | No | IANA time zone with latitude/longitude, e.g. 'Asia/Seoul' | |
| longitude | No | Instead of birth_place: longitude | |
| birth_date | Yes | Birth date YYYY-MM-DD (solar, or lunar if calendar='lunar') | |
| birth_time | No | Birth time HH:mm, 24-hour, local clock time. Omit if unknown (the hour pillar is then left out) | |
| birth_place | No | Birth place: Korean city/district ('서울 강남구', '부산', '전주시') or a world city in English ('Tokyo', 'New York'). Default Seoul | |
| lunar_leap_month | No | For lunar dates: true if the month is a leap month (윤달) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description is free to add real behavioral detail: it discloses edge-case handling for lunar and leap-month dates, solar-term month boundaries, and local solar-time correction, plus a data-handling guarantee ('the input is not stored') that no annotation conveys. It stops short of describing failure behavior for invalid dates or out-of-range coordinates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the verb and resource, then outputs, then input-format edge cases, then the storage disclaimer. The output enumeration is long but earns its place because no output schema exists; nothing is redundant with the title or schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 10-parameter domain-specific tool with no output schema, the description carries the return-value burden well and covers the tricky calendar/locale cases. The remaining gap is conditional behavior: it does not say whether omitting gender or location silently suppresses the luck cycles or solar-time correction, which matters for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline would be 3, but the description adds meaning the schema does not: birth_place/latitude/longitude are explained as feeding local solar-time correction rather than being an unexplained locator, and the lunar/leap-month path ties calendar and lunar_leap_month together. That linkage is genuine semantic value beyond the per-field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb plus resource ('Calculate a Korean saju / Chinese BaZi chart from a birth date'), followed by an enumeration of exactly what the chart contains (pillars, day master, five-element counts, ten gods, luck cycles, solar terms). It also distinguishes itself from the fortune/interpretation siblings with 'Calculation only', so an agent can tell it apart without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Calculation only; the input is not stored' establishes the context in which this tool is appropriate versus the interpretation-oriented siblings. It does not explicitly name an alternative for follow-up interpretation (e.g. point at the fortune tools), so the routing guidance is clear but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_2027_zodiac_fortune2027 New Year fortune by zodiac animalARead-onlyIdempotentInspect
The 2027 (丁未 Jeongmi, Year of the Red Sheep) New Year fortune for a zodiac animal: whether Samjae (삼재) applies, the animal's traditional relation to the 未 year (harmony, clash …), birth years, and a reading covering overall luck, money, love, health, work, month by month and lucky points. Samjae and relations are fixed by rule; the reading text is in Korean.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Answer language: ko (Korean) or en (English) | ko |
| animal | Yes | Zodiac animal in Korean or English ('쥐띠', '용', 'dragon', 'goat') or a birth year such as 1990 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description usefully adds that Samjae and the year relation are rule-derived (deterministic) while the narrative reading is Korean text, but it leaves an unresolved tension with the lang parameter's 'en' option and says nothing about response size or structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the year and resource, then lists the returned components; there is little waste. It is long but each clause carries content, though the parenthetical transliterations (丁未 Jeongmi, 삼재) are somewhat decorative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by enumerating the returned sections (overall luck, money, love, health, work, monthly, lucky points), which is the key missing structured information. The only real gap is the unexplained interaction between the lang parameter and the stated Korean-only reading text.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with the animal parameter already documenting Korean/English names and birth-year input, so the schema does the heavy lifting. The description restates the birth-year acceptance and adds that output text is Korean, but does not clarify how lang=en interacts with that claim.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: the 2027 New Year fortune for a zodiac animal, and enumerates what the answer contains (Samjae, relation to the 未 year, birth years, reading sections, lucky points). The '2027 New Year' scope implicitly separates it from get_daily_zodiac_fortune, but no sibling is named explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is the annual 2027 reading rather than a daily one, and that a zodiac animal or birth year is accepted. There is no explicit when-to-use/when-not statement or pointer to calculate_saju or get_daily_zodiac_fortune as alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_daily_zodiac_fortuneDaily fortune by Korean zodiac animalARead-onlyIdempotentInspect
Today's or tomorrow's fortune (Korea time) for one of the 12 zodiac animals (띠): luck score, summary, love, money, health and work/study, advice, lucky color and number. Accepts the animal name in Korean or English, or a birth year. Published daily by sazuai.com.
| Name | Required | Description | Default |
|---|---|---|---|
| day | No | today | |
| lang | No | Answer language: ko (Korean) or en (English) | ko |
| animal | Yes | Zodiac animal in Korean or English ('쥐띠', '용', 'dragon', 'goat') or a birth year such as 1990 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and openWorldHint=false, so the safety profile and determinism are handled. Beyond that the description adds real context the annotations don't cover: the computation basis is Korea time, content is published daily by sazuai.com (a freshness/source signal), and the full set of returned fields is disclosed despite there being no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the operation and its scope, then input formats, then source. The parenthetical field list earns its place since no output schema exists. Minor redundancy in restating the Korean/English animal input, which the schema already covers.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter read-only tool with no output schema, the description covers purpose, time zone, accepted input forms, source, and returned fields — enough to call it correctly on the first attempt. Gaps are minor: no statement on what happens with an invalid animal name or an out-of-range birth year, and no note on the default answer language.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%, so the schema already documents animal and lang. The description reinforces the accepted animal forms and, importantly, gives the day parameter semantic footing ('today's or tomorrow's fortune (Korea time)'), which the day enum itself doesn't explain. However, it never mentions the lang parameter's effect on the answer language, which is the one under-documented dimension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource — a daily fortune for one of the 12 zodiac animals (띠), covering today or tomorrow in Korea time — and enumerates exactly what comes back (luck score, love, money, health, advice, lucky color/number). The daily scope implicitly contrasts with the sibling get_2027_zodiac_fortune, but no sibling is named outright, so differentiation is left for the agent to infer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the use case obvious (fetch one animal's fortune for today or tomorrow) but offers no explicit when-to-use or when-not-to-use guidance, nor does it route the agent toward calculate_saju or get_2027_zodiac_fortune for other time horizons. Usage is inferable, not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
interpret_dreamDream interpretation (Korean 꿈해몽)ARead-onlyIdempotentInspect
Interpretation of a common dream topic (snake, teeth falling out, water, money, pig, baby, death, being chased, exams, ex-partner and 70+ more) from Korean traditional dream reading (길몽/흉몽, 태몽, wealth omens) and a psychological view, with situation-by-situation meanings. Match by English slug or Korean keyword ('snake', '뱀', '이빨 빠지는 꿈'). Text is in Korean.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Answer language: ko (Korean) or en (English) | ko |
| topic | Yes | Dream topic, e.g. 'snake', 'teeth', '돼지', '똥 꿈' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only, idempotent, non-destructive lookup behavior, and the description adds that interpretations combine traditional and psychological views with situation-by-situation meanings. However, 'Text is in Korean' is in tension with the lang enum that permits English answers, so output-language behavior is not fully clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded and the topic range is conveyed compactly, though the long parenthetical topic list and overlapping keyword examples add bulk. Most sentences still carry useful scope information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only lookup with no output schema, the description gives enough on topic coverage, interpretation lenses, and situation-by-situation output to call it correctly. It leaves some gaps around unknown-topic behavior and output-language consistency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both topic and lang are already documented. The description adds only matching hints such as 'English slug or Korean keyword' that largely overlap with the schema examples, and it does not clarify the lang parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific operation, interpretation, and resource, dream topics, and scopes it to Korean traditional dream reading plus a psychological view. The listed topics and Korean/English keyword forms make it distinguishable from the sibling saju and zodiac fortune tools even without naming them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies use for dream-topic interpretation and gives matching guidance for the topic parameter, but never explicitly states when to choose it over the fortune/saju siblings or what to do for unknown topics. There are no exclusions or prerequisites.
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.
4 tool updates
- First observed
calculate_saju - First observed
get_2027_zodiac_fortune - First observed
get_daily_zodiac_fortune - First observed
interpret_dream
Related MCP Connectors
Korean Saju (Four Pillars) calculator: birth chart, day pillar, luck flow, monthly fortune
Korean Four Pillars (Saju/BaZi) calculator: pillars, elements, ten gods, sinsal, luck cycles.
Deterministic Korean Saju / BaZi Four Pillars MCP. Day Master, five elements, compatibility.
Saju & BaZi (Four Pillars) charts, luck cycles, manseryeok and classics. Free with sign-in.
Related MCP Servers
- AlicenseCqualityDmaintenanceProvides Korean traditional Saju (Four Pillars of Destiny) fortune-telling analysis including birth chart calculations, compatibility checks, daily/yearly fortunes, calendar conversions, and personalized life advice based on ancient Eastern astrology.743MIT
- FlicenseAqualityDmaintenanceEnables MCP clients to compute and interpret Korean Four Pillars of Destiny (Saju) through natural language, including calculation, interpretation, compatibility analysis, and daily fortune.441 npm-
- AlicenseAqualityAmaintenanceKorean Saju and Chinese BaZi (Four Pillars) computed by the CAFE engine: natal chart with Day Master and Ten Gods, Five Elements balance, chart structure (格局), yin-yang and climate, favorable-element candidates, and a manseryeok calendar with exact solar-term times. 6 read-only tools, no API key. Remote: https://mcp.24plus.ai.kr/mcp or npx -y @dangamsoft/cafe-mcp663 npmApache 2.0
- AlicenseAqualityDmaintenanceEnables Korean Saju (Four Pillars of Destiny) calculation and myeongni-hak glossary lookup via MCP, allowing AI clients to compute accurate saju analysis and look up fortune-telling terms.475 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.