MCP.Market

petromcp MCP server

by ameyxd·io.github.ameyxd/petromcp·v0.8.1·2 stars

Local-first MCP server: read LAS well logs and DLIS files from your own disk.

A88/100grade A
What users say
No reviews yet
Be the first
Safety scan
A88/100

full report

Adoption
Growing

2 stars21 downloads/wk

Reviews

Write one

Nobody has reviewed petromcp yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

petromcp tools (9)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • compare_well_logs

    Compare two LAS files. Reports common curves, depth overlap, unit consistency, and human-readable issue flags.

  • convert_units

    Convert a value between supported petroleum units. Strict case-sensitive matching. Supported pairs: ft<->m, psi<->kPa, psi<->bar, bbl<->m3, degF<->degC, mD<->m2.

  • list_dlis_channels

    Every channel with its frame, logical file, units, and length.

  • list_supported_units

    Every unit pair `convert_units` accepts, with its physical quantity.

  • read_dlis_channel

    Read one channel's values and its index.

  • read_dlis_file

    Structure of a DLIS file: logical files, frames, index types, depth ranges, and channel counts. No channel values.

  • read_las_curve

    Read a single curve. Defaults to a 500-sample downsample.

  • read_las_file

    Header-level summary of a LAS file. No curve data.

  • summarize_las_curves

    Per-curve summary statistics for a LAS file.

Public scan report

scanner v0.1.9 · 2026-09-24 · same rubric, same numbers if you re-run it

no findings
  • Code scan30 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 52 days ago12/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 88/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How petromcp compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
88/100
higher than 75% of 48,255 servers
Tools
9
the typical server has 7
Tools that change things
0%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
2
more than 75% of 28,688 servers
Downloads a week
21
more than 8% of 12,191 servers with a package

What its tools let an agent do: 9 read

Install petromcp in Claude Code, Cursor or VS Code

claude mcp add petromcp -- uvx petroleum-mcp
Add to Cursor

What the publisher says

From the petromcp repository's README, as published. We do not edit it. Read it on GitHub

petromcp

Read well logs with Claude without the data ever leaving your machine.

petromcp is an MCP server for petroleum data formats, built for teams whose files legally cannot be uploaded to a cloud service. No telemetry, no phone-home, no automatic updates, and a default-deny path allowlist that refuses to open anything you have not explicitly permitted. LAS today; DLIS, SEG-Y, and pump cards next.

If you can upload your data somewhere, you have more options than this. If you can't, this was written for you.

What this gives you

LLM hosts cannot read binary or semi-structured petroleum formats. petromcp wraps the established open-source parsers — lasio and dlisio today, with segyio queued for a later slice — and exposes them as MCP tools, so you can have a conversation with your data instead of copy-pasting curve values into chat.

What "local-first" means here, concretely

Not a posture. Four things you can verify in the source:

directory, and every tool routes through one validator that resolves symlinks before checking, so a link inside an allowed directory cannot reach outside it. There is no environment variable that widens the allowlist and no tool that changes it at runtime.

  • Default deny. A fresh install can read nothing. Access is granted per

tools ship openWorldHint: false and readOnlyHint: true, so your host can verify that claim rather than take it.

  • No network, declared. petromcp opens no outbound connections. All five

name, and the resolved path.

  • An audit trail. Every tool call is logged with a timestamp, the tool

original_count, so a 20,000-point log cannot silently dump into a context window.

  • Bounded output. Curve reads are capped and report downsampled and

The threat model, and what does not count as a vulnerability, are in SECURITY.md. Read docs/DATA_PRIVACY.md before pointing this at real data — it is authoritative, and if the code contradicts it the code is the bug.

Install

Requires Python 3.10+ and uv.

Add petromcp to your MCP host's config — no clone, no build:

{
  "mcpServers": {
    "petromcp": {
      "command": "uvx",
      "args": ["petroleum-mcp", "serve"]
    }
  }
}

On macOS that file is ~/Library/Application Support/Claude/claudedesktopconfig.json. Restart the host afterwards. macOS notes and troubleshooting: docs/INSTALL.md.

To work on petromcp rather than just use it:

git clone https://github.com/ameyxd/petromcp cd petromcp make setup make install-claude

Configure

By default petromcp can read nothing. Tell it which directories are fair game:

uvx petroleum-mcp config init uvx petroleum-mcp config add-path ~/petroleum/wells

Or, if you want to try it without your own data, generate the synthetic sample from a checkout and allowlist that:

make generate uvx petroleum-mcp config add-path "$(pwd)/examples/sample_data"

Restart your MCP host after editing the allowlist — it is read once at startup.

Use

Open a new conversation and ask, in plain language:

What's wrong with this well log? /path/to/well.las Compare these two wells: /path/to/A.las and /path/to/B.las Convert 1500 psi to kPa.

Claude picks the right tool, reads the file through petromcp, and answers.

Worked examples, with real tool output rather than prose:

density gap, a washout, and a gamma ray spike

  • QC a well log — finds a planted

overlap, a missing curve, and a unit mismatch that is invisible in one file

  • Compare two wells — depth

files, frames, and what happens when a channel name is ambiguous

  • Unit conversion
  • Read a DLIS file — logical

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

petromcp: common questions

Is petromcp MCP server safe?
Yes, by our scan: it is graded A (88/100). Read the petromcp safety report
How do I install petromcp?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does petromcp need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is petromcp maintained?
The last commit was 93 days ago (2026-08-03). The latest release is v0.8.1.
How does petromcp compare with other MCP servers?
safety score 88/100 (higher than 75% of 48,255 servers); tools 9 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.