
Saju Mcp
io.github.ghdejr11-beepPublished by GitHub account ghdejr11-beepv0.1.0Updated Oct 25, 2026
Korean Four Pillars of Destiny (Saju/Bazi): calculate, interpret, compatibility & daily fortune.
Overview
A local MCP server that wraps the Saju API so an assistant can compute, interpret and compare Korean Four Pillars (Saju/BaZi) charts and daily fortunes.
- What you can do
- Calculate a chart from a solar birthdate: four pillars, five-element distribution, Day Master and zodiac, with optional interpretation of Ten Gods, hidden stems, Yongshin and Daeun, in ten output languages, returned as text and structured content for branching on fields such as element or score. Compare two people for a 0–100 compatibility score with a breakdown. Fetch a daily fortune snapshot (score and advice) for a Day Master and date.
- When to use it
- Useful when you want an AI client to produce Korean Saju/BaZi readings, compatibility comparisons or daily fortunes in conversation, without calling the upstream API yourself. It suits astrology hobby use and light prototyping rather than production volume on the free tier.
- Requirements
- Runs locally over stdio, typically via npx with Node.js 18 or newer. Requires a Saju API key in the SAJU_API_KEY environment variable, sent upstream as the X-API-Key header; without it calls return 401. Network access to the Saju API is needed. An optional SAJU_API_BASE variable overrides the upstream base URL.
Installation
In SourceWeft
- Open Saju Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Saju MCP — Korean Four Pillars & BaZi Astrology
[npm] [node] [MCP Registry] [license]
An MCP (Model Context Protocol) server that wraps the Saju API — Korean Four Pillars of Destiny (사주팔자 / BaZi / 八字) — so any MCP-capable AI client (Claude Desktop, Cursor, VS Code, Windsurf, and custom agents) can compute, interpret, and compare Korean Saju charts directly in a conversation.
30-second path: get a free key → add the config → ask your AI client "calculate the saju for someone born 1990-05-15 14:00, male."
Why this MCP?
- The only production-grade Korean Saju engine available as an MCP server.
- KASI-validated lunar conversion (47,000+ days cross-checked, zero failures).
- Ten Gods (十神) + Yongshin (用神) + Daeun (大運) — interpretive features absent from generic Western astrology APIs that only return sun/moon signs.
- 10 output languages: Korean, English, Japanese, Chinese, Spanish, Portuguese, Vietnamese, Indonesian, Hindi, Thai.
- Free tier: 100 requests/day, no credit card. Freemium — start building today and upgrade only when your app needs production volume.
Backed by the live API at https://saju-api.pages.dev.
What it looks like in practice
Ask your AI client a natural-language question; it calls saju_calculate and gets
back structured data it can reason over. This is a real, unedited response from
the live API for { year: 1990, month: 5, day: 15, hour: 14, gender: "M", lang: "en" }:
Every response is returned to the model as both human-readable text and
structuredContent, so agents can branch on day_master.element, elements, a
compatibility score, etc. without re-parsing prose.
Tools
Quickstart
1. Get a free API key (no card)
The free tier is 100 requests/day, no credit card:
The response contains an api_key of the form sajuapi_free_...:
The key is shown only once — store it now. It is passed to the server via the
SAJU_API_KEYenvironment variable, never hardcoded. (Disposable /example.comemail domains are rejected — use a real address.)
2. (Optional) Smoke-test without an MCP client
npx runs the server straight from npm — no clone, no local build:
It speaks MCP over stdio and exposes the four saju_* tools. Press Ctrl-C to exit.
3. Register in your MCP client
The server is stdio-based, so every MCP client uses the same three pieces:
command: npx, args: ["-y", "saju-mcp"], and an env with your SAJU_API_KEY.
Claude Desktop
Edit your config file, then restart Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Cursor
Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per-project), then
reload:
VS Code (GitHub Copilot / MCP)
Add to .vscode/mcp.json in your workspace:
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json, then refresh MCP servers:
Restart / reload your client. The four saju_* tools appear in its tool list.
Example tool inputs
saju_calculate / saju_interpret:
(hour: -1 if the birth hour is unknown.)
saju_compatibility:
saju_daily (Day Master from a prior calculate/interpret call):
Input bounds (validated server-side, mirrors the API): year 1920–2050,
month 1–12, day 1–31, hour -1–23, gender "M"|"F", lang one of the 10
supported codes (default ko).
Environment variables
Errors & troubleshooting
When an upstream call fails, the tool returns an MCP error result (isError: true)
whose text is Saju API error <status>: <body> plus a hint. Common cases:
Keys never appear in tool output or logs. If a key leaks, mint a new one — the old one keeps its own quota and can be abandoned.
Develop / build from source
Run the local build directly:
Requires Node.js 18+ (uses the built-in global fetch).
Upgrading to production
The free tier (100 req/day, 1 rps) is for building and evaluation. When your app ships, higher-volume tiers are available on the same API — see https://saju-api.pages.dev for current plans and the key endpoint. Your code and config don't change; only the key does.
Related
- Korea Calendar API — Korean public holidays, lunar↔solar conversion, the gapja (간지) pillars and the 24 solar terms over REST. Pairs naturally with this server when you need the raw calendar facts behind a saju reading: https://korea-calendar-api.kunstudio.workers.dev
License
Proprietary — KunStudio. Wraps the Saju API; subject to that API's terms.
Source: README.md at commit e19b578
Tools
0Version history
1- v0.1.0LatestSep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.