Skip to main content
Glama
nesar-ai-assistant

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: copamind-mcp

Структура

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

Инструменты

инструмент

что делает

list_observables()

список всех 11 эмулируемых наблюдаемых с метаданными

describe_parameters()

7-мерное пространство параметров с диапазонами

predict_observable(...)

предсказание любой наблюдаемой при z=0, запись CSV

predict_observable_redshift(...)

предсказание при произвольном z (интерполяция)

plot_observable_comparison(...)

двухпанельный график: наблюдаемая + отношение

Две конвенции, которые стоит перенять в любой научный MCP-сервер:

  1. Каждый инструмент возвращает {status, files, message, metadata} (ArtifactResult).

  2. Массивы передаются между инструментами как пути к файлам, никогда через контекстное окно агента.

Установка

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

Чувствительность Pk

GSMF: эмулятор против удержанных симуляций

Подавление P(k): чувствительность по параметрам

Архитектура (подробно)

  • mcp_server/универсальная MCP-обёртка (копируется между репозиториями)

  • tools/ — доменные научные функции

  • pyproject.toml [tool.mcp-server] — конфигурация, связывающая их

  • Все импорты SEPIA — ленивые (внутри функций, не на уровне модуля)

  • Модели загружаются при первом использовании и кэшируются для последующих вызовов

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