hydroemu-mcp-server
hydroemu-mcp-server
Ein MCP-Server, der HACC-kosmologische hydrodynamische Simulations-Emulatoren – vortrainierte SEPIA-Gaußprozessmodelle – als Werkzeuge für jeden LLM-Agenten bereitstellt.
Die eine Idee, die dieses Repo vermittelt
Der Wissenschaftscode bleibt in gewöhnlichem Python. Der MCP-Wrapper veröffentlicht ihn nur.
tools/ist ein gewöhnliches Wissenschaftspaket. Es importiert nie MCP. Die Emulator-Werkzeuge befinden sich intools/hydro_tools.py; der zentrale SEPIA-Wrapper ist intools/emulator.py.mcp_server/ist ein generischer Wrapper mit etwa 70 Zeilen. Er liest eine Konfigurationszeile auspyproject.toml, importiert das Wissenschaftspaket und registriert jede Funktion, die in dessen__all__aufgeführt ist, als MCP-Werkzeug.
[tool.mcp-server]
tool_modules = ["tools"]Deine Typannotationen, Pydantic-Field-Einschränkungen und Docstrings werden zum Werkzeugschema, das Agenten sehen. Um deinen eigenen Server zu bauen: Lege deine Module in tools/ ab (oder richte diese eine Konfigurationszeile auf dein eigenes Paket), liste die öffentlichen Funktionen in __all__ auf, fertig.
Related MCP server: copamind-mcp
Aufbau
models/ Pre-trained SEPIA pickles (copy from CosmoHydro/models/)
tools/
emulator.py Core SEPIA wrapper: lazy load, predict, redshift interpolation
hydro_tools.py The 5 MCP tool functions + ArtifactResult contract
__init__.py __all__ — ONLY these names become tools
mcp_server/ Generic drop-in wrapper (FastMCP)
tests/test_tools.py Tools tested as plain Python, no MCP needed
docs/mcp-clients.md Multi-client setup guideParameter
Insgesamt 7 Parameter (5 Subgrid + 2 Kosmologie):
Parameter | Symbol | Bereich | Einheiten |
AGN-Windkopplung | κ_w | [0.03, 3.0] | — |
AGN-Energieeffizienz | e_w | [0.001, 0.1] | — |
BH-Keimmasse | M_seed | [0.5, 50.0] | 10⁶ M☉ |
Geschwindigkeit des kinetischen Feedbacks | v_kin | [0.1, 1.0] | 10⁴ km/s |
Effizienz des kinetischen Feedbacks | ε_kin | [0.1, 1.0] | 10¹ |
Materiedichte | ω_m | [0.12, 0.155] | — |
Fluktuationsamplitude | σ₈ | [0.7, 0.9] | — |
Design: 110 Simulationen (400 Mpc/h-Boxen) aus einem Latin-Hypercube-Design.
Observablen
Observable | Beschreibung | Snapshots | z-Bereich |
GSMF | Galaxien-Sternmassenfunktion | 11 | 0–2 |
HMF | Halomassenfunktion | 11 | 0–2 |
fGas | Gasanteil von Clustern | 7 | 0–1.0 |
CGD | Dichteprofil des Cluster-Gases | 5 | 0–0.5 |
CGED | Elektronendichteprofil des Cluster-Gases | 5 | 0–0.5 |
CPP | Druckprofil des Cluster-Gases | 5 | 0–0.5 |
CTP | Temperaturprofil des Cluster-Gases | 5 | 0–0.5 |
CEP | Entropieprofil des Cluster-Gases | 5 | 0–0.5 |
CEEP | Elektronenentropieprofil des Clusters | 5 | 0–0.5 |
CMP | Metallizitätsprofil des Cluster-Gases | 5 | 0–0.5 |
CYP | Compton-y-Profil (tSZ) des Clusters | 5 | 0–0.5 |
Werkzeuge
Werkzeug | Funktion |
| listet alle 11 emulierten Observablen mit Metadaten auf |
| den 7-Parameter-Designraum mit Bereichen |
| sagt jede Observabl bei z=0 voraus, schreibt CSV |
| sagt bei beliebigem z voraus (interpoliert) |
| Zweifeld-Abbildung: Observabl + Verhältnis |
Zwei Konventionen, die es wert sind, in jeden Wissenschafts-MCP-Server übernommen zu werden:
Jedes Werkzeug gibt
{status, files, message, metadata}zurück (ArtifactResult).Arrays werden zwischen Werkzeugen als Dateipfade übergeben, niemals durch den Kontextfenster des Agenten.
Installation
conda create -n hydroemu python=3.12 -y
conda activate hydroemu
pip install -e ".[dev]"
pytest # tests pass without SEPIA models (fixture data)Vortrainierte Modelle
Kopiere die trainierten SEPIA-Pickles aus CosmoHydro/models/ in das Verzeichnis models/:
cp -r /path/to/CosmoHydro/models/GSMF_multiz models/
cp -r /path/to/CosmoHydro/models/HMF_multiz models/
# ... etc for each observableOhne Modelle funktionieren list_observables(), describe_parameters() und plot_observable_comparison() weiterhin; nur predict_observable und predict_observable_redshift benötigen die Pickles.
Server ausführen
Streamable HTTP – der Server ist ein sichtbarer Prozess mit einer URL:
python -m mcp_server --transport streamable-http --port 8000Clients verbinden sich mit http://127.0.0.1:8000/mcp. Stoppe den Server mit Ctrl+C (Ctrl+Z setzt ihn nur aus, sodass der Port belegt bleibt – falls das passiert, starte den Server einfach erneut: Er erkennt einen übrig gebliebenen mcp_server, der den Port hält, und räumt ihn automatisch auf).
Um diesen Server von Claude Code, der Claude-Desktop-App, Codex, Cursor oder einem anderen MCP-Client zu verwenden, siehe docs/mcp-clients.md; eine eingecheckte .mcp.json bindet ihn bereits in Claude Code ein.
Architektur
Dieser Server folgt derselben Architektur wie spectra-mcp-server:
Emulator-Diagramme
Siehe die vollständige Galerie für 24 Validierungs-, Sensitivitäts- und Vergleichsdiagramme aus den CosmoHydro-Trainingsnotebooks. Highlights:
|
|
GSMF: Emulator vs. zurückgehaltene Simulationen | P(k)-Unterdrückung: Sensitivität pro Parameter |
Architektur (detailliert)
mcp_server/ist ein generischer Drop-in-MCP-Wrapper (zwischen Repos kopierbar)tools/enthält die domänenspezifischen Wissenschaftsfunktionenpyproject.toml[tool.mcp-server]-Konfiguration verbindet sieAlle SEPIA-Importe sind lazy (innerhalb von Funktionen, nicht auf Modulebene)
Modelle werden beim ersten Gebrauch geladen und für spätere Aufrufe zwischengespeichert
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceProvides MCP tools for high-performance computing (HPC) and converged computing, enabling agentic interactions with HPC resources and workflows.6MIT
- AlicenseNot gradedqualityBmaintenanceEnables interaction with the CopaMind platform via MCP, exposing read-only and write tools for querying match predictions, Monte Carlo simulations, team rankings, and RAG-based explanations, all while maintaining full traceability and reproducibility.1MIT
- FlicenseAqualityCmaintenanceEnables Mu2e analysis workflows by exposing event counting, cut analysis, sensitivity computation, and ML selection as MCP tools for agentic frameworks.10
- AlicenseNot gradedqualityCmaintenanceExposes SwarmLabs physics-informed scientific experiment predictions as MCP tools, enabling agents to run predictions, list engines, and perform parameter sweeps with honesty-first uncertainty reporting.MIT
Related MCP Connectors
Free public MCP for AI agents — 193 tools, 44 workflows. No API key.
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nesar-ai-assistant/hydroemu-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server

