Skip to main content
Glama

pybme-mcp

Python 3.10+ License: MIT

Ein Model Context Protocol (MCP)-Server, der pyBME umschließt – und es LLM-Agenten ermöglicht, geostatistische Bayesian Maximum Entropy-Analysen durch natürlichsprachliche Absichten anstelle von Code durchzuführen.

Was es tut

Der Server stellt 7 Tools, 6 Ressourcen und 4 Prompts bereit, die eine Pipeline für Unsicherheitsanalysen bilden:

ingest_external_scenario_evidence → inspect_modeling_context
       → fit_uncertainty_model → run_uncertainty_update
       → explain_uncertainty_drivers
       → compare_operator_approaches
       → design_next_observation_or_scenario

Tools

Tool

Zweck

ingest_external_scenario_evidence

Import von harten/weichen Beobachtungen und Netzwerktopologie

inspect_modeling_context

Erkennung des Problemtyps und Empfehlung von Modellfamilien

fit_uncertainty_model

Anpassung von räumlichen oder Netzwerk-Kovarianzmodellen mit Kreuzvalidierung

run_uncertainty_update

Ausführung der BME-Vorhersage an Schätzungszielen

explain_uncertainty_drivers

Identifizierung der Unsicherheitstreiber an bestimmten Standorten

compare_operator_approaches

Vergleich von euklidischen vs. Graphen- vs. physikbasierten Operatoren

design_next_observation_or_scenario

Ranking von Kandidaten für Sensorplatzierungen nach Varianzreduktion

Unterstützte Modellfamilien

  • spatial — Euklidische Kovarianz (exponentiell, Gauß, sphärisch, …)

  • space_time — Separierbare Raum-Zeit-Kovarianz

  • graph_laplacian — Graphendiffusionskern auf Netzwerktopologie

  • physics_informed_network — Physikalisch konsistente Netzwerkkovarianz

  • spectral_hodge — Spektrale Hodge-Dekomposition für Flussnetzwerke

Related MCP server: groundstation

Installation

Installieren Sie zuerst pyBME (noch nicht auf PyPI verfügbar):

pip install git+https://github.com/wiesnerfriedman/pybme.git

Installieren Sie dann den MCP-Server:

pip install git+https://github.com/wiesnerfriedman/pybme-mcp.git

Oder von einem lokalen Klon:

git clone https://github.com/wiesnerfriedman/pybme-mcp.git
cd pybme-mcp
pip install -e ".[dev]"

Konfiguration

Claude Desktop

Fügen Sie dies zu claude_desktop_config.json hinzu:

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

VS Code (Copilot)

Fügen Sie dies zu .vscode/mcp.json hinzu:

{
  "servers": {
    "pybme": {
      "type": "stdio",
      "command": "pybme-mcp"
    }
  }
}

Verwendung

Sobald die Konfiguration abgeschlossen ist, können Sie Ihren Agenten Dinge fragen wie:

  • "Fit an uncertainty model to my PM2.5 observations"

  • "Run a network-aware BME update on this stormwater network"

  • "Compare Euclidean vs graph Laplacian operators"

  • "Where should I place the next sensor to reduce uncertainty the most?"

Siehe examples/mcp_agent_demo.ipynb für eine Schritt-für-Schritt-Anleitung der gesamten Tool-Kette.

Entwicklung

git clone https://github.com/wiesnerfriedman/pybme-mcp.git
cd pybme-mcp
pip install -e ".[dev]"
pytest

Layout

pybme-mcp/
├── docs/
│   ├── pybme-openswmm-integration.md
│   └── v1-mcp-spec.md
├── examples/
│   └── mcp_agent_demo.ipynb
├── pyproject.toml
├── src/pybme_mcp/
│   ├── __init__.py
│   ├── __main__.py
│   ├── registry.py
│   ├── schemas.py
│   ├── serialisation.py
│   ├── server.py
│   └── services/
│       ├── catalog.py
│       ├── comparison.py
│       ├── context.py
│       ├── explanation.py
│       ├── fitting.py
│       ├── hodge.py
│       ├── ingest.py
│       ├── scenario_design.py
│       └── update.py
└── tests/
    ├── conftest.py
    ├── test_ingest.py
    └── test_integration.py

Lizenz

MIT

Related MCP Connectors

Related MCP Servers