hydroemu-mcp-server
hydroemu-mcp-server
MCP-сервер, который предоставляет эмуляторы космологических гидродинамических симуляций HACC — предобученные модели SEPIA Gaussian Process — как инструменты для любого LLM-агента.
Главная идея этого репозитория
Научный код остаётся на обычном Python. MCP-обёртка только публикует его.
tools/— обычный научный пакет. Он никогда не импортирует MCP. Инструменты эмулятора находятся вtools/hydro_tools.py; основная обёртка SEPIA — вtools/emulator.py.mcp_server/— универсальная обёртка примерно на 70 строк. Она читает одну строку конфигурации изpyproject.toml, импортирует научный пакет и регистрирует каждую функцию из его__all__как MCP-инструмент.
[tool.mcp-server]
tool_modules = ["tools"]Ваши аннотации типов, ограничения Pydantic Field и docstring'и становятся схемой инструментов, которую видят агенты. Чтобы собрать собственный сервер: поместите свои модули в tools/ (или укажите эту одну строку конфигурации на свой пакет), перечислите публичные функции в __all__ — готово.
Related MCP server: MCP Refana Server
Структура
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Параметры
Всего 7 параметров (5 подрешёточных + 2 космологических):
Параметр | Символ | Диапазон | Единицы |
Связь AGN-ветра | κ_w | [0.03, 3.0] | — |
Энергоэффективность AGN | e_w | [0.001, 0.1] | — |
Масса затравки ЧД | M_seed | [0.5, 50.0] | 10⁶ M☉ |
Скорость кинетической обратной связи | v_kin | [0.1, 1.0] | 10⁴ км/с |
Эффективность кинетической обратной связи | ε_kin | [0.1, 1.0] | 10¹ |
Плотность материи | ω_m | [0.12, 0.155] | — |
Амплитуда флуктуаций | σ₈ | [0.7, 0.9] | — |
Дизайн: 110 симуляций (боксы 400 Мпк/ч) из латинского гиперкуба.
Наблюдаемые величины
Наблюдаемая | Описание | Снимки | Диапазон z |
GSMF | Функция масс звёзд галактик | 11 | 0–2 |
HMF | Функция масс гало | 11 | 0–2 |
fGas | Доля газа в скоплении | 7 | 0–1.0 |
CGD | Профиль плотности газа в скоплении | 5 | 0–0.5 |
CGED | Профиль электронной плотности газа в скоплении | 5 | 0–0.5 |
CPP | Профиль давления газа в скоплении | 5 | 0–0.5 |
CTP | Профиль температуры газа в скоплении | 5 | 0–0.5 |
CEP | Профиль энтропии газа в скоплении | 5 | 0–0.5 |
CEEP | Профиль электронной энтропии в скоплении | 5 | 0–0.5 |
CMP | Профиль металличности газа в скоплении | 5 | 0–0.5 |
CYP | Профиль Комптона-y (tSZ) в скоплении | 5 | 0–0.5 |
Инструменты
инструмент | что делает |
| список всех 11 эмулируемых наблюдаемых с метаданными |
| 7-мерное пространство параметров с диапазонами |
| предсказание любой наблюдаемой при z=0, запись CSV |
| предсказание при произвольном z (интерполяция) |
| двухпанельный график: наблюдаемая + отношение |
Две конвенции, которые стоит перенять в любой научный MCP-сервер:
Каждый инструмент возвращает
{status, files, message, metadata}(ArtifactResult).Массивы передаются между инструментами как пути к файлам, никогда через контекстное окно агента.
Установка
conda create -n hydroemu python=3.12 -y
conda activate hydroemu
pip install -e ".[dev]"
pytest # tests pass without SEPIA models (fixture data)Предобученные модели
Скопируйте обученные pickle-файлы SEPIA из CosmoHydro/models/ в каталог models/:
cp -r /path/to/CosmoHydro/models/GSMF_multiz models/
cp -r /path/to/CosmoHydro/models/HMF_multiz models/
# ... etc for each observableБез моделей list_observables(), describe_parameters() и plot_observable_comparison() всё равно работают; только predict_observable и predict_observable_redshift требуют pickle-файлы.
Запуск сервера
Streamable HTTP — сервер является видимым процессом с URL:
python -m mcp_server --transport streamable-http --port 8000Клиенты подключаются к http://127.0.0.1:8000/mcp. Остановите сервер с помощью Ctrl+C (Ctrl+Z только приостанавливает его, оставляя порт занятым — если это произошло, просто запустите сервер снова: он обнаружит оставшийся mcp_server, удерживающий порт, и автоматически очистит его).
Чтобы использовать этот сервер из Claude Code, десктопного приложения Claude, Codex, Cursor или любого другого MCP-клиента — см. docs/mcp-clients.md; проверенный .mcp.json уже подключает его к Claude Code.
Архитектура
Этот сервер следует той же архитектуре, что и spectra-mcp-server:
Графики эмулятора
См. полную галерею с 24 графиками валидации, чувствительности и сравнения из обучающих ноутбуков CosmoHydro. Основные:
|
|
GSMF: эмулятор против удержанных симуляций | Подавление P(k): чувствительность по параметрам |
Архитектура (подробно)
mcp_server/— универсальная MCP-обёртка (копируется между репозиториями)tools/— доменные научные функцииpyproject.toml[tool.mcp-server]— конфигурация, связывающая ихВсе импорты SEPIA — ленивые (внутри функций, не на уровне модуля)
Модели загружаются при первом использовании и кэшируются для последующих вызовов
This server cannot be deployed
Maintenance
Related MCP Connectors
214 tools for AI agents over one MCP endpoint: image, video, audio, 3D, data, storage, mail, GPUs.
Free public MCP for AI agents — 193 tools, 44 workflows. No API key.
MCP-Native LLM Orchestration Agent
Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceProvides MCP tools for high-performance computing (HPC) and converged computing, enabling agentic interactions with HPC resources and workflows.6MIT
- FlicenseAqualityDmaintenanceEnables Mu2e analysis workflows by exposing event counting, cut analysis, sensitivity computation, and ML selection as MCP tools for agentic frameworks.10-
- AlicenseAqualityAmaintenanceExposes 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.6MIT
- FlicenseNot gradedqualityBmaintenanceMCP server that exposes cosmology tools to LLM agents, including CLASS matter power spectrum computation, eBOSS DR14 Lyman-α forest data retrieval, and plotting capabilities.2-

