comsol-mcp
COMSOL MCP
Servidor MCP impulsado por IA para COMSOL con un flujo de trabajo de cliente de escritorio visible.
comsol-mcp está diseñado para el flujo de trabajo donde:
inicias manualmente
COMSOL Multiphysics ServerCOMSOL Desktop se conecta a ese servidor como cliente visual
un cliente MCP se conecta al mismo modelo del lado del servidor
los cambios en el modelado permanecen visibles en lugar de ejecutarse como un trabajo por lotes de caja negra
Este repositorio es la nueva línea principal para la automatización visible de COMSOL en esta base de código. La antigua ruta orientada a lotes es ahora solo una referencia heredada.
Por qué existe este proyecto
Muchos flujos de automatización de COMSOL son potentes pero opacos. Pueden compilar Java, ejecutar trabajos por lotes o dirigir simulaciones genéricas del lado del servidor, pero no siempre te permiten observar cómo evoluciona el modelo en la interfaz gráfica de escritorio.
comsol-mcp se centra en un objetivo diferente:
cambios visibles en la interfaz gráfica
estado del modelo compartido en el lado del servidor
sin puente de sondeo del lado del escritorio
sin capa de automatización de interfaz gráfica
sin flujo de trabajo de caja negra solo por lotes
Flujo de trabajo principal
Este proyecto utiliza un flujo de trabajo de conexión primero:
Inicia
COMSOL Multiphysics Servermanualmente.Anota el puerto de escucha real desde la consola del servidor.
Conecta COMSOL Desktop a ese mismo puerto.
Importa el modelo del lado del servidor a Desktop si es necesario.
Conecta MCP al mismo servidor con
server_connect(host, port).Crea o carga el modelo de trabajo.
Utiliza las herramientas de MCP para modificar el modelo compartido del lado del servidor.
Observa cómo se actualiza el mismo modelo en COMSOL Desktop.
Consulta la guía de flujo de trabajo para la versión completa.
Inicio rápido
Requisitos previos
Windows con COMSOL instalado localmente
Una licencia válida de COMSOL
Python 3.10 o superior
Un
COMSOL Multiphysics Serveriniciado manualmente
Instalación
Desde el código fuente:
git clone <your-repo-url> comsol-mcp
cd comsol-mcp
python -m pip install -e .Establece las variables de entorno:
$env:COMSOL_ROOT = "C:\Program Files\COMSOL\COMSOL63\Multiphysics"
$env:COMSOL_SERVER_MCP_HOME = "$PWD\comsol-server-home"Inicia el servidor MCP:
python -m comsol_mcp.mcp_serverO utiliza el script auxiliar:
.\scripts\start_comsol_mcp.ps1 -Python python -ComsolRoot "C:\Program Files\COMSOL\COMSOL63\Multiphysics" -McpHome "$PWD\comsol-server-home"Ejemplo de configuración de MCP
Consulta:
Demostración visible mínima
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 debería mostrar la misma geometría porque Desktop y MCP comparten el mismo modelo del lado del servidor.
Consulta examples/attach_first_demo.md para ver el mismo flujo en formato de documento.
Superficie de herramientas
Herramientas actuales:
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="")
La superficie de la herramienta de modelado es intencionalmente estable. Esta limpieza del repositorio no cambia el nombre ni elimina estas herramientas.
Punto de entrada recomendado
El punto de entrada recomendado es:
server_connect("localhost", <actual_port>)server_start() sigue estando disponible, pero ahora es una alternativa avanzada. Úsala solo cuando quieras que MCP controle el ciclo de vida del servidor COMSOL y aceptes que COMSOL pueda elegir un puerto de escucha diferente automáticamente.
Limitaciones conocidas
Es posible que COMSOL Desktop no muestre automáticamente el modelo del lado del servidor después de una conexión exitosa; es posible que debas importar o cambiar al modelo de servidor existente.
server_connect()puede tener éxito mientras no haya un modelo de trabajo actual seleccionado; en ese caso, usamodel_create()omodel_load().La salida de la consola del servidor y el puerto de escucha real siempre deben verificarse con el oyente activo real.
Los gráficos de escritorio pueden requerir una actualización ligera después de los cambios en el modelo del lado del servidor.
Consulta la guía de solución de problemas.
En qué se diferencia de otros MCP
Frente a abaqus-mcp-server
abaqus-mcp-server es un proyecto de estilo de automatización/scripting de interfaz gráfica. Funciona con una interfaz gráfica ya en ejecución y utiliza técnicas de automatización de interfaz gráfica para activar acciones.
comsol-mcp no utiliza automatización de interfaz gráfica al estilo pywinauto para COMSOL. En su lugar, se conecta directamente a COMSOL Multiphysics Server y dirige el mismo modelo del lado del servidor que visualiza Desktop.
Frente a MCP de automatización genérica de COMSOL
Los listados públicos de MCP de COMSOL a menudo enfatizan la amplitud del solucionador, la generación de mallas, la configuración de física y la cobertura de barrido paramétrico.
Este proyecto enfatiza una propuesta de valor diferente:
conexión primero
flujo de trabajo de escritorio visible
modelado que no es de caja negra
estado del modelo compartido entre Desktop y MCP
No es solo "otro MCP de automatización de COMSOL"; se trata específicamente de hacer que el flujo de trabajo sea visible y colaborativo con el cliente de escritorio.
Frente a la antigua ruta por lotes
La antigua ruta por lotes utilizaba:
comsolcompilecomsolbatch
Esa ruta sigue siendo útil para trabajos sin conexión, pero ya no es la identidad pública de este proyecto. En este repositorio, se trata como una referencia heredada en lugar de la línea principal.
Consulta docs/differences.md para una comparación más completa.
Ruta heredada / anterior por lotes
Una ruta interna anterior de comsol-mcp en esta base de código estaba orientada a lotes y envolvía comsolcompile más comsolbatch. Esa ruta heredada intencionalmente no es la cara pública de este repositorio.
Este repositorio se centra en:
COMSOL Multiphysics ServerDesktop como cliente visual
Conexión de MCP al mismo modelo
Atribución
Construido sobre
MPhInspirado en los flujos de trabajo cliente-servidor de COMSOL y exploraciones de MCP relacionadas
No afiliado a COMSOL
No incluye binarios de COMSOL ni activos propietarios
Licencia
MIT. Consulta 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