卡西尼-惠更斯MCP服务器
一个模型上下文协议(MCP)服务器,为AI助手提供对卡西尼-惠更斯太空任务61874个任务计划条目的访问。
特性
- MCP协议支持:充分落实资源、提示和工具
- RESTful API:9个用于访问任务数据的HTTP端点
- SQLite数据库2004年至2017年,共有61874个任务计划条目
- 综合测试:29个单元和集成测试
- 全部文件:API文档、MCP集成指南和模型参考
快速开始
安装
npm install运行REST API服务器
npm start服务器在上运行 http://localhost:3000
运行MCP服务器
npm run mcp运行测试
npm testREST API使用
健康检查
curl http://localhost:3000/health获取任务计划条目
# Get first 10 entries
curl "http://localhost:3000/api/mission-plan?limit=10"
# Filter by team
curl "http://localhost:3000/api/mission-plan?team=CAPS&limit=5"
# Get by ID
curl http://localhost:3000/api/mission-plan/2搜索
curl "http://localhost:3000/api/mission-plan/search/text?q=Saturn&limit=5"元数据
# Get all teams
curl http://localhost:3000/api/metadata/teams
# Get statistics
curl http://localhost:3000/api/metadata/statsMCP集成
配置
添加到您的MCP客户端配置中(例如,Claude Desktop):
{
"mcpServers": {
"cassini-huygens": {
"command": "node",
"args": ["/path/to/mcp-project10/mcp-server.js"]
}
}
}MCP能力
资源(4):
cassini://mission-plan/all-所有任务条目cassini://metadata/teams-团队列表cassini://metadata/targets-目标列表cassini://metadata/stats-统计数据
提示(3):
mission-summary-筛选活动摘要activity-details-具体活动信息search-activities-关键字搜索
工具(4):
get-mission-plan-使用筛选器进行查询get-activity-by-id-按ID获取search-activities-文本搜索get-metadata-获取元数据
项目结构
.
├── data/
│ └── master_plan.db # SQLite database (61,874 entries)
├── docs/
│ ├── api-endpoints.md # API documentation
│ ├── database-schema.md # Database schema
│ ├── mcp-integration.md # MCP guide
│ ├── models-api.md # Model reference
│ └── logs/ # Session logs
├── lib/
│ ├── middleware/
│ │ ├── errorHandler.js # Error handling
│ │ └── validation.js # Request validation
│ ├── models/
│ │ └── MasterPlan.js # Data model
│ ├── routes/
│ │ ├── metadata.js # Metadata routes
│ │ └── missionPlan.js # Mission plan routes
│ └── services/
│ ├── database.js # Database service
│ └── mcpServer.js # MCP server
├── tests/
│ ├── api/
│ │ └── endpoints.test.js # API integration tests
│ └── models/
│ └── MasterPlan.test.js # Model unit tests
├── mcp-server.js # MCP entry point
├── server.js # REST API entry point
└── package.json数据库
统计
- 条目总数: 61,874
- 团队:15(CAPS、CDA、CIRS、INMS、ISS、MAG、MIMI、MP、探测器、雷达、RPWS、RSS、UVIS、vim)
- 目标:47(土星、土卫六、土卫二等)
- SPASS类型: 6
- 日期范围: 2004-2017
模式
CREATE TABLE master_plan (
id INTEGER PRIMARY KEY AUTOINCREMENT,
start_time_utc TEXT NOT NULL,
duration TEXT,
date TEXT,
team TEXT,
spass_type TEXT,
target TEXT,
request_name TEXT,
library_definition TEXT,
title TEXT,
description TEXT
);API终点
核心终点
GET /-服务信息GET /health-健康检查
任务计划
GET /api/mission-plan-列出条目(带过滤器)GET /api/mission-plan/:id-按ID获取GET /api/mission-plan/search/text-文本搜索
元数据
GET /api/metadata/teams-列出团队GET /api/metadata/targets-列出目标GET /api/metadata/spass-types-列出SPASS类型GET /api/metadata/stats-获取统计数据
测试
运行测试套件:
npm test测试覆盖率:
- 12个模型单元测试
- 17 API集成测试
- 共29项测试通过
发展
需求
- Node.js 14+
- npm 6+
依赖项
express-Web框架sqlite3-数据库驱动程序@modelcontextprotocol/sdk-MCP实施
开发依赖关系
jest-测试框架supertest-API测试
脚本
npm start-启动REST API服务器npm run mcp-启动MCP服务器npm test-运行测试
文档
任务信息
卡西尼-惠更斯号任务是美国国家航空航天局/欧洲航天局/美国航天局的联合任务,旨在探索土星及其卫星。它于1997年推出,从2004年到2017年运行,为土星系统提供了前所未有的见解。
主要成就:
- 在土卫二上发现液态水
- 惠更斯号探测器在土卫六上着陆
- 详细研究了土星环
- 泰坦上观测到的季节变化
- 已完成294次土星轨道运行
许可证
ISC
贡献
该项目是使用详细的会话日志迭代开发的,可在 docs/logs/.
支持
有关问题或疑问,请参阅 docs/ 目录。
