使用说明
农历MCP服务器
中文 | 英语 | 语言选择/Language
一个用于中国传统日历函数的模型上下文协议(MCP)服务器,使用Python 3.12和lunar Python构建。
特性
🎋 八子计算 -计算算命的八个字符
📅 日历转换 -在阳历和阴历之间转换
🌙 黄梨查询 -每日推荐的中国年历
🔮 《每日财富》 -每日财富和推荐
⭐ 节气 -查询任意年份的24个节气
🧮 吴星分析 -出生信息五要素分析
安装
先决条件
- Python 3.12+
- uv包管理器
设置
- 克隆存储库:
git clone <repository-url>
cd lunar-mcp-server
- 安装uv(如果尚未安装):
curl -LsSf https://astral.sh/uv/install.sh | sh
- 安装具有依赖关系的项目:
uv sync
这将自动:
- 使用Python 3.12创建虚拟环境
- 从pyproject.toml安装所有依赖项
- 为可复制的构建生成uv.lock
用法
作为MCP服务器
在MCP客户端(例如Claude Desktop)中配置:
{
"mcpServers": {
"lunar-calendar": {
"command": "uv",
"args": ["run", "python", "-m", "src.server"],
"cwd": "/path/to/lunar-mcp-server"
}
}
}
直接使用
您也可以直接使用辅助函数:
# Run with uv
uv run python -c "
from src.utils import LunarHelper
result = LunarHelper.solar_to_lunar(2024, 1, 1)
print(result['lunar_date_chinese']) # 二〇二三年冬月二十
"
# Calculate BaZi
uv run python -c "
from src.utils import LunarHelper
result = LunarHelper.get_bazi(1990, 1, 1, 8, 30)
print(result['bazi_string']) # 己巳 丙子 丙寅 壬辰
"
可用工具
1.bazi_compute
计算八字算命。
参数:
birth_date:YYYY-MM-DD格式的出生日期birth_time:出生时间,HH:MM格式
例子:
{
"birth_date": "1990-01-01",
"birth_time": "08:30"
}
2.日历_转换
在阳历和阴历之间转换。
参数:
date:YYYY-MM-DD格式的日期convert_to:“月球”或“太阳”is_leap:是闰月(可选)
例子:
{
"date": "2024-01-01",
"convert_to": "lunar"
}
3.黄力_查询
查询特定日期的中文年历信息。
参数:
date:YYYY-MM-DD格式的日期
例子:
{
"date": "2024-01-01"
}
4.幸运日
获取每日财富和推荐。
参数:
date:YYYY-MM-DD格式的日期
例子:
{
"date": "2024-01-01"
}
5.解气_查询
查询特定年份的24个节气。
参数:
year:要查询的年份
例子:
{
"year": 2024
}
6.五星分析
从出生信息分析五行。
参数:
birth_date:YYYY-MM-DD格式的出生日期birth_time:出生时间,HH:MM格式
例子:
{
"birth_date": "1990-01-01",
"birth_time": "08:30"
}
发展
运行测试
# Quick functionality test
uv run python quick_test.py
# Run MCP server
uv run python run_server.py
# Test specific functionality
uv run python -c "from src.utils import LunarHelper; print('✅ Import works!')"
# Install dev dependencies (optional)
uv add --dev pytest black mypy
代码格式化
# Format code
black src/
isort src/
# Type checking
mypy src/
依赖项
- 主控程序:模型上下文协议实现
- 月球蟒蛇:中国农历图书馆
- 媒染剂:数据验证和设置管理
贡献
- 分叉存储库
- 创建功能分支
- 提交您的更改
- 推到分支
- 创建拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
致谢
注: 这是一个用于教育和娱乐目的的传统日历工具。请负责任地使用。