关于 Swiss Ephemeris
Swiss Ephemeris 是基于 Swiss Ephemeris 库进行天文与占星计算的 MCP 服务,适合需要指定日期和地点的行星位置、星盘、行运、太阳回归或合盘数据的用户与 Agent。
主要功能
- 01行星与小行星位置
- 02Placidus 十二宫计算
- 03星盘点与月交点
- 04本命盘与当前行运比较
- 05太阳回归盘与合盘
适用场景
- 01计算指定日期和地点的星体位置
- 02比较本命盘与当前行运
- 03生成指定年份的太阳回归盘
- 04比较两人的出生星盘
MCP 相关
向 MCP 客户端提供行星位置、行运、太阳回归和合盘四种计算工具,支持 STDIO 与 HTTP 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Swiss Ephemeris MCP 服务
一个使用 Swiss Ephemeris 库进行天文计算的模型上下文协议(MCP)服务。可针对任意日期和地点计算行星位置、宫位、星盘点和小行星。
功能
- 行星位置:太阳、月亮、水星、金星、火星、木星、土星、天王星、海王星、冥王星
- 月交点:真交点和平均交点计算
- 小行星:凯龙星、谷神星、智神星、婚神星、灶神星、莉莉丝
- 宫位:使用 Placidus 制的 12 宫系统
- 星盘点:上升点、天顶、天底、下降点
- 其他点:南交点、福点
安装
本地开发的先决条件
若要在本地与 Claude Desktop 搭配使用,需安装 Swiss Ephemeris swetest 命令:
# Install swetest (required for Claude Desktop usage)
git clone https://github.com/aloistr/swisseph.git /tmp/swisseph && \
cd /tmp/swisseph && \
make && \
cp swetest /usr/local/bin/ && \
rm -rf /tmp/swisseph
Claude Desktop
将以下内容添加到 Claude Desktop 配置中:
{
"mcpServers": {
"swissEphemeris": {
"command": "npx",
"args": ["github:dm0lz/swiss-ephemeris-mcp-server"]
}
}
}
手动安装
git clone https://github.com/dm0lz/swiss-ephemeris-mcp-server.git
cd swiss-ephemeris-mcp-server
npm install
npm start
用法
该服务提供四种主要工具:
calculate_planetary_positions
计算特定日期、时间和地点的天文数据。
参数:
datetime(字符串):ISO8601 格式,例如 "1985-04-12T23:20:50Z"latitude(数字):纬度,十进制度数(-90 至 90)longitude(数字):经度,十进制度数(-180 至 180)
返回:
planets:所有行星和天体的位置houses:12 个占星宫位chart_points:上升点、天顶、天底、下降点additional_points:南交点、福点
calculate_transits
计算出生星盘位置和当前行运,以供比较。
参数:
birth_datetime(字符串):ISO8601 格式的出生日期时间latitude(数字):出生地点纬度,十进制度数longitude(数字):出生地点经度,十进制度数
返回:
natal_chart:完整的出生星盘数据current_transits:当前行星位置calculation_time:行运计算的时间戳
calculate_solar_revolution
计算指定年份的太阳回归星盘(太阳回到本命位置时)。
参数:
birth_datetime(字符串):ISO8601 格式的出生日期时间birth_latitude(数字):出生地点纬度,十进制度数birth_longitude(数字):出生地点经度,十进制度数return_year(数字):太阳回归计算的年份(例如 2024)return_latitude(数字,可选):太阳回归地点的纬度return_longitude(数字,可选):太阳回归地点的经度
返回:
natal_chart:原始出生星盘数据solar_return_chart:指定年份的太阳回归星盘natal_sun_longitude:太阳的原始位置(度)return_sun_longitude:太阳回归时的位置(度)calculation_time:计算时间的时间戳
calculate_synastry
计算两个人之间的比较星盘,用于关系合盘分析。
参数:
person1_datetime(字符串):Person 1 的 ISO8601 格式出生日期时间person1_latitude(数字):Person 1 出生地点纬度,十进制度数person1_longitude(数字):Person 1 出生地点经度,十进制度数person2_datetime(字符串):Person 2 的 ISO8601 格式出生日期时间person2_latitude(数字):Person 2 出生地点纬度,十进制度数person2_longitude(数字):Person 2 出生地点经度,十进制度数
返回:
person1_chart:Person 1 的完整出生星盘person2_chart:Person 2 的完整出生星盘synastry_aspects:两个星盘之间行星相位的数组calculation_time:计算时间的时间戳
Docker
# Build and run
docker build -t swiss-ephemeris-mcp .
docker run -p 8000:8000 -e MCP_HTTP_MODE=true swiss-ephemeris-mcp
# Health check
curl http://localhost:8000/health
传输模式
- Stdio:与 Claude Desktop 集成的默认模式
- HTTP:设置
MCP_HTTP_MODE=true,通过 ngrok 进行 Web 集成
链接
- MCP URL:https://www.theme-astral.me/mcp
- 代码仓库:https://github.com/dm0lz/swiss-ephemeris-mcp-server
- Swiss Ephemeris:https://www.astro.com/swisseph/
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。