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 entools/hydro_tools.py; el envoltorio central de SEPIA está entools/emulator.py.mcp_server/es un envoltorio genérico de ~70 líneas. Lee una línea de configuración depyproject.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 guidePará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 |
| lista los 11 observables emulados con metadatos |
| el espacio de diseño de 7 parámetros con rangos |
| predice cualquier observable en z=0, escribe CSV |
| predice en z arbitrario (interpolado) |
| figura de dos paneles: observable + cociente |
Dos convenciones que vale la pena copiar en cualquier servidor MCP científico:
Cada herramienta devuelve
{status, files, message, metadata}(ArtifactResult).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 observableSin 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 8000Los 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:
|
|
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 dominioLa configuración
[tool.mcp-server]enpyproject.tomllos conectaTodas 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
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

