Skip to main content

MCP server wrapping the Brahe astrodynamics library

Project description

brahe-mcp

Tests PyPI

This project provides a Model Context Protocol (MCP) server that exposes the astrodynamics capabilities of the Brahe library enabling language models to get smarter about astrodynamics and space situational awareness.

demo

Installation

uv tool install brahe-mcp

or

pip install brahe-mcp

Then configure your MCP client to use the installed tool:

{
  "mcpServers": {
    "brahe": {
      "command": "brahe-mcp"
    }
  }
}

The MCP configuration location depends on your client. For popular tools you can find it here:

Client Config Location
Claude Desktop (macOS) ~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop (Windows) %APPDATA%\Claude\claude_desktop_config.json
Claude Code .claude/settings.json (project-level or global)
Gemini CLI ~/.gemini/settings.json
OpenAI Codex CLI ~/.codex/config.toml (see below)

[!NOTE]
ChatGPT Desktop does not support local stdio MCP servers — it requires remote HTTPS endpoints

OpenAI Codex CLI

Codex CLI stores MCP configuration in TOML format at ~/.codex/config.toml (or project-scoped .codex/config.toml):

[mcp_servers.brahe]
command = "brahe-mcp"
args = []

You can also add it via the CLI:

codex mcp add brahe -- brahe-mcp

To include SpaceTrack credentials:

codex mcp add brahe --env SPACETRACK_USER=your@email.com --env SPACETRACK_PASS=your-password -- brahe-mcp

SpaceTrack Configuration

The SpaceTrack tools require a Space-Track.org account. Add your credentials via the env key in the server config:

{
  "mcpServers": {
    "brahe": {
      "command": "brahe-mcp",
      "env": {
        "SPACETRACK_USER": "your@email.com",
        "SPACETRACK_PASS": "your-password"
      }
    }
  }
}

[!NOTE]
Claude Desktop does not expand shell variables like ${SPACETRACK_USER} — you must put the actual values in the config. Claude Code inherits your shell environment, so you can alternatively set the variables in ~/.zshrc and omit the env block.

Without these variables, the CelesTrak tools will still work normally — only the SpaceTrack tools will return an error prompting you to set the credentials.

Local Setup

To run the server from a local clone (useful for development or testing before installing):

git clone https://github.com/duncaneddy/brahe-mcp.git
cd brahe-mcp
uv sync --group dev

Then configure your MCP client to launch the server via uv run. Add the following to your MCP settings file:

{
  "mcpServers": {
    "brahe": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/brahe-mcp", "brahe-mcp"]
    }
  }
}

Replace /path/to/brahe-mcp with the absolute path to your local clone.

Development

uv sync --group dev
uv run pytest tests/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

brahe_mcp-0.2.3.tar.gz (31.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

brahe_mcp-0.2.3-py3-none-any.whl (55.2 kB view details)

Uploaded Python 3

File details

Details for the file brahe_mcp-0.2.3.tar.gz.

File metadata

  • Download URL: brahe_mcp-0.2.3.tar.gz
  • Upload date:
  • Size: 31.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for brahe_mcp-0.2.3.tar.gz
Algorithm Hash digest
SHA256 599e875ccab71d75b900bcd0fb07c639b255dac109fd16c2f5f5b57dd7e99f41
MD5 56a6accda368b968e4fffdfd593b66d5
BLAKE2b-256 39bbc4d085fef40de15036330852830ae2dcee06c97ef3f874d4175260a74236

See more details on using hashes here.

Provenance

The following attestation bundles were made for brahe_mcp-0.2.3.tar.gz:

Publisher: release.yml on duncaneddy/brahe-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file brahe_mcp-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: brahe_mcp-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 55.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for brahe_mcp-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 51b04f70ac8ae338348acbc968adae5913393d8b69af991ceb4136d97847c568
MD5 959c762fb5536586c2d472f238f60a37
BLAKE2b-256 54c7f87e78a432aa35333c53f378b3a28bc1d5fb3fb4665691d0b63034fcfc30

See more details on using hashes here.

Provenance

The following attestation bundles were made for brahe_mcp-0.2.3-py3-none-any.whl:

Publisher: release.yml on duncaneddy/brahe-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page