Satellite Tracking MCP Server

Integrations

  • Runs as a Node.js application, leveraging the Node.js runtime to provide satellite tracking functionality.

  • Enables searching and tracking Planet satellites through the N2YO API and integration with the satellite category system.

  • Provides access to Radar category satellites through the N2YO API's categorization system.

Satellite Tracking MCP Server

A Model Context Protocol (MCP) server that provides access to satellite tracking data using the N2YO API.

Features

This MCP server provides the following capabilities:

Tools

  • get_satellite_position: Get real-time position of a satellite by NORAD ID
  • get_satellite_tle: Get TLE (Two-Line Element) data for a satellite by NORAD ID
  • predict_visual_passes: Predict visible passes of a satellite over a location
  • predict_radio_passes: Predict radio frequency passes of a satellite over a location
  • get_satellites_above: Get satellites currently above a specified location
  • search_satellites: Search for satellites by name or category

Resources

  • satellite://{norad_id}: Information about a satellite by NORAD ID
  • satellites://category/{category_id}: List of satellites in a specific category
  • satellites://above/{lat}/{lon}/{radius}: List of satellites above a specified location

Installation

Prerequisites

Setup

  1. Clone this repository or download the source code
  2. Install dependencies:
cd satellite-tracking-server npm install
  1. Build the server:
npm run build

Configuration

The server requires a N2YO API key to function. You can provide this through the environment variable N2YO_API_KEY.

MCP Settings Configuration

To use this server with Claude, add it to your MCP settings configuration file:

For Claude Desktop App (macOS)

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{ "mcpServers": { "satellite-tracking": { "command": "node", "args": ["/path/to/satellite-tracking-server/build/index.js"], "env": { "N2YO_API_KEY": "your-api-key-here" }, "disabled": false, "autoApprove": [] } } }
For Claude VSCode Extension

Edit ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

{ "mcpServers": { "satellite-tracking": { "command": "node", "args": ["/path/to/satellite-tracking-server/build/index.js"], "env": { "N2YO_API_KEY": "your-api-key-here" }, "disabled": false, "autoApprove": [] } } }

Usage Examples

Once the server is configured and running, you can use it with Claude to access satellite tracking data:

Get Satellite Position

<use_mcp_tool> <server_name>satellite-tracking</server_name> <tool_name>get_satellite_position</tool_name> <arguments> { "norad_id": 25544, "observer_lat": 40.7128, "observer_lng": -74.0060 } </arguments> </use_mcp_tool>

Get Satellite TLE Data

<use_mcp_tool> <server_name>satellite-tracking</server_name> <tool_name>get_satellite_tle</tool_name> <arguments> { "norad_id": 25544 } </arguments> </use_mcp_tool>

Predict Visual Passes

<use_mcp_tool> <server_name>satellite-tracking</server_name> <tool_name>predict_visual_passes</tool_name> <arguments> { "norad_id": 25544, "observer_lat": 40.7128, "observer_lng": -74.0060, "days": 7 } </arguments> </use_mcp_tool>

Search for Satellites

<use_mcp_tool> <server_name>satellite-tracking</server_name> <tool_name>search_satellites</tool_name> <arguments> { "query": "ISS" } </arguments> </use_mcp_tool>

Get Satellites Above Location

<use_mcp_tool> <server_name>satellite-tracking</server_name> <tool_name>get_satellites_above</tool_name> <arguments> { "observer_lat": 40.7128, "observer_lng": -74.0060, "search_radius": 45 } </arguments> </use_mcp_tool>

Access Satellite Resource

<access_mcp_resource> <server_name>satellite-tracking</server_name> <uri>satellite://25544</uri> </access_mcp_resource>

Satellite Categories

The server supports the following satellite categories:

Category IDDescription
0All
1Amateur
2CubeSat
3Education
4Engineering
5Galileo
6GLO-OPS
7GPS-OPS
8Military
9Radar
10Resource
11SARSAT
12Science
13TDRSS
14Weather
15XM/Sirius
16Iridium-NEXT
17Globalstar
18Intelsat
19SES
20Telesat
21Orbcomm
22Gorizont
23Raduga
24Molniya
25DMC
26Argos
27Planet
28Spire
29Starlink
30OneWeb

API Key Limitations

The N2YO API has usage limits based on your subscription plan. The free tier allows:

  • 1,000 requests per hour
  • Basic functionality across all endpoints

Be aware of these limits when using the server to avoid exceeding your quota.

Troubleshooting

  • API Key Errors: Ensure your N2YO API key is valid and correctly set in the environment variables.
  • Rate Limiting: If you encounter rate limiting errors, the server will automatically retry with exponential backoff, but you may need to wait before making additional requests.
  • No Data Found: Some satellites may not have real-time tracking data available, especially older or inactive satellites.

License

This project is licensed under the ISC License.

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Satellite Tracking MCP Server

  1. Features
    1. Tools
    2. Resources
  2. Installation
    1. Prerequisites
    2. Setup
  3. Configuration
    1. MCP Settings Configuration
  4. Usage Examples
    1. Get Satellite Position
    2. Get Satellite TLE Data
    3. Predict Visual Passes
    4. Search for Satellites
    5. Get Satellites Above Location
    6. Access Satellite Resource
  5. Satellite Categories
    1. API Key Limitations
      1. Troubleshooting
        1. License

          Related MCP Servers

          • -
            security
            A
            license
            -
            quality
            MCP Server for networl monitoring software ntopng.
            Last updated -
            Python
            MIT License
            • Apple
          • -
            security
            A
            license
            -
            quality
            An MCP server that connects to OpenWeatherMap's API to provide current weather data and multi-day forecasts for locations worldwide in different measurement units.
            Last updated -
            51
            TypeScript
            MIT License

          View all related MCP servers

          ID: op6ti0kjz1