PyThermoCalcDB-NASA-MCP
Provides tools for calculating thermodynamic properties (H_T, S_T, G_T, Cp_T) and reaction properties (dH_rxn_STD, dS_rxn_STD, dG_rxn_STD, Keq) using NASA-9 polynomial coefficients from an embedded SQLite database, along with validation of externally prepared pyThermoDB YAML reference content.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@PyThermoCalcDB-NASA-MCPCalculate Gibbs free energy of water at 500K"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐งช PyThermoCalcDB-NASA-MCP
PyThermoCalcDB-NASA-MCP is a Model Context Protocol server for running selected
pythermocalcdb-nasa thermodynamic calculations from agents and MCP-compatible
clients.
๐ Overview
The MCP package is an interface and orchestration layer. It validates structured
requests, builds a ModelSource, calls deterministic pythermocalcdb-nasa
functions, and returns JSON-safe results. It does not implement the scientific
calculation itself.
The default source workflow uses the embedded NASA-9 SQLite database included by
pythermocalcdb-nasa. If a component is unavailable locally, the MCP server
returns a structured failure. External data search is not this MCP server's
responsibility; another agent or caller should prepare complete pyThermoDB
REFERENCE content and call the tool with source: "reference".
Use this package to:
Calculate
H_T,S_T,G_T, andCp_Tfor one component.Calculate
dH_rxn_STD,dS_rxn_STD,dG_rxn_STD,Keq, andKeq_vh_shortcutfor reactions.Validate externally prepared pyThermoDB YAML reference content.
Related MCP server: MoziChem-MCP
๐ฆ Installation
pip install pythermocalcdb-nasa-mcpFor local development:
uv syncโถ๏ธ Running
STDIO is the default transport:
pythermocalcdb-nasa-mcp --mode stdioHTTP transport is also supported:
pythermocalcdb-nasa-mcp --mode http --host 127.0.0.1 --port 8000 --path /mcpFrom a local checkout:
uv run pythermocalcdb-nasa-mcp --mode stdio๐ MCP Client Configuration
๐งต STDIO:
{
"mcpServers": {
"pythermocalcdb-nasa": {
"command": "pythermocalcdb-nasa-mcp",
"args": ["--mode", "stdio"]
}
}
}๐ HTTP:
{
"mcpServers": {
"pythermocalcdb-nasa": {
"url": "http://127.0.0.1:8000/mcp"
}
}
}๐ต๏ธ MCP Inspector
You can test the server with the official MCP Inspector.
For direct STDIO testing from a local checkout:
npx @modelcontextprotocol/inspector uv run pythermocalcdb-nasa-mcp --mode stdioFor HTTP testing, start the server first:
uv run pythermocalcdb-nasa-mcp --mode http --host 127.0.0.1 --port 8000 --path /mcpThen connect Inspector to:
http://127.0.0.1:8000/mcp๐ MCP Resources
pythermocalcdb-nasa://references/nasa-requirementsSource policy, NASA symbols, units, temperature ranges, and agent boundaries.
pythermocalcdb-nasa://workflows/species-propertiesWorkflow for
H_T,S_T,G_T, andCp_T.
pythermocalcdb-nasa://workflows/reaction-propertiesWorkflow for
dH_rxn_STD,dS_rxn_STD,dG_rxn_STD,Keq, andKeq_vh_shortcut.
pythermocalcdb-nasa://guidance/agent-checklistChecklist for reliable database-first and reference-backed calls.
๐งฐ MCP Tools
๐ฅ Species tools:
calc_H_Tcalc_S_Tcalc_G_Tcalc_Cp_T
โ๏ธ Reaction tools:
calc_dH_rxn_STDcalc_dS_rxn_STDcalc_dG_rxn_STDcalc_Keqcalc_Keq_vh_shortcut
๐ ๏ธ Utility tool:
check_yaml_reference
๐ Input Model Notes
Calculation tools receive one Pydantic argument named request. They use shared
domain models from pythermodb_settings, including Component, Temperature,
and ComponentKey.
๐๏ธ Database-backed species request:
{
"request": {
"component": {
"name": "carbon dioxide",
"formula": "CO2",
"state": "g"
},
"temperature": {
"value": 300.0,
"unit": "K"
},
"source": "database",
"component_key": "Name-Formula",
"nasa_type": "nasa9",
"basis": "molar"
}
}๐ Reference-backed species request:
{
"request": {
"component": {
"name": "component name from prepared reference",
"formula": "Formula",
"state": "g"
},
"temperature": {
"value": 300.0,
"unit": "K"
},
"source": "reference",
"reference_content": "REFERENCES:\n ...",
"component_key": "Name-Formula",
"nasa_type": "nasa9",
"basis": "molar"
}
}๐๏ธ Database-backed reaction request:
{
"request": {
"name": "Water-Gas Shift Reaction",
"reaction": "CO(g) + H2O(g) => CO2(g) + H2(g)",
"components": [
{"name": "carbon monoxide", "formula": "CO", "state": "g"},
{"name": "dihydrogen monoxide", "formula": "H2O", "state": "g"},
{"name": "carbon dioxide", "formula": "CO2", "state": "g"},
{"name": "dihydrogen", "formula": "H2", "state": "g"}
],
"temperature": {
"value": 398.15,
"unit": "K"
},
"source": "database",
"component_key": "Name-Formula",
"nasa_type": "nasa9"
}
}Use the same reaction request shape with calc_Keq_vh_shortcut when a van't
Hoff shortcut estimate is requested. It returns a dimensionless equilibrium
constant.
Responses follow this contract:
{
"success": true,
"message": "H_T completed successfully.",
"results": {
"operation": "H_T",
"value": 0.0,
"unit": "J/mol"
},
"analysis": {
"source": "database"
},
"warnings": []
}โ Best Practices
Use
source: "database"first for NASA-9 data in supportedg,l, andsphases.Use
source: "reference"only with complete externally preparedreference_content.Do not ask this MCP server to search external scientific data.
Keep temperature inputs in Kelvin.
Make sure every reaction species appears in both the reaction equation and
components.Use
nasa_type: "nasa9"with the database source.Check
success,message, andwarningsbefore reporting results.
๐งช Development Quick Check
python -m py_compile pythermocalcdb_nasa_mcp/server.py
python -m py_compile pythermocalcdb_nasa_mcp/interface/core.py
python -m py_compile pythermocalcdb_nasa_mcp/models/nasa.py
python -m unittest discover tests๐ Examples
Example payload shapes are available in examples/request_payloads.py.
๐ License
This project is licensed under the Apache License 2.0. See LICENSE.
๐ค Author
Maintenance
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
- AlicenseBqualityDmaintenanceEnables AI assistants to perform complex chemical engineering calculations including thermodynamic modeling, equation of state calculations, phase equilibrium computations, and vapor-liquid equilibrium analysis. Built on the MoziChem framework to bridge AI language models with specialized chemical engineering tools.64MIT
- Alicense-qualityDmaintenanceA collection of MCP servers for chemical engineering and chemistry applications, enabling AI assistants to perform thermodynamic calculations, equation of state modeling, and phase equilibrium computations.MIT
- Alicense-qualityDmaintenanceA modular Python toolkit exposing chemical engineering calculations (thermodynamics, flash equilibria, property databases) as MCP servers for AI and application integration.6MIT
- AlicenseAqualityBmaintenanceAn MCP server that wraps Cantera to enable LLMs to perform accurate thermodynamic, transport, equilibrium, and chemical kinetics calculations.154MIT
Related MCP Connectors
Science MCP โ free science data APIs
Materials MCP โ computed (DFT) materials structures & thermodynamic properties.
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sinagilassi/PyThermoCalcDB-NASA-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server