Token导航 LogoToken导航TokenDH.com
Celestial MCP logo
AI代理stdio官方级别未说明来源级核验

Celestial MCP

MCP Server

CelestialMCP是一个为AI助手设计的模型上下文协议服务器,提供访问天体数据(如天体位置、升起/落下时间、可见性和目录信息)的工具。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptClaudeAI代理Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Rkm1999

提供方

Rkm1999

最后核验

2026/5/17 20:32

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

CelestialMCP

为Claude等AI助手设计的模型上下文协议(MCP)服务器。它提供了访问天文数据的工具,如天体位置、上升/设定时间、能见度和目录信息。

概述

CelestialMCP使用mcp框架构建,并利用天文学引擎库提供精确的天文计算。它提供了几种工具来确定天体的位置,计算它们的上升和设定时间,并列出恒星和深空天体目录中的可用天体。

特性

  • 实时天体数据:访问各种天体的当前天文数据。
  • 综合对象详细信息:检索赤道和水平(高度/方位角)坐标、能见度状态、上升/过境/设定时间。
  • 专业数据:对于相关物体,获取距离(太阳系物体)、相位照明(月球和行星)和即将到来的月相(月球)。
  • 广泛的目录:利用本地目录:

- 太阳系天体(太阳、月球、行星)。 - 恒星(例如,来自HYG数据库)。 - 深空天体(DSO),包括梅西耶、NGC和IC天体。

  • 可配置观察器:所有计算均基于预先配置的观察者位置(默认值:加拿大温哥华)和当前系统时间。
  • 轻松目录更新:包括一个下载和更新综合天文目录的脚本。

工具

服务器为AI提供了三个主要工具:

  1. getCelestialDetails:检索特定天体的详细天文信息。
  2. listCelestialObjects:列出系统已知的可用天体,可按类别过滤。
  3. getStarHoppingPath:计算从明亮的起始恒星到目标天体的跳星路径。

设置和安装

先决条件

  • Node.js(版本>=18.19.0,如中所述 package.json)
  • npm(通常随Node.js一起提供)

步骤

  1. 克隆存储库(如果您还没有):
   git clone https://github.com/Rkm1999/CelestialMCP
   cd CelestialMCP
  1. 安装依赖项:
   npm install
  1. 下载天文目录:

这一步对于访问各种恒星和深空物体至关重要。

   npm run fetch-catalogs

此脚本将HYG恒星数据库和OpenNGC(新通用目录)深空天体目录下载到 data/ 目录。如果未下载这些文件,应用程序将尝试使用 sample_stars.csvsample_dso.csvdata/ 目录(如果存在)。如果找不到目录文件,则相应的目录将为空。

  1. 构建项目:

这将TypeScript代码编译为JavaScript。

   npm run build
  1. 启动服务器:
   npm start

MCP服务器将启动,连接的AI助手将可以使用这些工具。

与Claude Desktop一起使用

要将CelestialMCP与Claude Desktop一起用于本地开发,请将以下配置添加到您的Claude Desktop配置文件中:

# Install dependencies
npm install

# Fetch star and deep sky object catalogs (IMPORTANT!)
npm run fetch-catalogs

# Build the project
npm run build

# Start the server
npm start

Windows:%APPDATA%/Claude/Claude_desktop_config json MacOS:~/库/应用程序支持/Claude/Claude_desktop_config json

{ “mcpServers”:{ “CelestialMCP”:{ “command”:“node”,//或者您的节点可执行路径 “args”:\[“/aolutel/path/to/your/CelestialMCP/project/dist/index.js”\]//替换为实际的绝对路径 } } }

目录数据

npm run fetch-catalogs 脚本下载:

  • hygdata_v41.csv:HYG恒星数据库(约120000颗恒星)。
  • ngc.csv:OpenNGC目录(约14000个深空天体)。

这些文件存储在 data/ 目录。如果找不到这些主目录文件,应用程序将尝试加载 sample_stars.csvsample_dso.csv 如果它们存在于 data/ 目录。对于全面的数据,运行 npm run fetch-catalogs 强烈推荐。

工具使用

这些工具执行的所有天文计算都使用 预先配置的观察者位置 (参见 src/config.ts)以及 当前系统时间 当提出请求时。

1. getCelestialDetails

目的: 检索特定天体的全面天文数据。这包括其当前位置(赤道和水平坐标)、能见度(例如,地平线以上/以下、能见度质量)、当天的上升/过境/设定时间,以及相关物体与地球的距离、照明相位和即将到来的月相(月球)。

参数:

  • objectName (string):天体的名称或目录标识符。该工具可以将常见名称(例如“仙女座星系”)解析为它们的目录ID(例如“M31”)。

*示例:“火星”、“天狼星”、“M42”、“NGC 253”、“猎户座星云”、“月球”、“太阳”*

克劳德提示示例:

  • “从配置的位置获取木星的详细信息。”
  • “月球的当前坐标是多少?”
  • “告诉我织女星的情况,包括它的升起和今天的设定时间。”
  • “今晚可以看到漩涡星系(M51)吗?”
  • “显示有关太阳当前位置和升起/落下时间的信息。”

2. listCelestialObjects

目的: 列出系统已知的天体,然后可以使用查询 getCelestialDetails。对象可以按类别过滤。这有助于发现哪些对象可用于查询。

参数:

  • category (字符串,可选):按特定类别筛选对象列表。如果省略,则默认为“全部”。有效类别包括:

- planets:太阳系天体(太阳、月亮、水星、金星、火星、木星、土星、天王星、海王星、冥王星)。 - stars:命名或编目的恒星。 - messier:梅西耶星表中的天体(如M1、M31)。 - ic:索引目录中的对象(例如IC 434)。 - ngc:新总表中的天体(如NGC 7000)。 - dso:所有深空天体(结合梅西耶、IC、NGC和其他DSO,如这些特定目录中没有的普通命名星云或星系(如果有的话))。 - all:所有类别中的所有可用对象(默认)。

克劳德提示示例:

  • “列出所有可用的梅西耶天体。”
  • “我可以获得哪些行星的信息?”
  • “给我看一些明亮的星星,我可以用它仰望 stars 类别。"
  • “列出目录中的所有NGC对象。”
  • “什么深空物体(dso)有空吗?"
  • “你能列出系统已知的所有对象吗?”

3. getStarHoppingPath

目的: 计算从明亮的起始恒星到目标天体的跳星路径。每一跳都在指定的视场(FOV)内。该工具通过从一颗可识别的恒星“跳跃”到另一颗恒星,帮助观察者手动定位较暗的物体。

参数:

  • targetObjectName (string):要查找的天体的名称或目录标识符。

*示例:“M13”、“仙女座星系”、“火星”、“NGC 7000”*

  • fovDegrees (数字,正):用户设备(如双筒望远镜、望远镜目镜)的视场(FOV),单位为度。

*示例:5.0*

  • maxHopMagnitude (数字,可选,默认值:8.0):跳跃路径中包含的恒星的最大(最暗)恒星星等。较亮的恒星具有较低的星等值。

*示例:7.5*

  • initialSearchRadiusDegrees (数字,正数,可选,默认值:20.0):目标对象周围的角半径(以度为单位),用于搜索合适的明亮起始恒星。

*示例:25.0*

  • startStarMagnitudeThreshold (数字,可选,默认值:3.5):恒星在跳跃序列中被视为良好、明亮的“起始恒星”的最大(最暗)星等。

*示例:4.0*

克劳德提示示例:

  • “找到一条5度视场的M13跳星路径。”
  • “你能用8x50双筒望远镜(FOV约6度)和不小于7等的恒星给我一个到环形星云(M57)的恒星跳跃序列吗?”
  • 我需要找到NGC 253。我的望远镜有1度的视野。在距离目标20度以内,找到一条从比3等亮的恒星开始的路径。"
  • “假设视场为2度,最大跳星等为8.5,则生成一个关于Sombrero星系的跳星指南。”

项目结构

CelestialMCP/
├── src/
│   ├── tools/                      # MCP Tools provided to the AI
│   │   ├── CelestialDetailsTool.ts   # Tool to get detailed info for an object
│   │   ├── ListCelestialObjectsTool.ts # Tool to list available objects
│   │   └── StarHoppingTool.ts        # Tool to calculate star hopping paths
│   ├── utils/                      # Utility functions
│   │   └── astronomy.ts            # Core astronomy calculations and catalog loading
│   ├── config.ts                   # Observer's location and atmospheric conditions configuration
│   └── index.ts                    # MCP Server entry point
├── scripts/
│   └── fetch-catalogs.js           # Script to download astronomical catalogs
├── data/                           # Directory for catalog data files (e.g., hygdata_v41.csv, ngc.csv)
│   ├── README.md                   # Information about data files
│   ├── sample_dso.csv            # Sample DSO data if full catalog isn't downloaded
│   └── sample_stars.csv          # Sample star data if full catalog isn't downloaded
├── package.json
└── tsconfig.json

默认配置

默认情况下,观察者的位置设置为加拿大温哥华。您可以在中更改此设置 src/config.ts: 此配置用于所有计算,除非工具特别允许覆盖它(当前工具不允许)。

export const OBSERVER_CONFIG = {
  latitude: 49.2827,    // Observer latitude
  longitude: -123.1207, // Observer longitude
  altitude: 30,         // Observer altitude in meters
  temperature: 15,      // Default temperature in Celsius
  pressure: 1013.25     // Default pressure in hPa
};

许可证

麻省理工学院

致谢

  • 天文发动机 用于核心天文计算
  • mcp框架 用于MCP服务器实现
  • HYG恒星数据数据库
  • OpenNGC获取深空天体数据

目录标签

目录标签

TypeScriptClaudeAI代理天文数据本地部署AI助手天体计算星图导航天文目录

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiononelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP