Atlas / MCP servers / gabrielserrao / PyResToolbox

PyResToolboxSAFE

mcp/gabrielserrao/pyrestoolbox

Model Context Protocol (MCP) server for AI-powered reservoir engineering calculations. Integrates pyResToolbox with Claude AI for PVT analysis, well performance, simulation support, and more. 47 production-ready tools using industry-standard correlations.

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
108 106r · 2w · 0d
Transport
—
License
GPL-3.0
Stars
46
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Bring Reservoir Engineering Calculations to AI

Power your AI assistants with industry-standard petroleum engineering calculations

[](https://www.gnu.org/licenses/gpl-3.0) [](https://www.python.org/downloads/) [](TESTRESULTS.md) [](https://github.com/jlowin/fastmcp) [](PRODUCTIONREADY.md)

[](https://modelcontextprotocol.io/) [](https://github.com/mwburgoyne/pyResToolbox) [](https://buymeacoffee.com/gabrielsero)

Quick Start • Features • Examples • Documentation • Contributing

108 Production-Ready Tools | Field & Metric Units | Zero Configuration

PVT Analysis • Well Performance • Nodal Analysis • DCA • Material Balance • Simulation Support • Brine Properties • Geomechanics • Heterogeneity Analysis

A production-ready Model Context Protocol (MCP) server that gives AI agents like Claude access to the comprehensive reservoir engineering library pyResToolbox. Now Claude can perform sophisticated PVT calculations, well performance analysis, and reservoir simulation tasks through natural conversation.

![pyResToolbox MCP D

Read from source at commit 0715a5ad9b7fOBSERVED · 2026-10-08
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add pyrestoolbox-mcp -- uvx pyrestoolbox-mcp
claude-desktop
{
  "mcpServers": {
    "pyrestoolbox-mcp": {
      "command": "uvx",
      "args": [
        "pyrestoolbox-mcp"
      ]
    }
  }
}
03

Exposed tools (108)

106 read · 2 write · 0 destructive.

ToolRiskDescription
arps_cumulativereadCalculate Arps cumulative production at specified time(s).
arps_ratereadCalculate Arps decline rate at specified time(s).
beta_to_lorenzreadConvert Dykstra-Parsons beta to Lorenz coefficient.
calculate_brine_propertiesreadCalculate properties of CH4 or CO2 saturated brine.
check_let_physicalreadCheck if LET parameters produce physically valid relative permeability.
co2_brine_mutual_solubilityreadCalculate CO2-brine mutual solubilities and properties.
create_gas_pvtwriteCreate a gas PVT object and compute properties at specified conditions.
create_oil_pvtwriteCreate an oil PVT object and compute properties at specified pressures.
decline_forecastreadGenerate a production rate and cumulative forecast from decline parameters.
duong_ratereadCalculate Duong decline rate for unconventional reservoirs.
estimated_ultimate_recoveryreadCalculate Estimated Ultimate Recovery (EUR) for Arps decline.
evaluate_jerauldreadEvaluate Jerauld relative permeability model.
evolved_gas_sgreadCalculate evolved gas specific gravity.
extract_eclipse_problem_cellsreadExtract convergence problem cells from ECLIPSE/Intersect PRT file.
fit_declinereadFit a decline curve model to production rate vs time data.
fit_decline_cumulativereadFit a decline curve model to rate vs cumulative production data.
fit_ratioreadFit a ratio model (GOR, WOR, CGR) to production data.
fit_relative_permeabilityreadFit relative permeability curve to measured data.
fit_relative_permeability_bestreadFind best-fit relative permeability model from all available families.
flow_fractions_from_lorenzreadGenerate flow fractions from Lorenz coefficient.
flowing_bhpreadCalculate flowing bottom hole pressure using VLP correlations.
gas_compressibilityreadCalculate gas compressibility (Cg).
gas_critical_propertiesreadCalculate gas pseudo-critical properties (Tc and Pc).
gas_delta_pseudopressurereadCalculate delta-pseudopressure between two pressures.
gas_densityreadCalculate gas density (ρg) at reservoir conditions.
gas_formation_volume_factorreadCalculate gas formation volume factor (Bg).
gas_fws_sgreadEstimate free-water-saturated gas specific gravity from separator data.
gas_hydrate_predictionreadPredict gas hydrate formation conditions, water balance, and inhibitor requirements.
gas_material_balancereadPerform P/Z gas material balance for OGIP estimation.
gas_pressure_from_pzreadCalculate pressure from P/Z value.
gas_pseudopressurereadCalculate gas pseudopressure difference (m(p)).
gas_rate_linearreadCalculate gas production rate for linear flow.
gas_rate_radialreadCalculate gas production rate for radial flow (vertical well).
gas_sg_from_compositionreadCalculate gas specific gravity from composition.
gas_sg_from_gradientreadCalculate gas specific gravity from pressure gradient.
gas_viscosityreadCalculate gas viscosity (μg).
gas_water_contentreadCalculate water content of natural gas.
gas_z_factorreadCalculate gas compressibility factor (Z-factor).
generate_aquifer_influencereadGenerate Van Everdingen & Hurst aquifer influence functions.
generate_black_oil_tablereadGenerate comprehensive black oil PVT table.
generate_black_oil_table_ogreadGenerate oil-gas black oil PVT tables (PVTO/PVDO + PVDG).
generate_layer_distributionreadGenerate layered permeability distribution from Lorenz coefficient.
generate_pvtw_tablereadGenerate PVTW water PVT table for reservoir simulation.
generate_rel_perm_tablereadGenerate relative permeability table for reservoir simulation.
generate_vfp_inj_tablereadGenerate VFPINJ table for ECLIPSE/Intersect simulation.
generate_vfp_prod_tablereadGenerate VFPPROD table for ECLIPSE/Intersect simulation.
geomech_breakdown_pressurereadCalculate formation breakdown pressure for hydraulic fracturing.
geomech_breakout_stress_inversionreadEstimate horizontal stress magnitude from observed breakout width.
geomech_breakout_widthreadCalculate borehole breakout width using Kirsch elastic solution.
geomech_critical_drawdownreadCalculate critical drawdown pressure before sand/shear failure at wellbore.
geomech_critical_mud_weight_collapsereadCalculate critical mud weight to prevent borehole collapse.
geomech_deviated_well_stressreadTransform principal stresses to deviated wellbore coordinate system.
geomech_dynamic_to_static_modulireadConvert dynamic elastic moduli (from logs) to static moduli (from core tests).
geomech_effective_stressreadCalculate effective stress from total stress and pore pressure.
geomech_elastic_moduli_conversionreadConvert between elastic moduli (Young
geomech_fault_stabilityreadAnalyze fault stability using Coulomb failure stress (CFS) criterion.
geomech_fracture_gradientreadCalculate fracture gradient and maximum allowable mud weight.
geomech_horizontal_stressreadCalculate horizontal stresses from vertical stress using elastic theory.
geomech_hydraulic_fracture_widthreadEstimate hydraulic fracture width from treating pressure and geometry.
geomech_leak_off_pressurereadAnalyze leak-off test (LOT) or formation integrity test (FIT) data.
geomech_pore_compressibilityreadCalculate effective pore compressibility from rock and fluid properties.
geomech_pore_pressure_eatonreadCalculate pore pressure using Eaton
geomech_reservoir_compactionreadCalculate reservoir compaction from pressure depletion.
geomech_rock_strength_mohr_coulombreadCalculate rock strength using Mohr-Coulomb failure criterion.
geomech_safe_mud_weight_windowreadCalculate safe mud weight window from pore pressure and fracture gradient.
geomech_sand_productionreadPredict sand production potential and critical drawdown pressure.
geomech_shear_failure_criteriareadEvaluate multiple shear failure criteria for rock strength comparison.
geomech_stress_pathreadCalculate stress changes during reservoir depletion or injection.
geomech_stress_polygonreadCalculate stress polygon bounds for frictional equilibrium constraints.
geomech_tensile_failurereadPredict tensile failure and fracture initiation at wellbore wall.
geomech_thermal_stressreadCalculate thermal stress effects on wellbore and formation.
geomech_ucs_from_logsreadEstimate Unconfined Compressive Strength (UCS) from well log data.
geomech_vertical_stressreadCalculate vertical stress (overburden) from depth and formation properties.
get_component_propertiesreadGet critical properties for hydrocarbon components from database.
ipr_curvereadGenerate an Inflow Performance Relationship (IPR) curve.
lorenz_from_flow_fractionsreadCalculate Lorenz coefficient from flow and permeability fractions.
lorenz_to_betareadConvert Lorenz coefficient to Dykstra-Parsons beta parameter.
oil_api_from_sgreadConvert oil specific gravity to API gravity.
oil_bubble_pointreadCalculate oil bubble point pressure (Pb).
oil_compressibilityreadCalculate oil compressibility (Co).
oil_densityreadCalculate oil density (ρo) at reservoir conditions.
oil_formation_volume_factorreadCalculate oil formation volume factor (Bo).
oil_harmonize_pvtreadAuto-harmonize oil PVT parameters for internal consistency.
oil_material_balancereadPerform Havlena-Odeh oil material balance for OOIP estimation.
oil_rate_linearreadCalculate oil production rate for linear flow.
oil_rate_radialreadCalculate oil production rate for radial flow (vertical well).
oil_rs_at_bubble_pointreadCalculate solution GOR at bubble point using Standing correlation.
oil_sg_from_apireadConvert API gravity to oil specific gravity.
oil_sg_from_jacobyreadCalculate oil specific gravity from molecular weight and Jacoby aromaticity.
oil_solution_gorreadCalculate solution gas-oil ratio (Rs) at specified pressure.
oil_twu_critical_propertiesreadCalculate critical properties using Twu (1984) correlation.
oil_viscosityreadCalculate oil viscosity (μo).
operating_pointreadFind the VLP/IPR operating point (intersection of inflow and outflow curves).
outflow_curvereadGenerate a VLP outflow (tubing performance) curve.
parameter_sweepreadSweep a single parameter across a range of values for any pyResToolbox function.
rachford_rice_flashreadSolve Rachford-Rice equation for vapor-liquid equilibrium.
ratio_forecastreadEvaluate a fitted ratio model at given values.
recommend_gas_methodsreadRecommend Z-factor and critical property methods for a gas composition.
recommend_methodsreadRecommend the best PVT and VLP correlations for given fluid properties.
recommend_oil_methodsreadRecommend oil PVT correlation methods based on API gravity.
recommend_vlp_methodreadRecommend VLP multiphase flow correlation.
soreide_whitson_vlereadCalculate Soreide-Whitson VLE brine properties with hydrocarbon gas.
stock_tank_gas_sgreadCalculate stock tank gas specific gravity.
stock_tank_incremental_gorreadCalculate incremental GOR from separator to stock tank.
tornado_sensitivityreadCompute tornado-chart sensitivities for multiple parameters.
validate_gas_gravitiesreadValidate and impute missing gas gravities.
validate_simulation_deckreadValidate and process ECLIPSE simulation deck with INCLUDE files.
weighted_average_gas_sgreadCalculate weighted average gas specific gravity from separator stages.
04

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (2 observation(s))
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (12)

MEDIUMInventory / provenance · inv.binary · CWE-1104
SKILL/pyrestoolbox-mcp.skill
pyrestoolbox-mcp.skill
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.hidden_file · CWE-1104
.env.docker
.env.docker
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
.uvrc
.uvrc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
examples/geomechanics_workflow.py:33
sonic_observed = 100.0  # μs/ft (slower than normal = overpressure)
LOWObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
examples/geomechanics_workflow.py:34
sonic_normal = 70.0  # μs/ft (normal compaction trend)
LOWObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
examples/geomechanics_workflow.py:89
print(f"Sonic travel time (observed): {sonic_observed:.1f} μs/ft")
LOWObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
examples/geomechanics_workflow.py:90
print(f"Sonic travel time (normal): {sonic_normal:.1f} μs/ft")
LOWObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
examples/geomechanics_workflow.py:122
print(f"σv (vertical): {vertical_stress:.0f} psi")
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
CONTRIBUTING.md:56
curl -LsSf https://astral.sh/uv/install.sh | sh
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
QUICKSTART.md:9
curl -LsSf https://astral.sh/uv/install.sh | sh
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
README.md:91
curl -LsSf https://astral.sh/uv/install.sh | sh
LOWSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
examples/README.md:42
curl -LsSf https://astral.sh/uv/install.sh | sh

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha 0715a5ad9b7ffull audit observations/trust-audit/mcp-server/gabrielserrao__pyrestoolbox.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-080715a5ad9b7fSAFEB89first audit
06

Questions

What is the PyResToolbox MCP server?

Model Context Protocol (MCP) server for AI-powered reservoir engineering calculations. Integrates pyResToolbox with Claude AI for PVT analysis, well performance, simulation support, and more. 47 production-ready tools using industry-standard correlations.

What tools does PyResToolbox expose?

108 in total: 106 read-only, 2 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is PyResToolbox safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does PyResToolbox need?

No credential environment variables were found in its source, so it appears to need none.

How current is this page?

The grade is for one exact copy of the source (0715a5ad9b7f), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement