sajuMCP
This server calculates Korean Four Pillars of Destiny (사주/만세력) via the calculate_saju tool. Input a birth date and time to receive:
원국 (Four Pillars): 사주팔자, 일간 strength
십성 (Ten Gods), 12운성 (12 Life Stages), 합충형파해 (combinations/clashes)
신살 (Special Stars), 격국 (Chart Pattern), 용신 (Favorable Elements)
대운/세운/월운 (Major/Annual/Monthly Luck Cycles), 공망 (Void Spaces)
Required inputs: year, month, day
Optional inputs: hour, minute, gender (affects 대운 direction), calendar type (solar/lunar), lunar leap month, timezone (default: Asia/Seoul), longitude, local mean time correction
Output formats:
compact– LLM-optimized (~950 tokens)markdown– human-readable (~2,170 tokens)json– structured data
Connects to MCP clients (e.g., Claude Desktop) via stdio protocol.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sajuMCPCalculate my saju: born 1990-06-15 14:30, male"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-saju
ssaju 만세력 엔진을 래핑한 stdio MCP 서버. MCP 클라이언트(Claude Desktop·Claude Code 등)가 생년월일시로 사주·만세력을 계산하도록 calculate_saju 도구를 노출한다.
엔진: ssaju (MIT · TypeScript · 의존성 0 · 원국·십성·12운성·합충형파해·신살·격국·용신·대운·세운·월운·공망 한 번에 산출)
트랜스포트: stdio (클라이언트가 서브프로세스로 실행)
라이선스: MIT
설치 / 빌드
npm install
npm run build # tsc → dist/index.jsgit 필요: 엔진 의존성
ssaju를molpass/ssaju포크에서 git으로 가져온다(serializeSaju포함, 커밋 핀 고정). 따라서npm install시 git이 설치돼 있어야 하며, 설치 과정에서 포크를 clone해 자동 빌드한다(빌드 devDependencies를 잠시 내려받음).
Related MCP server: Saju MCP Server
MCP 클라이언트 등록
클라이언트의 MCP 서버 설정에 stdio 명령으로 추가한다.
{
"mcpServers": {
"saju": {
"command": "node",
"args": ["/abs/path/mcp-saju/dist/index.js"]
}
}
}도구: calculate_saju
생년월일시로 사주·만세력을 계산한다.
입력
파라미터 | 타입 | 기본값 | 설명 |
| number | (필수) | 연도 |
| number | (필수) | 월 1–12 |
| number | (필수) | 일 1–31 |
| number | 12 | 시 0–23 |
| number | 0 | 분 0–59 |
|
| (없음) | 대운 방향에 영향 → 정확한 결과 위해 제공 권장 |
|
|
| 입력 달력 종류 |
| boolean | false | 음력 윤달 여부 |
| string |
| IANA 시간대 |
| number | (없음) | 진태양시 보정용 경도 |
| boolean | (없음) | 진태양시 보정 적용 |
|
|
| 출력 형식 (compact=LLM용 압축, markdown=사람용 상세, json=구조화 데이터) |
출력
format에 따라 ssaju의 toCompact()(기본, ~950토큰) 또는 toMarkdown()(~2,170토큰) 문자열을, json이면 serializeSaju()로 직렬화한 구조화 JSON(함수 필드 제외)을 텍스트로 반환한다.
예시
입력:
{ "year": 2001, "month": 11, "day": 3, "hour": 14, "minute": 20, "gender": "남" }출력(첫 줄):
일간 庚(경)금+ 강약: 강(78) 격: 인수격 용신: 己, 丙, 癸검증
npm testtest/smoke.test.js — 빌드된 서버에 stdio JSON-RPC 1왕복(initialize → tools/call)을 보내 위 예시 입력의 결과에 일간 庚 · 인수격 · 용신 己·丙·癸가 그대로 나오는지 확인하는 회귀 테스트.
MCP Inspector로 수동 검증:
npx @modelcontextprotocol/inspector node dist/index.jsGUI에서 calculate_saju를 위 예시 입력으로 호출하면 동일 결과를 확인할 수 있다.
About / 제작
Hermes Agent용 MCP — molpass의 바이브 코딩(vibe coding) 프로젝트.
아이디어·방향: molpass (이정훈) · https://zeolinex.com
기획: Claude (Chat)
개발: Claude Code
자가 호스팅 Hermes Agent에 도구로 붙여 쓰는 MCP 서버입니다.
같은 모음:
mcp-saju — 사주명리 만세력
mcp-qr — QR 코드 생성
mcp-biorhythm — 바이오리듬
mcp-astrology — 서양 점성술 네이탈 차트
mcp-ziwei — 자미두수 명반
mcp-numerology — 수비학
mcp-liuren — 대육임
mcp-qimen — 기문둔갑
mcp-taiyi — 태을신수
mcp-weather — 한국 날씨·미세먼지
mcp-newsfeed — 한국 주요뉴스
Available Tools
1 toolcalculate_saju사주/만세력 계산A
생년월일시로 사주·만세력을 계산한다. 원국(사주팔자)·십성·12운성·합충형파해·신살·격국·용신·대운·세운·월운·공망을 한 번에 산출한다. gender는 대운 방향에 영향을 주므로 정확한 결과를 위해 제공을 권장한다.
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | 양력/음력 연도 (예: 2001) | |
| month | Yes | 월 1-12 | |
| day | Yes | 일 1-31 | |
| hour | No | 시 0-23 (기본 12) | |
| minute | No | 분 0-59 (기본 0) | |
| gender | No | 성별. 대운 방향에 영향 → 정확한 결과 위해 제공 권장 | |
| calendar | No | 입력 달력 종류 (기본 solar) | solar |
| leap | No | 음력 윤달 여부 (calendar=lunar일 때만 의미) | |
| timezone | No | IANA 시간대 (기본 Asia/Seoul) | Asia/Seoul |
| longitude | No | 경도. 진태양시 보정용 | |
| applyLocalMeanTime | No | 진태양시(지방평균시) 보정 적용 여부 | |
| format | No | 출력 형식. compact=LLM용 압축(기본), markdown=사람용 상세 | compact |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It describes the tool as a computation that outputs various saju components, but it does not explicitly state that the tool is read-only or has no side effects. Given the nature of the tool (calculation), the lack of explicit safety guarantees is a minor gap. The description does mention how gender affects Daewoon direction, which adds some behavioral context.
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?
The description is extremely concise, consisting of only two sentences. It front-loads the core purpose and output components, then adds a specific usage guideline. Every sentence earns its place, with no redundant or filler content.
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 complex tool with 12 parameters and no output schema, the description provides a comprehensive list of output components (원국, 십성, etc.), which gives the agent a clear understanding of what the tool returns. It also includes guidance on the gender parameter. However, it could mention the expected date format or input validation, but the schema covers some of that. Overall, it is quite complete given the tool's nature.
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?
The input schema provides descriptions for all 12 parameters (100% coverage), so the description adds little additional meaning for parameters. The description reiterates the importance of gender (similar to schema) and lists output components, but does not clarify parameter semantics beyond what the schema already offers. Baseline 3 is appropriate due to high schema coverage.
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 clearly states the tool's purpose: calculating saju/manse (사주/만세력) from birth details. It lists the specific components output (e.g., 원국, 십성, 12운성 etc.), making the tool's function unmistakable. The title and name align, and there are no sibling tools to differentiate from.
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 explicitly recommends providing gender for accurate results ('gender는 대운 방향에 영향을 주므로 정확한 결과를 위해 제공을 권장한다'), which is a clear usage guideline. It also implies that hour, minute, calendar type, etc., have defaults. However, it does not explicitly state when not to use the tool or provide alternative tools, but given the absence of siblings, this is acceptable.
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 tool update
v1.0.0- First observed
calculate_saju
TDQS
Scored across 1 tool
Only one tool exists, so there is no ambiguity. The single tool has a clear and specific purpose.
With a single tool, naming is inherently consistent. The name 'calculate_saju' clearly indicates its function.
One tool for a specialized domain like saju is appropriate. The tool is comprehensive, covering many aspects in one calculation, so the count feels sufficient.
The tool appears to cover all major aspects of saju calculation: original chart, ten gods, 12 luck, harmony, gods, and various luck cycles. No obvious gaps.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Korean Four Pillars (Saju/BaZi) calculator: pillars, elements, ten gods, sinsal, luck cycles.
Korean saju fortune MCP: natal chart, today/daily/yearly luck, compatibility, and saved profiles.
Deterministic Korean Saju / BaZi Four Pillars MCP. Day Master, five elements, compatibility.
Generate BaZi charts from birth details. Explore Four Pillars, solar terms, and Luck Pillars for d…
Related MCP Servers
- AlicenseAqualityDmaintenanceKorean Saju (Four Pillars / 사주명리) birth-chart analysis — 5 free tools: chart, five elements, gyeokguk, yin-yang/climate balance, and classical yongshin candidates. Local stdio server via npx, no API key required.553Apache 2.0
- FlicenseAqualityCmaintenanceEnables MCP clients to compute and interpret Korean Four Pillars of Destiny (Saju) through natural language, including calculation, interpretation, compatibility analysis, and daily fortune.422-
- AlicenseAqualityCmaintenanceCalculates and returns a Ziwei Doushu (Purple Star Astrology) chart based on birth date, time, and gender. Returns both structured text of the 12 palaces and a PNG image of the chart.1MIT
- AlicenseAqualityBmaintenanceCalculates Korean traditional Dangsaju 12 stars based on birth date and time, returning deterministic structured data with star attributes and period readings.2MIT