Skip to main content
Glama

su2-mcp

su2-mcp는 MCP 서버를 통해 SU2 세션 수명 주기, 설정 편집, 솔버 실행 및 결과 검사를 제공합니다.

기능

  • 세션별 작업 디렉터리를 사용하는 세션 수명 주기 관리.

  • SU2 .cfg 파일 읽기, 파싱 및 업데이트를 위한 설정 도우미.

  • 메시 업로드 및 자동 MESH_FILENAME 동기화.

  • gmsh를 통한 선택적 STEP -> SU2 메시 변환 (generate_mesh_from_step).

  • 타임아웃/바이너리 누락 처리를 지원하는 SU2_CFD 및 SU2_DEF용 솔버 래퍼.

  • 결과 파일 목록, base64 다운로드, 히스토리 CSV 파싱 및 표면 샘플링.

  • 개방형 메시 정제 (2026-06-21): CPACS 어댑터는 세 가지 명명된 프리셋(laptop/workstation/industry) 위에 선택적 surface_density 및 farfield_factor 오버라이드를 노출하며, 실제 mesh_n_elem 셀 수와 cauchy_triggered 플래그를 보고하여 호출자가 수렴-플래토 루프를 구성할 수 있습니다 (cmudrc/agent-mcp의 SKILL_OPEN_ENDED_MESH.md 스킬 및 scripts/run_converged_su2.py 참조).

Related MCP server: tigl-mcp

설치

python3 -m venv .venv
source .venv/bin/activate
pip install -e .[dev]

서버 실행

StdIO (기본값)

su2-mcp --transport stdio

HTTP 전송

su2-mcp --transport http --host 0.0.0.0 --port 8002 --path /mcp
su2-mcp --transport streamable-http --host 0.0.0.0 --port 8002 --streamable-http-path /mcp

Server-Sent Events (SSE)

su2-mcp --transport sse --host 0.0.0.0 --port 8000 --mount-path / --sse-path /sse

프로그래매틱 진입점은 su2_mcp.main에서 사용할 수 있습니다.

개발

make dev
make lint
make type
make test
make docs

전체 로컬 CI 스타일 게이트:

make ci

SU2 바이너리 확인

MCP 도구 get_su2_status는 일반적인 SU2 바이너리(SU2_CFD, SU2_CFD_MPI, SU2_DEF)의 사용 가능 여부를 보고합니다.

선택적 SU2 종속성 엑스트라

pip install .[su2]

시스템 종속성

Python 패키지는 순수 Python이지만 일부 도구는 외부 실행 파일에 의존합니다:

  • run_su2_solver / generate_deformed_mesh: PATH에 SU2 바이너리 필요

  • generate_mesh_from_step: PATH에 gmsh 필요

공유-CPACS 통합

이 MCP에는 SU2를 공유-CPACS 항공기 해석 파이프라인에 연결하는 CPACS 어댑터(src/su2_mcp/cpacs_adapter.py)가 포함되어 있습니다.

역할

어댑터는 CPACS에서 기준 형상과 비행 조건을 읽고, Gmsh를 통해 STEP 파일을 메시로 변환하며, 실제 SU2_CFD 오일러 시뮬레이션을 실행하고, history.csv에서 CL/CD를 파싱한 다음, 공기역학 결과를 //analysisResults/aero에 기록합니다.

방향

XPath

읽기

.//vehicles/aircraft/model/reference, .//analysisResults/tigl

쓰기

.//vehicles/aircraft/model/analysisResults/aero (CL, CD, L/D, 솔버 정보)

파이프라인의 일부로 실행

# Classic preset path
python pipeline/shared_cpacs_orchestrator.py D150_v30.xml \
    --mcps tigl su2 pycycle nseg --su2-preset workstation

# Custom one-off density (open-ended override)
python pipeline/shared_cpacs_orchestrator.py D150_v30.xml \
    --mcps tigl su2 --su2-density 120

# Converged delivery: refine surface_density until CL/CD plateau
python pipeline/shared_cpacs_orchestrator.py D150_v30.xml \
    --mcps tigl su2 --su2-converge

전체 파이프라인 문서, 버전 관리 세부 사항 및 설치 지침은 cmudrc/aircraft-analysis를 참조하세요.

관련 MCP 서버

MCP

저장소

TiGL (형상)

cmudrc/tigl-mcp

pyCycle (엔진 사이클)

cmudrc/pycycle-mcp

미션, 세그먼트/Breguet

cmudrc/nseg-mcp

미션, 궤적 수준

cmudrc/aviary-cpacs-mcp

관리자

Mayank Dixit (@Kugel-Blitz-13), 카네기 멜론 대학교 — mayankd@cmu.edu Christopher McComb, 카네기 멜론 대학교 — Design Research Collective

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides MCP tools for CPACS-oriented TiGL workflows, enabling lifecycle management, inspection, export, and parameter manipulation of aircraft geometry models without native geometry runtimes.
    3
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables to interact with Abaqus FEA software through an MCP bridge, supporting connection checks, script execution, model queries, job submission, and simulation automation.
    3
    -
  • A
    license
    B
    quality
    B
    maintenance
    Enables natural language-driven ANSYS simulations (Fluent, Mechanical, Geometry) with automatic TUI script generation for reproducibility.
    41
    6
    MIT