Skip to main content

Get Planetary Data from the Planetary Data System (PDS)

Project description

Peppi

Access planetary datasets from the Planetary Data System (PDS)

Prerequisites

  • Python 3.13 or newer

User Quickstart

See https://nasa-pds.github.io/peppi/

Use as MCP server with Claude (alpha)

A specific command line can be used to connect peppi (and the PDS API to an LLM), this has been tested with Claude.

Use command: pds-peppi-mcp-server

Connect it to Claude Desktop, for example, as described in https://modelcontextprotocol.io/quickstart/user#installing-the-filesystem-server, using the following configuration:

{
  "mcpServers": {
    "pds_peppi": {
      "command": "{whereever the package is installed}/bin/pds-peppi-mcp-server",
      "args": []
     }
  }
}

You can use a prompt like: "Can you find the URI for the planet Jupiter in the PDS ?"

Code of Conduct

All users and developers of the NASA-PDS software are expected to abide by our Code of Conduct. Please read this to ensure you understand the expectations of our community.

Development

To develop this project, use your favorite text editor, or an integrated development environment with Python support, such as PyCharm.

Contributing

For information on how to contribute to NASA-PDS codebases please take a look at our Contributing guidelines.

Installation

Install in editable mode and with extra developer dependencies into your virtual environment of choice:

pip install git+https://github.com/NASA-AMMOS/slim-detect-secrets.git@exp
pip install --editable '.[dev]'

Then, configure the pre-commit hooks:

pre-commit install
pre-commit install -t pre-push
pre-commit install -t prepare-commit-msg
pre-commit install -t commit-msg

These hooks then will check for any future commits that might contain secrets. They also check code formatting, PEP8 compliance, type hints, etc.

👉 Note: A one time setup is required both to support detect-secerts and in your global Git configuration. See the wiki entry on Secrets to learn how.

Tests

This section describes testing for your package.

A complete "build" including test execution, linting (mypy, black, flake8, etc.), and documentation build is executed via:

tox

Build

pip install build
python3 -m build .

Publication

NASA PDS packages can publish automatically using the Roundup Action, which leverages GitHub Actions to perform automated continuous integration and continuous delivery. A default workflow that includes the Roundup is provided in the .github/workflows/unstable-cicd.yaml file. (Unstable here means an interim release.)

Manual Publication

Create the package:

python3 -m build .

Publish it as a Github release.

Publish on PyPI (you need a PyPI account and configure $HOME/.pypirc):

pip install twine
twine upload dist/*

Or publish on the Test PyPI (you need a Test PyPI account and configure $HOME/.pypirc):

pip install twine
twine upload --repository testpypi dist/*

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

pds_peppi-0.8.0-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file pds_peppi-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: pds_peppi-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.5

File hashes

Hashes for pds_peppi-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 08ed1a9c55a2312bee59ba239c9801da1f7df5514ef17d9111d34eca40a34a5d
MD5 16cc7263bf4063dd0ce08a4b798137e6
BLAKE2b-256 80d258aeab30a11bb34180b7f2f6850dd7b0025b7c18fe68462f5b4af854b32e

See more details on using hashes here.

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