comsol-mcp
COMSOL MCP
가시적인 Desktop 클라이언트 워크플로우를 지원하는 AI 기반 COMSOL MCP 서버입니다.
comsol-mcp는 다음과 같은 워크플로우를 위해 구축되었습니다:
사용자가 수동으로
COMSOL Multiphysics Server를 시작합니다.COMSOL Desktop이 해당 서버에 시각적 클라이언트로 연결됩니다.
MCP 클라이언트가 동일한 서버 측 모델에 연결됩니다.
모델링 변경 사항이 블랙박스 배치 작업으로 실행되는 대신 시각적으로 확인 가능합니다.
이 저장소는 이 코드베이스에서 가시적인 COMSOL 자동화를 위한 새로운 메인라인입니다. 기존의 배치 지향 경로는 이제 레거시 참조로만 남았습니다.
이 프로젝트가 존재하는 이유
많은 COMSOL 자동화 흐름은 강력하지만 불투명합니다. Java를 컴파일하거나, 배치 작업을 실행하거나, 일반적인 서버 측 시뮬레이션을 구동할 수는 있지만, Desktop GUI에서 모델이 진화하는 과정을 항상 볼 수 있는 것은 아닙니다.
comsol-mcp는 다음과 같은 목표에 중점을 둡니다:
가시적인 GUI 변경 사항
공유된 서버 측 모델 상태
Desktop 측 폴링 브리지 없음
GUI 자동화 계층 없음
블랙박스 배치 전용 워크플로우 없음
핵심 워크플로우
이 프로젝트는 연결 우선(attach-first) 워크플로우를 사용합니다:
COMSOL Multiphysics Server를 수동으로 시작합니다.서버 콘솔에서 실제 수신 포트를 확인합니다.
COMSOL Desktop을 동일한 포트에 연결합니다.
필요한 경우 서버 측 모델을 Desktop으로 가져옵니다.
server_connect(host, port)를 사용하여 MCP를 동일한 서버에 연결합니다.작업 모델을 생성하거나 로드합니다.
MCP 도구를 사용하여 공유된 서버 측 모델을 수정합니다.
COMSOL Desktop에서 동일한 모델이 업데이트되는 것을 확인합니다.
전체 버전은 워크플로우 가이드를 참조하세요.
빠른 시작
사전 요구 사항
COMSOL이 로컬에 설치된 Windows
유효한 COMSOL 라이선스
Python 3.10 이상
수동으로 시작된
COMSOL Multiphysics Server
설치
소스에서 설치:
git clone <your-repo-url> comsol-mcp
cd comsol-mcp
python -m pip install -e .환경 변수 설정:
$env:COMSOL_ROOT = "C:\Program Files\COMSOL\COMSOL63\Multiphysics"
$env:COMSOL_SERVER_MCP_HOME = "$PWD\comsol-server-home"MCP 서버 시작:
python -m comsol_mcp.mcp_server또는 헬퍼 스크립트 사용:
.\scripts\start_comsol_mcp.ps1 -Python python -ComsolRoot "C:\Program Files\COMSOL\COMSOL63\Multiphysics" -McpHome "$PWD\comsol-server-home"MCP 설정 예시
참조:
최소 가시적 데모
server_connect("localhost", <actual_port>)
model_create("VisibleServerModel")
ensure_component("comp1", 2)
ensure_geometry("comp1", "geom1", 2)
ensure_mesh("comp1", "mesh1")
create_feature("comp1", "geom1", "r1", "Rectangle", "[{\"name\":\"size\",\"values\":[\"60[mm]\",\"30[mm]\"]},{\"name\":\"pos\",\"values\":[\"-30[mm]\",\"-15[mm]\"]}]", true)
run_feature("mesh", "mesh1", "comp1")Desktop과 MCP가 동일한 서버 측 모델을 공유하므로 Desktop에 동일한 형상이 표시되어야 합니다.
동일한 흐름의 문서 형태는 examples/attach_first_demo.md를 참조하세요.
도구 인터페이스
현재 도구:
server_info()server_start(...)server_connect(host, port, model_name="")server_disconnect(shutdown_server=false)model_create(name="Server Model")model_load(path)model_tree()get_parameters()set_parameters(parameters_json)ensure_component(component="comp1", dimension=2)ensure_geometry(component="comp1", geometry="geom1", dimension=2)ensure_mesh(component="comp1", mesh="mesh1")create_feature(component, geometry, tag, feature_type, properties_json="[]", run_geometry=false)update_feature(component, geometry, tag, properties_json, run_geometry=false)delete_feature(component, geometry, tag, run_geometry=false)run_feature(collection, tag, component="comp1")run_study(study_tag="")save_model(path="")
모델링 도구 인터페이스는 의도적으로 안정적으로 유지됩니다. 이 저장소 정리 작업은 이러한 도구의 이름을 변경하거나 제거하지 않습니다.
권장 진입점
권장되는 진입점은 다음과 같습니다:
server_connect("localhost", <actual_port>)server_start()도 여전히 사용할 수 있지만, 이제는 고급 대체 수단입니다. MCP가 COMSOL 서버 수명 주기를 관리하게 하고 COMSOL이 자동으로 다른 수신 포트를 선택할 수 있음을 수용할 때만 사용하세요.
알려진 제한 사항
COMSOL Desktop은 연결 성공 후 서버 측 모델을 자동으로 표시하지 않을 수 있습니다. 기존 서버 모델을 가져오거나 전환해야 할 수 있습니다.
server_connect()는 현재 작업 모델이 선택되지 않은 상태에서도 성공할 수 있습니다. 이 경우model_create()또는model_load()를 사용하세요.서버 콘솔 출력과 실제 수신 포트는 항상 실제 활성 리스너와 대조하여 확인해야 합니다.
Desktop 그래픽은 서버 측 모델 변경 후 가벼운 새로 고침이 필요할 수 있습니다.
문제 해결 가이드를 참조하세요.
다른 MCP와의 차이점
abaqus-mcp-server와의 비교
abaqus-mcp-server는 GUI 스크립팅/GUI 자동화 스타일의 프로젝트입니다. 이미 실행 중인 GUI와 함께 작동하며 GUI 자동화 기술을 사용하여 작업을 트리거합니다.
comsol-mcp는 COMSOL에 대해 pywinauto 스타일의 GUI 자동화를 사용하지 않습니다. 대신 COMSOL Multiphysics Server에 직접 연결하여 Desktop이 시각화하는 동일한 서버 측 모델을 구동합니다.
일반적인 COMSOL 자동화 MCP와의 비교
공개된 COMSOL MCP 목록은 종종 솔버 범위, 메시 생성, 물리 설정 및 파라메트릭 스윕 커버리지에 중점을 둡니다.
이 프로젝트는 다음과 같은 다른 가치 제안에 중점을 둡니다:
연결 우선(attach-first)
가시적인 Desktop 워크플로우
비 블랙박스 모델링
Desktop과 MCP 간의 공유 모델 상태
이것은 단순히 "또 다른 COMSOL 자동화 MCP"가 아닙니다. 워크플로우를 가시적으로 만들고 Desktop 클라이언트와 협업할 수 있도록 하는 것에 관한 것입니다.
기존 배치 경로와의 비교
기존 배치 경로는 다음을 사용했습니다:
comsolcompilecomsolbatch
이 경로는 오프라인 작업에는 여전히 유용하지만, 더 이상 이 프로젝트의 공개적인 정체성이 아닙니다. 이 저장소에서는 메인라인이 아닌 레거시 참조로 취급됩니다.
더 자세한 비교는 docs/differences.md를 참조하세요.
레거시 / 이전 배치 경로
이 코드베이스의 초기 내부 comsol-mcp 경로는 배치 지향적이었으며 comsolcompile과 comsolbatch를 래핑했습니다. 해당 레거시 경로는 의도적으로 이 저장소의 공개적인 얼굴이 아닙니다.
이 저장소는 다음 사항에 중점을 둡니다:
COMSOL Multiphysics Server시각적 클라이언트로서의 Desktop
동일한 모델에 대한 MCP 연결
저작자 표시
MPh기반으로 구축됨COMSOL 클라이언트-서버 워크플로우 및 관련 MCP 탐색에서 영감을 받음
COMSOL과 제휴하지 않음
COMSOL 바이너리나 독점 자산을 포함하지 않음
라이선스
MIT. LICENSE를 참조하세요.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/Ching-Chiang/comsol-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server