ai.smithery/minionszyw-bazi
Generate BaZi charts from birth details. Explore Four Pillars, solar terms, and Luck Pillars for d…
★ 2No licenseai-ml
Install
Config snippet generator goes here (5 client tabs)
README
# 八字排盘工具
这是一个基于Python的八字辅助工具,可以计算八字、节气信息和大运信息。
## 功能特性
- 八字计算(年柱、月柱、日柱、时柱)
- 真太阳时校正
- 节气信息计算
- 大运信息计算
- 农历转换
- 农历出生时间显示为真太阳时校正后的时间
## 安装依赖
```bash
pip install -r requirements.txt
```
### 直接运行
```bash
python mcp_server.py
```
默认情况下,服务将在 `http://localhost:8001/mcp` 上运行。
## 启动MCP服务
### 使用Docker(推荐)
```bash
docker-compose up --build
```
默认情况下,服务将在 `http://localhost:8001/mcp` 上运行。
如果从宿主机访问Docker容器中的服务,使用以下地址:
- Windows/Linux/macOS: `http://host.docker.internal:8001/mcp`
### MCP客户端调用
MCP服务提供了一个名为 `bazi` 的工具,可以计算八字信息。该工具接受以下参数:
- `name` (str): 姓名
- `gender` (str): 性别 ('男' 或 '女')
- `calendar` (str): 日历类型 ('公历' 或 '农历')
- `year` (int): 出生年份
- `month` (int): 出生月份
- `day` (int): 出生日期
- `hour` (int): 出生小时 (0-23)
- `minute` (int): 出生分钟 (0-59)
- `birth_city` (str): 出生城市
- `current_city` (str, 可选): 当前居住城市
## 项目结构
```
bazi/
├── mcp_server.py # MCP服务端
├── bazi_tool.py # 八字计算工具
├── query_longitude.py # 查询经度
├── region.json # 城市经纬度数据
├── README.md # 项目说明
```
## 示例输出
```
=== 张三的八字信息 ===
姓名:张三
性别:男 (乾造)
出生时间:
公历:[年份]年[月份]月[日期]日[小时]:[分钟]
农历:[年份]年[月份]月[日期]日[小时]:[分钟] (非闰月)
出生城市:[城市名]([经度]°E)
现居城市:[城市名]
八字信息:[年柱] [月柱] [日柱] [时柱]
节气信息:生于[节气1]节气后[天数]天,[节气2]节气前[天数]天
大运信息:[阴阳]男,[顺排/逆排],起运时间[年数]年[月数]月,[起运年龄]岁起运
```