紫微斗数 MCP 服务器 (MCPIztro)
A Model Context Protocol server that provides accurate Chinese Ziwei Doushu astrology chart calculations and horoscope analysis, enabling AI assistants to generate personalized astrological readings through natural language queries.
README
紫微斗数 MCP 服务器
一个基于 Model Context Protocol (MCP) 的紫微斗数计算服务器,使用强大的 iztro 库提供精确的紫微斗数排盘和运限分析功能。
✨ 功能特性
- 🌟 完整的紫微斗数排盘 - 支持阳历和农历生日计算
- 📅 精确的时间处理 - 获取当前系统时间和详细信息
- 🔮 运限分析 - 大限、流年等运势分析
- 🌐 多语言支持 - 简体中文、繁体中文、英文、日文、韩文、越南文
- 🔄 MCP 协议兼容 - 可与支持 MCP 的 AI 助手无缝集成
- ⚡ 轻量高效 - 基于 Node.js,响应快速
- 📊 结构化数据 - 返回完整的 JSON 格式星盘数据
🛠️ 技术栈
- Node.js (≥18.0.0) - 运行环境
- iztro (v2.5.3) - 紫微斗数核心计算库
- MCP Protocol (2024-11-05) - 模型上下文协议
📦 安装
前置要求
- Node.js 18.0.0 或更高版本
- npm 包管理器
克隆仓库
git clone https://github.com/wuunicorn/MCPIztro.git
cd MCPIztro
安装依赖
npm install
⚙️ 配置
1. 创建配置文件
将 ziwei_mcp_config.json 中的路径修改为您的实际项目路径:
{
"mcpServers": {
"ziwei": {
"command": "node",
"args": ["/path/to/your/project/ziwei_mcp_server.js"],
"env": {
"NODE_PATH": "/path/to/your/project/node_modules"
}
}
}
}
2. 在 MCP 客户端中配置
将配置文件内容添加到您的 MCP 客户端配置中(如 Claude Desktop、Cursor 等)。
🚀 使用方法
直接启动服务器
npm start
# 或
node ziwei_mcp_server.js
运行测试
npm test
# 或
node test_ziwei.js
📖 API 文档
服务器提供以下三个主要工具:
1. get_current_time
获取当前系统时间的详细信息。
参数: 无
返回:
{
"success": true,
"data": {
"year": 2024,
"month": 8,
"day": 1,
"hour": 15,
"minute": 30,
"second": 45,
"datetime_str": "2024-08-01 15:30:45",
"weekday": "Thursday",
"weekday_cn": "星期四",
"timestamp": 1722513045
}
}
2. calculate_ziwei
计算指定生辰的紫微斗数星盘。
参数:
birthday(必需): 生日,格式 YYYY-MM-DDhour(可选): 出生时辰 (0-23),默认 0gender(可选): 性别 ("男"/"女"),默认 "男"type(可选): 日期类型 ("solar"/"lunar"),默认 "solar"isLeapMonth(可选): 是否闰月,默认 falselanguage(可选): 语言设置,默认 "zh-CN"
示例请求:
{
"birthday": "1990-08-16",
"hour": 14,
"gender": "女",
"type": "solar",
"language": "zh-CN"
}
返回: 完整的星盘数据,包含十二宫信息、星耀分布、亮度等。
3. get_horoscope
获取指定生辰在特定时间的运限信息。
参数:
birthday(必需): 生日,格式 YYYY-MM-DDhour(可选): 出生时辰 (0-23),默认 0gender(可选): 性别 ("男"/"女"),默认 "男"type(可选): 日期类型 ("solar"/"lunar"),默认 "solar"isLeapMonth(可选): 是否闰月,默认 falsetargetDate(可选): 目标日期,格式 YYYY-MM-DD,默认当前日期language(可选): 语言设置,默认 "zh-CN"
返回: 运限信息,包含大限、流年、年龄等数据。
🌐 支持的语言
| 语言代码 | 语言名称 |
|---|---|
| zh-CN | 简体中文 |
| zh-TW | 繁体中文 |
| en-US | 英语 |
| ja-JP | 日语 |
| ko-KR | 韩语 |
| vi-VN | 越南语 |
📝 使用示例
在 MCP 客户端中使用
配置完成后,您可以在支持 MCP 的客户端中直接使用自然语言查询:
请帮我排一个1990年8月16日下午2点出生的女性的紫微斗数星盘
我想看看这个人在2024年的运势如何
直接 API 调用
# 获取当前时间
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "get_current_time", "arguments": {}}}' | node ziwei_mcp_server.js
# 计算星盘
echo '{"jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": {"name": "calculate_ziwei", "arguments": {"birthday": "1990-08-16", "hour": 14, "gender": "女"}}}' | node ziwei_mcp_server.js
🏗️ 项目结构
MCPIztro/
├── README.md # 项目介绍文档
├── package.json # 项目配置和依赖
├── package-lock.json # 依赖锁定文件
├── ziwei_mcp_server.js # MCP 服务器主程序
├── ziwei_mcp_config.json # MCP 配置文件模板
├── test_ziwei.js # 测试脚本
└── node_modules/ # 依赖包目录
🔧 开发
测试服务器功能
node test_ziwei.js
检查语法
node -c ziwei_mcp_server.js
验证依赖
node -e "import { astro } from 'iztro'; console.log('依赖加载成功');"
🤝 贡献
欢迎提交 Issue 和 Pull Request!
- Fork 本仓库
- 创建您的特性分支 (
git checkout -b feature/AmazingFeature) - 提交您的修改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 打开一个 Pull Request
📄 许可证
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
🙏 致谢
- iztro - 提供强大的紫微斗数计算能力
- Model Context Protocol - 提供标准化的协议支持
📞 联系
如果您有任何问题或建议,请通过以下方式联系:
- 提交 Issue
- 发送邮件到:wuunicorn@gmail.com
注意: 紫微斗数仅供参考和娱乐,请理性对待运势分析结果。
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。