MCP

紫微斗数的公开 MCP,所有客户端共用一个地址。

适合:第一次把紫微接进对话的人。不用装库,不用写代码。

服务把三样东西公开给你的模型:盘面事实、知识包、一份解读方法(Skill)。怎么解读由模型自己决定,知识包和 Skill 都可以换成你自己的。Claude Code 与 Codex 装插件,Skill 和 MCP 一起进来;其余客户端填同一个地址,再贴上没有 Skill 时的说明。

地址

  • https://ziwei-mcp.x-haose.com/mcp。Streamable HTTP,无鉴权,公开免费。
  • 盘面由 x-iztro 计算,与 iztro 逐字段对齐;服务所用内核对齐的是 iztro v2.6.3。这是复现口径,不是流派裁决。见准确性保证。
  • 源码、插件与完整入参在 x-ziwei。

浏览器打开它看不到文章

/mcp 是给客户端连的端点,不是文档页。要读的是这一页;要复制的是上面的地址。

装插件

插件带上 Skill。Skill 让模型先问清生辰、再调工具,并把盘面事实、知识包释义和它自己的分析分开说。

Claude Code

在会话里依次输入:

Claude Code
/plugin marketplace add x-haose/x-ziwei
/plugin install ziwei@x-ziwei
执行上面两条命令。
用自然语言问一次,例如「阳历 2000-8-16 凌晨 3 点半出生,女,排紫微盘」。
回答前应能看到它调用了 ziwei_get_natal_chart。

Codex

Codex
codex plugin marketplace add x-haose/x-ziwei

添加市场后,在 Codex 的插件列表里安装 ziwei。

ChatGPT

公开插件目录的上架还在准备,现在不能在目录里搜到。上架之前用自定义 MCP:

打开插件页,点添加,选自定义 MCP 服务器(英文界面是 Add custom MCP server)。
地址填 https://ziwei-mcp.x-haose.com/mcp,认证选无(No authentication)。
创建并安装,对话里输入 @ 选用。

这条路没有 Skill,把没有 Skill 时的说明贴进自定义说明。官方步骤见 Add custom MCP server。

只接地址

能填远程 MCP 地址的客户端都用同一个地址,不要加认证头。已经有别的服务器时,只把 "ziwei" 这一段合并进去,不要整份覆盖。

Cursor 用户级写在 ~/.cursor/mcp.json,只给当前项目用就写在项目里的 .cursor/mcp.json:

Cursor
{
  "mcpServers": {
    "ziwei": {
      "url": "https://ziwei-mcp.x-haose.com/mcp"
    }
  }
}

Claude 比 Cursor 多一个 "type": "http"。Claude Code 写在项目根目录的 .mcp.json,或写进用户配置里的 mcpServers:

Claude
{
  "mcpServers": {
    "ziwei": {
      "type": "http",
      "url": "https://ziwei-mcp.x-haose.com/mcp"
    }
  }
}

Codex 写在 ~/.codex/config.toml,或用等价命令。不要加 bearer token,也不要跑 codex mcp login:

Codex
[mcp_servers.ziwei]
url = "https://ziwei-mcp.x-haose.com/mcp"
Codex
codex mcp add ziwei --url https://ziwei-mcp.x-haose.com/mcp

Grok 网页打开 grok.com/connectors,New Connector → Custom,URL 填上面的地址,认证留空。Grok Build 写进配置:

Grok
grok mcp add --transport http ziwei https://ziwei-mcp.x-haose.com/mcp

Cascade(Windsurf / Devin Desktop)的远程 HTTP 条目用 serverUrl:

Cascade
{
  "mcpServers": {
    "ziwei": {
      "serverUrl": "https://ziwei-mcp.x-haose.com/mcp"
    }
  }
}

没有 Skill 时

把下面这段贴进系统提示或自定义说明。它是插件 Skill 的精简版,完整版是仓库里的 SKILL.md。这只是默认做法,你可以改成自己的解读方法。

说明
你用紫微斗数工具解读命盘。盘由工具算,解读由你做。

先确认生辰:历法(公历或农历)、日期、性别、出生钟点或时辰。缺哪项问哪项,不猜。
钟点传 birth.clock(HH:MM);只知道时辰传 birth.time_index(0 早子,12 晚子)。23 点是 12,不是 0。
农历要确认是否闰月,传 birth.leap;不要自己换算公历农历。

工具:
- ziwei_get_natal_chart:完整本命盘。
- ziwei_get_horoscope:某个日期的大限、流年、流月、流日、流时;目标日期和时辰都要明确。
- ziwei_get_topic_palaces:知识包对某类问题(婚恋、事业、财运等)的取材。
- ziwei_list_knowledge / ziwei_lookup_knowledge:查知识包目录与条目原文。

回答时:
- 工具没返回的星、宫、四化、格局不写,不凭记忆补。
- 分清盘面事实、知识包释义(一种资料观点)和你自己的分析。
- 工具报错就说明错误,不编结果。
- 不断言寿命、疾病诊断或灾祸一定发生。

装上之后怎么说

不必背参数名。用白话说,模型自己去填。

你说模型调用
「帮我排个盘:公历 2000-8-16,凌晨 3 点半,女」ziwei_get_natal_chart
「看看我 2027 年 3 月 1 日中午的流年」ziwei_get_horoscope
「我的感情婚姻怎么样」ziwei_get_topic_palaces
「紫微和天府同宫是什么意思」ziwei_list_knowledge、ziwei_lookup_knowledge

工具交出来的是盘面事实和知识包原文,不是已经写好的「事业如何」。话是模型说的,数是工具算的。

别让模型自己安星

它算不准干支与安星,而且错得看不出来。盘只从工具来。 模型若开始凭记忆报星,让它重新调用工具。这条分工的展开说明见让 AI 解读命盘。

工具

工具返回
ziwei_get_natal_chart本命盘事实(Markdown):基本信息、十二宫、格局。可选只要总览,可选附知识包释义
ziwei_get_horoscope指定日期与时辰的大限、小限、流年、流月、流日、流时
ziwei_get_topic_palaces按知识包里的主题定义取本命宫位事实与释义。看哪些宫由知识包决定
ziwei_lookup_knowledge知识包条目原文:释义、古籍引文、成立条件、主题的选宫定义
ziwei_list_knowledge知识包目录:有哪些条目,名称对应什么标识

前三个工具共用一组出生参数,放在 birth 里:

最短入参
{
  "birth": {
    "date": "2000-8-16",
    "clock": "03:30",
    "gender": "female"
  }
}
字段必填取值
calendar否solar 公历(默认),lunar 农历
date是YYYY-M-D,如 2000-8-16,不含钟点
clock / time_index二选一clock 是 HH:MM;time_index 是整数 0–12,见下表
gender是male 或 female
leap否农历闰月:not_leap(默认)、leap、leap_fixed
fix_leap否默认 true,只对公历有意义
language否默认 zh-CN。另有 zh-TW en-US ja-JP ko-KR vi-VN

默认盘面语言是简体中文。给模型喂中文盘,比喂英文意译星名更稳,见让 AI 解读命盘。

各工具的其余参数、错误码,以及同一套功能的 HTTP JSON 接口,见 x-ziwei 的接口说明。

时辰

time_index 不是钟点。子时拆成首尾两段,所以是 0–12 共 13 个值。知道钟点时直接传 clock,不用自己换算。

索引时辰时间索引时辰时间
0早子时00:00–01:007未时13:00–15:00
1丑时01:00–03:008申时15:00–17:00
2寅时03:00–05:009酉时17:00–19:00
3卯时05:00–07:0010戌时19:00–21:00
4辰时07:00–09:0011亥时21:00–23:00
5巳时09:00–11:0012晚子时23:00–24:00
6午时11:00–13:00

晚上 11 点以后是 12,不是 0

23:00–24:00 出生要说「晚子时」或「23 点」,不要笼统说「子时」。 这两个索引排出的盘不同:默认配置下晚子时按次日推算日柱。 见 Config · 晚子时归属。

它不做什么

  • 不写命理结论。工具给的是盘面文字和知识包原文,解读是模型读完之后的事。
  • 不保存命盘,不缓存排盘结果,不需要账号。
  • 不接受模型自己安星、自己推干支。
  • 不替代把库嵌进你自己的产品。那条路仍是装 Rust / Python / Go,见快速开始和让 AI 解读命盘。

本页目录