关于 saju-mcp
saju-mcp 将韩国四柱命理(Saju/BaZi)API 封装为 MCP 服务,供 MCP 客户端在对话中计算、解读和比较命盘。它还提供每日运势,并以结构化数据返回结果。
主要功能
- 01计算四柱与五行分布
- 02解读十神、用神和大运
- 03比较两人命盘契合度
- 04查询指定日期每日运势
- 05支持 10 种输出语言
- 06同时返回文本和结构化数据
适用场景
- 01根据出生日期生成四柱命盘
- 02获取完整命理解读
- 03比较两人的命盘及契合度
- 04按日主查询某日运势
MCP 相关
这是一个通过 stdio 提供四种命理工具的 MCP 服务,调用 Saju API。MCP 客户端可使用这些工具计算、解读和比较命盘,以及查询每日运势。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| day | integer | 是 | 出生日期,1–31 |
| hour | integer | 是 | 24 小时制的出生小时(0–23)。如果小时未知,请使用 -1。 |
| lang | enum | 否 | 输出语言(默认值为 ko)。可选值:ko、en、ja、zh、es、pt-br、vi、id、hi、thko | en | ja | zh | es | pt-br | vi | id | hi | th |
| year | integer | 是 | 阳历(公历)出生年份,1920–2050 |
| month | integer | 是 | 出生月份,1–12 |
| gender | enum | 是 | 性别:'M' 或 'F'(会影响大运方向)。M | F |
详细介绍
Saju MCP — 韩国四柱与 BaZi 占星术
一个 MCP(Model Context Protocol)服务,封装了 Saju API —— 韩国四柱命理(사주팔자 / BaZi / 八字),让任何支持 MCP 的 AI 客户端(Claude Desktop、Cursor、VS Code、Windsurf 和自定义 Agent)都能在对话中直接计算、解读和比较韩国 Saju 命盘。
SAJU_API_KEY="sajuapi_free_xxx" npx saju-mcp
30 秒上手:获取免费密钥 → 添加配置 → 向 AI 客户端提问 “计算一位 1990-05-15 14:00 出生的男性的 Saju。”
为什么选择这个 MCP?
- 唯一可作为 MCP 服务使用的生产级韩国 Saju 引擎。
- 经 KASI 验证的农历转换(交叉核对超过 47,000 天,零失败)。
- 十神(十神)+ 用神(用神)+ 大运(大運)——通用西方占星 API 不具备的解读功能;这类 API 只会返回太阳/月亮星座。
- 支持 10 种输出语言:韩语、英语、日语、中文、西班牙语、葡萄牙语、越南语、印度尼西亚语、印地语、泰语。
- **免费套餐:每天 100 次请求,无需信用卡。**采用免费增值模式——今天即可开始构建,仅在应用需要生产级用量时升级。
由线上 API https://saju-api.pages.dev 提供支持。
实际使用效果
用自然语言向 AI 客户端提问;它会调用 saju_calculate 并获取可供推理的结构化数据。以下是线上 API 对 { year: 1990, month: 5, day: 15, hour: 14, gender: "M", lang: "en" } 返回的真实、未经编辑的响应:
{
"pillars": {
"year": { "stem": "경", "branch": "오", "stem_hanja": "庚", "branch_hanja": "午" },
"month": { "stem": "신", "branch": "사", "stem_hanja": "辛", "branch_hanja": "巳" },
"day": { "stem": "경", "branch": "진", "stem_hanja": "庚", "branch_hanja": "辰" },
"hour": { "stem": "계", "branch": "미", "stem_hanja": "癸", "branch_hanja": "未" }
},
"elements": { "wood": 0, "fire": 2, "earth": 2, "metal": 3, "water": 1 },
"day_master": { "stem": "경", "element": "metal", "polarity": "yang" },
"zodiac": "horse",
"tier": "free",
"remaining": 99
}
每个响应都会同时以人类可读文本和 structuredContent 的形式返回给模型,因此 Agent 可以直接根据 day_master.element、elements、合婚 score 等字段进行分支处理,无需重新解析文字。
工具
| 工具 | 上游端点 | 功能 |
|---|---|---|
saju_calculate | POST /api/v1/calculate | 根据阳历出生日期计算四柱(天干+地支+汉字)、五行分布、日主和生肖。 |
saju_interpret | POST /api/v1/interpret | 完整解读:十神(십신)、藏干、用神(용신)、大运(대운)和本地化摘要。 |
saju_compatibility | POST /api/v1/compatibility | 两人合婚评分(0–100)及详细分析(五行平衡、日主关系、地支合冲)。 |
saju_daily | GET /api/v1/daily | 根据日主和日期生成每日运势概览(评分 + 建议)。 |
快速开始
1. 获取免费 API 密钥(无需信用卡)
免费套餐每天可请求 100 次,无需信用卡:
curl -X POST https://saju-api.pages.dev/api/v1/keys/create \
-H "Content-Type: application/json" \
-d '{"email":"[email protected]"}'
响应中包含一个格式为 sajuapi_free_... 的 api_key:
{
"api_key": "sajuapi_free_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"tier": "free",
"daily_limit": 100,
"rps": 1,
"monthly_price_usd": 0,
"note": "Store this key safely — it is shown only once. Send with header `X-API-Key: <key>`."
}
密钥仅显示一次——请立即保存。密钥通过
SAJU_API_KEY环境变量传递给服务,绝不会硬编码。(不接受一次性邮箱或example.com邮箱域名——请使用真实邮箱地址。)
2.(可选)无需 MCP 客户端即可进行冒烟测试
npx 可直接从 npm 运行服务,无需克隆仓库或本地构建:
SAJU_API_KEY="sajuapi_free_xxx" npx -y saju-mcp
服务通过标准输入/输出(stdio)使用 MCP,并提供四个 saju_* 工具。按 Ctrl-C 退出。
3. 在 MCP 客户端中注册
该服务基于 stdio,因此每个 MCP 客户端都使用相同的三项配置:
command: npx、args: ["-y", "saju-mcp"],以及包含 SAJU_API_KEY 的 env。
Claude Desktop
编辑配置文件,然后重启 Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"saju": {
"command": "npx",
"args": ["-y", "saju-mcp"],
"env": { "SAJU_API_KEY": "sajuapi_free_your_key_here" }
}
}
}
Cursor
添加到 ~/.cursor/mcp.json(全局)或 .cursor/mcp.json(按项目),然后
重新加载:
{
"mcpServers": {
"saju": {
"command": "npx",
"args": ["-y", "saju-mcp"],
"env": { "SAJU_API_KEY": "sajuapi_free_your_key_here" }
}
}
}
VS Code (GitHub Copilot / MCP)
添加到工作区中的 .vscode/mcp.json:
{
"servers": {
"saju": {
"command": "npx",
"args": ["-y", "saju-mcp"],
"env": { "SAJU_API_KEY": "sajuapi_free_your_key_here" }
}
}
}
Windsurf
添加到 ~/.codeium/windsurf/mcp_config.json,然后刷新 MCP 服务:
{
"mcpServers": {
"saju": {
"command": "npx",
"args": ["-y", "saju-mcp"],
"env": { "SAJU_API_KEY": "sajuapi_free_your_key_here" }
}
}
}
重启 / 重新加载客户端。四个 saju_* 工具会显示在工具列表中。
工具输入示例
saju_calculate / saju_interpret:
{ "year": 1990, "month": 5, "day": 15, "hour": 14, "gender": "M", "lang": "en" }
(如果出生时辰未知,则 hour: -1。)
saju_compatibility:
{
"person_a": { "year": 1990, "month": 5, "day": 15, "hour": 14, "gender": "M" },
"person_b": { "year": 1992, "month": 8, "day": 3, "hour": 9, "gender": "F" },
"lang": "en"
}
saju_daily(来自先前 calculate/interpret 调用的日主):
{ "day_master": "갑", "date": "2026-06-17", "lang": "en" }
输入范围(由服务端验证,与 API 保持一致):year 为 1920–2050,
month 为 1–12,day 为 1–31,hour 为 -1–23,gender 为 "M"|"F",lang 为 10 种
受支持代码之一(默认值为 ko)。
环境变量
| 变量 | 必需 | 默认值 | 说明 |
|---|---|---|---|
SAJU_API_KEY | 是(用于实际调用) | (empty) | 你的 sajuapi_* 密钥,会作为 X-API-Key 标头发送。没有该密钥时,每次调用都会返回 401 invalid_api_key。 |
SAJU_API_BASE | 否 | https://saju-api.pages.dev | 覆盖上游基础 URL(例如暂存部署)。 |
错误与故障排除
上游调用失败时,工具会返回 MCP 错误结果(isError: true),
其文本为 Saju API error <status>: <body>,后面附带提示。常见情况:
| 症状 | HTTP 状态 | 原因 | 解决方法 |
|---|---|---|---|
401 invalid_api_key | 401 | SAJU_API_KEY 缺失、输入错误或已撤销。 | 将环境变量设置为有效的 sajuapi_* 密钥。免费获取一个。 |
429(超过每日配额) | 429 | 免费版每天 100 次请求,每秒 1 次请求。 | 等待每日配额重置,或升级到付费版以满足生产环境的用量。 |
invalid_input | 400 | 字段超出范围(例如 month: 13)或缺失。 | 检查上述输入范围;reason 字段会指出出错的字段。 |
| 客户端中未显示工具 | — | 客户端尚未重启,或 npx 无法获取程序包。 | 重启客户端;在终端中运行一次 npx -y saju-mcp,确认程序可以启动。 |
non_json_response | 任意 | 上游返回了非 JSON 内容(少见;网络 / 代理问题)。 | 重试;如果问题持续,请检查 SAJU_API_BASE 是否正确。 |
密钥不会出现在工具输出或日志中。如果密钥泄露,请创建一个新密钥——旧密钥仍有独立配额,可弃用。
从源代码开发 / 构建
git clone https://github.com/ghdejr11-beep/saju-mcp.git
cd saju-mcp
npm install
npm run build # compiles src/index.ts -> dist/index.js
npm run typecheck # tsc --noEmit
直接运行本地构建:
{
"mcpServers": {
"saju": {
"command": "node",
"args": ["/absolute/path/to/saju-mcp/dist/index.js"],
"env": { "SAJU_API_KEY": "sajuapi_free_your_key_here" }
}
}
}
需要 Node.js 18+(使用内置的全局 fetch)。
升级到生产环境
免费版(每天 100 次请求,每秒 1 次请求)适用于开发和评估。应用 发布后,可在同一 API 上使用更高用量的套餐——请访问 https://saju-api.pages.dev 查看当前套餐和密钥接口。代码 和配置无需更改;只需更换密钥。
相关项目
- Korea Calendar API — 通过 REST 提供韩国公共假日、阴历↔阳历转换、干支(간지)柱 和 24 节气。需要获取 saju 解读背后的原始历法数据时,可与此服务自然搭配使用: https://korea-calendar-api.kunstudio.workers.dev
许可证
专有 — KunStudio。封装 Saju API;须遵守该 API 的条款。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。