legend-saju
Legend Saju
Это не обёртка, которая передаёт несколько знаков саджу в LLM. Это движок восточной метафизики, который возвращает структурированные расчётные формулы, школы, источники и неопределённости.
Одни и та же дата рождения рассчитывается по нескольким традициям. В расчётном пути нет скрытых вызовов LLM.
777 знаний с привязкой к источникам · 720 бюро далюжэнь · 9 495 наблюдений корейских ханча для имён · 0 вызовов модели на расчётном пути
Legend Saju обращается с расчётами разных традиций в одном движке: саджу и минли, цзывэй доу шу, ци мэнь дунь цзя, далюжэнь, тебань шэн шу, сонмёнхак и другие. Если школы расходятся, их не загоняют в один вывод; если время рождения неизвестно, не выдумывается произвольный час.
Самый быстрый способ начать
Текущая публичная версия включает одновременно локальный STDIO MCP и удалённый MCP через HTTPS. Локальный сервер можно запустить без отдельного API-ключа, если установлен Node.js 20 или выше.
Подключение к удалённому серверу без установки
Публичная точка входа MCP находится по адресу:
https://legend-saju-mcp-production.up.railway.app/mcpВ Codex подключиться можно следующей командой:
codex mcp add legend-saju-remote --url https://legend-saju-mcp-production.up.railway.app/mcpУдалённый сервер не хранит входные значения и не вызывает API модел. На публичную точку входа действуют ограничения на размер запроса, количество запросов в минуту и число одновременных выполнений. Если вы not хотите отправлять дату рождения или имя на внешний сервер, используйте локальный способ ниже.
Установка в качестве плагина
В Codex и настольном ChatGPT может установить плагин, в котором вместе объединены MCP-подключение и инструкции по использованию естественного языка. Сначала добавьте этот репозиторий как источник плагинов.
codex plugin marketplace add SihyeonJeon/legend-saju --ref mainЗатем на экране Plugins достаточно установить Legend Saju. Этот способ использует открытый удалённый MCP, поэтому Node.js или отдельный API-ключ не нужен. Регистрация в публичном каталоге плагинов ChatGPT для веба — это отдельный этап с подачей заявки и ревью.
Подключение одной строкой в Codex
Terminal terminal run the following command.
codex mcp add legend-saju -- npx -y --package=github:SihyeonJeon/legend-saju#main legend-saju-mcpПроверьте, что подключение прошло.
codex mcp listЗапустите Codex заново; если в /mcp видно legend-saju, установка закончена. Теперь можно задавать вопросы обычным образом, не называя имена инструментов или JSON.
Женщина, 30 июля 2000 года, 8:44 утра. Посмотри умно карьеру, деньги, брак и ближайшие три года.
Мужчина, 14 июля 1999 года, 11:24, женщина, 30 июля 2000 года, 8:44. Посмотри Совместимость и расчёт времени свадьбы.
Имя Kim Sang Су., иероглифы 金相洙. Отдельно от саджу проанализируй также основания учения имён.
Codex CLI, расширение Codex IDE и настольное приложение ChatGPT используют один и тот же конфигурации MCP Codex. Подробнее about support see the OpenAI MCP guide.
Подключение из других MCP-клиентов
В любом клиенте, поддерживающем MCP STDIO, можно использовать следующую конфигурацию запуска. Расположение файла настроек зависит от клиента.
{
"mcpServers": {
"legend-saju": {
"command": "npx",
"args": ["-y", "--package=github:SihyeonJeon/legend-saju#main", "legend-saju-mcp"]
}
}
}Если нужно зафиксировать локальный источник, можно собрать репозиторий и напрямую использовать CLI-обёртку.
{
"mcpServers": {
"legend-saju": {
"command": "node",
"args": ["/절대/경로/legend-saju/bin/legend-saju-mcp.js"]
}
}
}Локальный способ требует один раз выполнить npm ci && npm run build в корне репозитория.
Можно ли этим сразу пользоваться в вебе ChatGPT?
HTTPS-сервер удалённого MCP был готов. Однако появление публичного URL и регистрация в каталоге плагинов ChatGPT — это разные этапы. В режиме разработачика или в клиентах, поддерживающих удалённое MCP-подключение, приведённый выше URL можно использовать напрямую. Чтобы пользователи один стар получить установочный плагин, остаётся отдельный процесс регистрации и ревью.
Related MCP server: mcp-luopan
Что делает MCP
MCP-сервер предоставляет три инструмента read-only.
Тост | Функция |
| Показывает методы расчёта, источники и состав данных текущего движка |
| Находит подходящий метод расчёта для запроса на естественном языке |
| Принимает запрос и входные значения и запускает подходящие методы |
Три инструмента не три функции. Это маленький входной вход в большой реестр функции: его просмотр, поиск и запуск.
사용자의 자연어 질문
↓
호스트 모델이 입력을 정리하고 계산법을 탐색
↓
Legend Saju MCP가 결정론적 계산 수행
↓
출처·유파·충돌·누락 정보가 포함된 구조화 결과
↓
호스트 모델이 사람이 읽기 쉬운 한국어로 설명Legend Saju MCP сам по себе does not read OpenAI or Anthropic API-ключ and does not call models. Для разговора и пояснительных текстов используется существующая модельная сессия текущего клиента — Codex, Claude или другого.
Отличие MCP от прилагающего плагина
Если подключить т и базовое движение и три инструмента станут доступны сразу.
В Codex-плагине
plugins/legend-saju/собраны MCP-настройки и инструкции по естественному способу. Он улучшает обработку на сторону модели-хозяина, чтобы пользователю не вынуждать выбрать capability ID или входную схему.Расчётные возможности внутри плагина не сильно утоньшены. MCP и плагин use одну и ту же публичную точку входа в движок.
Естественно-языковой ввод
Интерфейсом, который продуман в этом проекте, является диалог, а не форма приёма или меню интентов. Модель извлекает из диалога только надёжную информацию, находит нужный метод расчёта и объясняет основания, которые вернул движок.
2004년 8월 3일 양력 남자고 태어난 시간은 몰라.
경기도 구리에서 태어났어. 앞으로 3년 직업과 돈을 봐줘.Если вы сказали, что не знаете время рождения, движок не подставит полдень. Он вернёт варианты отдельно, включая две традиции границы дат для часа.
Запуск как разработчик
git clone https://github.com/SihyeonJeon/legend-saju.git
cd legend-saju
npm ci
npm test
npm run build
npm run demoТребуется Node.js 20 или новее. Репозиторий только ESM и пока не опубликован в npm.
import { resolve } from "./dist/index.js";
const result = resolve({
birth: {
year: 2000,
month: 7,
day: 30,
hour: 8,
minute: 44,
calendar: "solar",
gender: "여",
birthTimeAccuracy: "recorded"
},
question: "직업과 재물, 연애 결혼, 앞으로 3년",
timelineRange: { startYear: 2026, endYear: 2028 }
});
console.log(result.dossier?.claims);
console.log(result.dossier?.conflicts);
console.log(result.routes);Возвращается не готовый текст гадания, а данные-основание для расчёта и интерпретации.
{
selection: { requested: string[]; selected: string[]; unsupported: string[] };
routes: CapabilityPreflight[];
dossier?: {
claims: EngineClaim[];
conflicts: ClaimConflict[];
synthesis: DomainSynthesis[];
timeline?: LifeTimeline;
blockedSystems: { capabilityId: string; reason: string }[];
};
evidence: SajuEvidence[];
nameAnalysis?: KoreanNameAnalysis;
noModelCalls: true;
interpretationBoundary: string;
}Зачем это создано
Многие AI-сервисы в area динамики start с промпта. Legend Saju начинает на уровень ниже есть calculations and foundations.
Детерминированное ядро: одинаковый вход даёт одинаковый результат без LLM.
Сохранение школ: Different view in Mingli or the Saho chips in Zhivei Doushu сохраняются как отдельные результаты.
Обработка неизвестного времени рождения: unknown hour is computed as a set of candidates and не выдумывается в полден.
Отслеживание sources: для каждой функции ставится зрелость, роль доказательства, школа, идентификатор источника and missing dimensions.
Никакого сокращённого «балла судьбы»: не объединяют основания и конфликты разных систем в единую цифру.
Фактические опубликованные данные
Репозиторий должен публиковать не только интерфейс для вызова моделей, но и письменную работу над сложными данными и правилами.
Запас | Диапазон выкладки | |
Многоязычная база знаний по восточной метафизике | 36 fields, 777 evidence items | |
Глоссарий по минли | 777 слов, including Korean · Hanja · Japan | |
Глоссарий по шанвэй Душу | 214 слов (отсортированы по языкам) | by language |
Проренв г Дуюн баоджан | "日日⨯月月" 120 cells + 66 executable exceptions | |
Теория дворцов и звёзд Шанцвей Душу | 163 structured rules and 3 different systems of Sihua computed separately | |
ДалюЖж | 60 day-stem × 12 heavenly branch, closed 720-transmitted table | |
"Железным верным" время? | 1,500 wall, 32? 144 first, 2,028 in Life | |
Korea name study | 9 495 observций юридических канча "Изучение имени" регулярно и 2 003 strokes shape, 2 003 observations | |
81 "числа" with specified range of origin | all 81 rows and primary source comparison | |
Исследования снов | 《Zhou Gong》 988 dreams, Artemidorus 211 fragments, cross-cultural audit seeds 5 |
Проверяемые исходные данные лежат в отдельных открытых datasets.
В Мое repository, transfer everything as source, data/ [data/README.md].
Raw extraction result fixed by file; single optimized computation path совпадал побайтово с прежними result на 144 комбинациях Цаньвэй Душу. Details are in docs/PARITY.md.
Объём реализации
Система | Актуальные границы реализации |
Календарь, натальная карта Saju | конвортация solar/lunar/leap, восемь иероглифов, большой периода, границы дат |
命理 | месячная сила, основания, hidden обрасти, десяти столпов? signals, three methods "божественного" корня, 120 cells of "Цзюнтун баоцзян" |
Цзывей Доу Шу | Двенадцать дворцов, Три стороны и четыре угла, multiple Sihua profile, chain star connection, stacked layers |
Daniel | closed table 60 day branches × 12 godly branch + boundary explicitness |
Ци мэнь | "Метод"?" early decomposition all |
"Cycles" (sext) | "Хuanji" long chains for three board + 14 series of personal wan si, 108-year chart |
Корейская наука имен | 9 549 hanja immutable, unicode and glyph decontext, horizontal "five" arithmetic stated by user, 81 with source |
Better than trusting fixed numbers in README, call it getEngineManИровать() for the current "current registry" — it is more accurate.
The time of birth is treated as local civil time. timezone and longitudeE are saved in the birth metadata, but the base chart doesn't silently apply a correction of approximate true solar time. This lack is recorded in the function and input audit metadata.
"Wrong birth data" are returned through a structured blocked path, so that request can be changed together with other results. Non-existent targetDate or questionDateTime cannot safely run all date-based calc, so the request is rejected.
One open entry point
import { resolve } from "./dist/index.js";resolve({ question, ...inputs }) searches the current registry, routes the question, calls executable calculators and returns all needed but not missing entries. requestedCapabilities accepts not closed enum, but general strings. Therefore adding a new module to the engine doesn't require rewriting all client schemas.
If you pass a name to the name argument of resolveAsync, a separate Korean name-study path opening. The actual name Han characters are compared against 9,495 observed snapshots. It keeps in separate evidence layers: legal usability, assigned reading, observed stroke count, each Unicode, glyph decomposition, explicitly chosen five-frame calculation, cross-check with 81 "fortune numbers".
The existing synchronous resolve is compatible with users who only need calculations. The async variant lazily loads large name-study data only when a name is passed, so it does not increase startup cost for common saju tasks.
analyze(input) is an API with typed "born" specification. query({ intent, ... }) is the 26-intent compatibility interface used by legacy content bot. Content creation, prompt and publishing automation are not mixed into the compute core.
Performance
Reproducible benchmarks included.
npm run benchmarkOn the current Apple Silicon dev machine/Node 26, the optimized current values were: median time for natal chart query 1.13 ms, median for full detailed natal chart with known birth time approx. 600 ms, median for New Process 63.1 ms import. These are engineering observations that can vary with hardware/environment. The current environment and method are given in PERFORMANCE.md.
When birth time is unknown
const result = analyze({
birth: {
year: 2004,
month: 8,
day: 3,
calendar: "solar",
gender: "남",
birthTimeAccuracy: "unknown"
},
question: "전체 인생"
});The engine returns separately the fixed pillar, changing relation, and all candidate hour pillars. It can compare candidates against past events, but it never decides one birth time by itself.
Скорее методология, чем мистика
Проект различает следующие этапы.
расчёт календаря и натальной карты
изучение структуры
interpretation in separate school
synthesis of multiple systems
Описание, written by human or LLM
Прежде чем претендовать на product-level, прочти Methodology and Feature Limits.
Actual development process: development order, multilingual queries, executable agent "tasks". For maintainers, the GitHub release checklist is in docs/RELEASING.md.
Release status
Supported generation object is public GitHub source. package.json is marked private to avoid publishing to npm. npm run release:check checks that the public files match image in source and no common secret patterns appear. Data sources and publishing scope are described in DATA_LICENSES.md and release-boundary.json.
Next steps
Optional input screen for those not using MCP clients
strengthening remote MCP stability and optional authentication
Standalone input screen that works non-public "default private"
Separate license on dream interpretation data package
additional reference fixed values with independent review for each school
Responsible use
Legend Saju lets the traditional doctrinal systems be reproduced and compared. "Passes validation" means it reproduces the documented calculations, not that the prediction of accuracy is proven in the scientific sense. Do not use it as a replacement for medical, legal, financial, or psychological experts.
License
Project code is Apache-2.0. External libraries and data sets are subject to licensing. See DATA_LICENSES.md and THIRD_PARTY_NOTICES.md.
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 Servers
- 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.444MIT
- AlicenseAqualityDmaintenanceProvides tools for Bazi (Chinese astrology) chart calculation and analysis, enabling LLMs to generate accurate birth charts, determine patterns, and answer follow-up questions based on actual calculations rather than model knowledge.2MIT
- AlicenseAqualityCmaintenanceEnables AI agents to perform Chinese metaphysics calculations including BaZi charts, Tong Shu indicators, solar terms, and more, using a verified engine with 740+ tests.88MIT
- AlicenseAqualityCmaintenanceProvides traditional Chinese astrology (Bazi, Ziwei) and divination (Liuyao, Meihua, Qimen, etc.) calculations as MCP tools for AI assistants.1728103Apache 2.0
Related MCP Connectors
Chinese metaphysics (bazi, qimen, 5-element) as decision-support tools for AI agents.
Gateway between LLM agents and world data through eight tools and a bundled endpoint catalog.
Deterministic reasoning stack for AI agents: simulate, decide & compute, plus cross-domain tools.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SihyeonJeon/legend-saju'
If you have feedback or need assistance with the MCP directory API, please join our Discord server