Skip to main content
Glama
nesar-ai-assistant

hydroemu-mcp-server

hydroemu-mcp-server

Un servidor MCP que expone emuladores de simulaciones hidrodinámicas cosmológicas HACC — modelos preentrenados de procesos gaussianos SEPIA — como herramientas para cualquier agente LLM.

La única idea que enseña este repositorio

El código científico permanece en Python habitual. El envoltorio MCP solo lo publica.

  • tools/ es un paquete científico ordinario. Nunca importa MCP. Las herramientas del emulador viven en tools/hydro_tools.py; el envoltorio central de SEPIA está en tools/emulator.py.

  • mcp_server/ es un envoltorio genérico de ~70 líneas. Lee una línea de configuración de pyproject.toml, importa el paquete científico y registra cada función listada en su __all__ como una herramienta MCP.

[tool.mcp-server]
tool_modules = ["tools"]

Tus anotaciones de tipo, restricciones de Field de Pydantic y docstrings se convierten en el esquema de herramientas que ven los agentes. Para construir tu propio servidor: coloca tus módulos en tools/ (o apunta esa línea de configuración a tu propio paquete), lista las funciones públicas en __all__, listo.

Related MCP server: copamind-mcp

Estructura

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 guide

Parámetros

7 parámetros en total (5 de subred + 2 de cosmología):

Parámetro

Símbolo

Rango

Unidades

Acoplamiento del viento AGN

κ_w

[0.03, 3.0]

Eficiencia energética AGN

e_w

[0.001, 0.1]

Masa de semilla de BH

M_seed

[0.5, 50.0]

10⁶ M☉

Velocidad de retroalimentación cinética

v_kin

[0.1, 1.0]

10⁴ km/s

Eficiencia de retroalimentación cinética

ε_kin

[0.1, 1.0]

10¹

Densidad de materia

ω_m

[0.12, 0.155]

Amplitud de fluctuación

σ₈

[0.7, 0.9]

Diseño: 110 simulaciones (cajas de 400 Mpc/h) a partir de un diseño de hipercubo latino.

Observables

Observable

Descripción

Instantáneas

Rango z

GSMF

Función de masa estelar de galaxias

11

0–2

HMF

Función de masa de halos

11

0–2

fGas

Fracción de gas en cúmulos

7

0–1.0

CGD

Perfil de densidad de gas en cúmulos

5

0–0.5

CGED

Perfil de densidad electrónica de gas en cúmulos

5

0–0.5

CPP

Perfil de presión de gas en cúmulos

5

0–0.5

CTP

Perfil de temperatura de gas en cúmulos

5

0–0.5

CEP

Perfil de entropía de gas en cúmulos

5

0–0.5

CEEP

Perfil de entropía electrónica en cúmulos

5

0–0.5

CMP

Perfil de metalicidad de gas en cúmulos

5

0–0.5

CYP

Perfil de Compton-y (tSZ) en cúmulos

5

0–0.5

Herramientas

herramienta

qué hace

list_observables()

lista los 11 observables emulados con metadatos

describe_parameters()

el espacio de diseño de 7 parámetros con rangos

predict_observable(...)

predice cualquier observable en z=0, escribe CSV

predict_observable_redshift(...)

predice en z arbitrario (interpolado)

plot_observable_comparison(...)

figura de dos paneles: observable + cociente

Dos convenciones que vale la pena copiar en cualquier servidor MCP científico:

  1. Cada herramienta devuelve {status, files, message, metadata} (ArtifactResult).

  2. Los arreglos se mueven entre herramientas como rutas de archivo, nunca a través de la ventana de contexto del agente.

Instalación

conda create -n hydroemu python=3.12 -y
conda activate hydroemu
pip install -e ".[dev]"
pytest                        # tests pass without SEPIA models (fixture data)

Modelos preentrenados

Copia los pickles de SEPIA entrenados desde CosmoHydro/models/ al directorio models/:

cp -r /path/to/CosmoHydro/models/GSMF_multiz models/
cp -r /path/to/CosmoHydro/models/HMF_multiz models/
# ... etc for each observable

Sin modelos, list_observables(), describe_parameters() y plot_observable_comparison() siguen funcionando; solo predict_observable y predict_observable_redshift requieren los pickles.

Ejecutar el servidor

HTTP transmisible — el servidor es un proceso visible con una URL:

python -m mcp_server --transport streamable-http --port 8000

Los clientes se conectan a http://127.0.0.1:8000/mcp. Detén el servidor con Ctrl+C (Ctrl+Z solo lo suspende, dejando el puerto ocupado — si eso ocurre, simplemente inicia el servidor de nuevo: detecta un mcp_server residual que mantiene el puerto y lo limpia automáticamente).

Para usar este servidor desde Claude Code, la aplicación de escritorio de Claude, Codex, Cursor o cualquier otro cliente MCP — consulta docs/mcp-clients.md; un .mcp.json incluido ya lo conecta a Claude Code.

Arquitectura

Este servidor sigue la misma arquitectura que spectra-mcp-server:

Gráficos del emulador

Consulta la galería completa para ver 24 gráficos de validación, sensibilidad y comparación de los cuadernos de entrenamiento de CosmoHydro. Destacados:

Validación GSMF

Sensibilidad Pk

GSMF: emulador vs simulaciones reservadas

Supresión de P(k): sensibilidad por parámetro

Arquitectura (detallada)

  • mcp_server/ es un envoltorio MCP genérico y reutilizable (copia entre repositorios)

  • tools/ contiene las funciones científicas específicas del dominio

  • La configuración [tool.mcp-server] en pyproject.toml los conecta

  • Todas las importaciones de SEPIA son perezosas (dentro de funciones, no en el ámbito del módulo)

  • Los modelos se cargan en el primer uso y se almacenan en caché para llamadas posteriores

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables 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.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Exposes 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

View all related MCP servers

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.

View all MCP Connectors

Latest Blog Posts

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