Performs satellite orbital mechanics calculations using natural language, with a built-in world cities database for location lookup.
A comprehensive Model Context Protocol (MCP) server for satellite orbital mechanics calculations with natural language processing capabilities.
git clone cd mcp-orbit
make docker-build
make docker-run
make install
make run
The server communicates via JSON-RPC 2.0 over stdio. Here are the connection methods:
Add to your Claude Desktop MCP configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{ "mcpServers": { "satellite-mcp-server": { "command": "docker", "args": ["run", "--rm", "-i", "satellite-mcp-server:latest"] } } }
docker run -it --rm satellite-mcp-server:latest
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' |
docker run --rm -i satellite-mcp-server:latest
python -m src.mcp_server
User Prompt:
"When will the ISS be visible from London tomorrow?"
MCP Tool Call:
{ "tool": "calculate_access_windows_by_city", "arguments": { "city_name": "London", "tle_line1": "1 25544U 98067A 24001.50000000 .00001234 00000-0 12345-4 0 9999", "tle_line2": "2 25544 51.6400 123.4567 0001234 12.3456 347.6543 15.49011999123456", "start_time": "2024-01-02T00:00:00Z", "end_time": "2024-01-03T00:00:00Z" } }
**Response:**The ISS will be visible from London 4 times tomorrow, with the best pass at 19:45 UTC reaching 78° elevation in the southwest sky during civil twilight.
User Prompt:
"Create a sun-synchronous satellite at 700km altitude and show me when it passes over Tokyo."
MCP Tool Calls:
{ "tool": "parse_orbital_elements", "arguments": { "orbital_text": "sun-synchronous satellite at 700km altitude" } }
{ "tool": "calculate_access_windows_from_orbital_elements_by_city", "arguments": { "orbital_text": "sun-synchronous satellite at 700km altitude", "city_name": "Tokyo", "start_time": "2024-01-01T00:00:00Z", "end_time": "2024-01-02T00:00:00Z" } }
**Response:**Generated SSO satellite (98.16° inclination, 98.6 min period) with 14 passes over Tokyo in 24 hours, including 6 daylight passes and 8 during various twilight conditions.
User Prompt:
"I have a CSV file with ground stations and want to analyze coverage for multiple satellites."
{ "tool": "calculate_bulk_access_windows", "arguments": { "locations_csv": "name,latitude,longitude,altitude\nMIT,42.3601,-71.0589,43\nCaltechm,34.1377,-118.1253,237", "satellites_csv": "name,tle_line1,tle_line2\nISS,1 25544U...,2 25544...\nHubble,1 20580U...,2 20580...", "start_time": "2024-01-01T00:00:00Z", "end_time": "2024-01-02T00:00:00Z" } }
calculate_access_windows
- Basic satellite visibility calculationscalculate_access_windows_by_city
- City-based satellite passescalculate_bulk_access_windows
- Multi-satellite/location analysisparse_orbital_elements
- Natural language orbital parameter parsingcalculate_access_windows_from_orbital_elements
- Access windows from orbital textcalculate_access_windows_from_orbital_elements_by_city
- Combined orbital elements + city lookupsearch_cities
- Find cities in the world databasevalidate_tle
- Validate Two-Line Element dataget_orbit_types
- Available orbit type definitions/
āāā src/
ā āāā mcp_server.py # MCP server implementation
ā āāā satellite_calc.py # Core orbital mechanics calculations
ā āāā world_cities.py # World cities database
āāā docs/ # Documentation
āāā Dockerfile # Container definition
āāā docker-compose.yml # Multi-container setup
āāā Makefile # Build automation
This is a specialized MCP server for satellite orbital mechanics. For issues or enhancements, please check the documentation in the docs/
directory.
[Add your license information here]
A high-performance trading system for Claude Desktop, providing real-time market data via Tiingo and optional Telegram alerts.
Provides emotional support and positive reinforcement for LLMs, with customizable therapeutic personas.
Provides weather data using the Open-Meteo API.
PiAPI MCP server makes user able to generate media content with Midjourney/Flux/Kling/Hunyuan/Udio/Trellis directly from Claude or any other MCP-compatible apps.
A server for creating fast and free lipsync videos for digital avatars, supporting both realistic and cartoon styles.
A philosophical reasoning system combining OpenEnded Philosophy with the Non-Axiomatic Reasoning System (NARS) for advanced analysis and synthesis.
Connects Large Language Models (LLMs) with Guild Wars 2 data sources. Requires a Guild Wars 2 API key for wallet functionality.
A damage and status calculator for Pokemon Generation 3.
Provides real-time system information and metrics, including CPU, memory, disk, network, and process status.
FastAPI and MCP service providing Islamic prayer times and other useful calculations.