PyMemSim-MCP is an MCP-enabled extension of PyMemSim that integrates model-source-driven thermodynamic data with membrane process simulations.It enables LLMs and agents to interact with membrane models through standardized, machine-readable inputs, ensuring unit consistency, reproducibility, and reliable AI-assisted workflows.
Project description
PyMemSim-MCP
PyMemSim-MCP exposes PyMemSim membrane simulation capabilities through an MCP server.
Overview 🌐
PyMemSim-MCP is a next-generation framework that brings the Model Context Protocol into chemical engineering modeling and simulation, specifically for membrane-based separation systems.
Built on top of PyMemSim, this package introduces a model-source-driven architecture in which thermodynamic data, transport properties, and governing equations are defined externally in a structured, machine-readable format (e.g., YAML). These model sources are dynamically constructed using tools such as PyThermoLinkDB and PyThermoDB, and then supplied, alongside conventional inputs like temperature, pressure, and composition, to simulation workflows.
Unlike traditional tightly coupled simulation tools, PyMemSim-MCP decouples data, equations, and numerical solvers, enabling:
- ✅ Consistent and unit-safe thermodynamic definitions across simulations
- 🔗 Flexible integration with multiple modeling packages and workflows
- ⚙️ Solver-agnostic execution of mass and heat balance equations
- 🔍 Transparent and interpretable simulation pipelines
A key innovation of PyMemSim-MCP is its compatibility with agentic workflows, where specialized agents can:
- 🧠 Extract and structure thermodynamic data from unstructured sources into validated model sources
- 🤖 Interact with MCP-enabled endpoints to perform simulations, sensitivity analysis, and optimization
This approach addresses critical gaps in current LLM-integrated engineering tools, where inconsistencies in data formats, units, and equations often lead to unreliable results. By enforcing a unified scientific contract, PyMemSim-MCP allows LLMs to control both conventional inputs and structured model sources before executing physics-based computations, significantly improving robustness and reproducibility.
PyMemSim-MCP is particularly suited for:
- 🧪 Membrane process modeling (e.g., hollow fiber modules, gas separation)
- 🤝 AI-assisted simulation workflows
- 🚀 Rapid prototyping and validation of process models
- 🎓 Educational and research applications in computational chemical engineering
Overall, PyMemSim-MCP represents a step toward trustworthy AI-driven simulation environments, where domain knowledge, data, and numerical methods are seamlessly integrated under a standardized and extensible framework.
Requirements 📋
- Python
>=3.11 pip(oruv)
Install the package 📦
pip install pymemsim-mcp
This installs the CLI entrypoint:
pymemsim-mcp
Start / Activate the MCP Server ▶️
The server entrypoint is:
- module:
python -m pymemsim_mcp.server - script:
pymemsim-mcp
Both support the same options.
Case A: STDIO transport (recommended for MCP desktop/agent clients) 🧵
pymemsim-mcp --mode stdio
Equivalent:
python -m pymemsim_mcp.server --mode stdio
Case B: HTTP transport (for network-accessible clients) 🌍
pymemsim-mcp --mode http --host 127.0.0.1 --port 8000 --path /mcp
Equivalent:
python -m pymemsim_mcp.server --mode http --host 127.0.0.1 --port 8000 --path /mcp
CLI Options ⌨️
--mode:stdioorhttp(default:stdio)--host: HTTP bind host (default:127.0.0.1)--port: HTTP bind port (default:8000)--path: HTTP endpoint path (default:/mcp)
MCP Client Configuration Examples 🔌
STDIO client config (generic)
{
"mcpServers": {
"pymemsim": {
"command": "pymemsim-mcp",
"args": ["--mode", "stdio"]
}
}
}
HTTP client config (generic)
{
"mcpServers": {
"pymemsim": {
"url": "http://127.0.0.1:8000/mcp"
}
}
}
Available Tool 🧩
simulate_gas_hfm: build thermo model source from reference content and run gas hollow-fiber membrane simulation.
Development Quick Check ✅
python -m py_compile pymemsim_mcp/server.py
python -m py_compile pymemsim_mcp/interface/gas_hfm.py
Troubleshooting 🩺
-
pymemsim-mcp: command not found- Run
pip install -e .in the active environment. - Confirm environment is activated.
- Run
-
Port already in use (HTTP mode)
- Change port, for example:
--port 8010.
- Change port, for example:
-
Import errors
- Reinstall dependencies:
pip install -e ..
- Reinstall dependencies:
❓ FAQ
For any questions, contact me on LinkedIn.
📄 License
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
👨💻 Authors
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pymemsim_mcp-0.1.1.tar.gz.
File metadata
- Download URL: pymemsim_mcp-0.1.1.tar.gz
- Upload date:
- Size: 19.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d20390c1649992358759e09d157546bcc61e1b25272819e455b76e97a2a5560
|
|
| MD5 |
e162dd7ea90cf6b8329222a1e164cfe2
|
|
| BLAKE2b-256 |
3c262996bb28a0e26038244d49e47d3893cf85975f5a941200ea925c21089e27
|
File details
Details for the file pymemsim_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: pymemsim_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 20.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb0b95343a65717a48c224765f61542199dc8be115cbf51a9afb277fb9cdea08
|
|
| MD5 |
98bf4172f00f24ffb46d1f68b3cdc4d8
|
|
| BLAKE2b-256 |
fed37802cdf2b6db30c6433e7de5f19b7316b25880a4167034a9951a297f77c0
|