Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

PyLops-MCP

PyPI

MCP server exposing PyLops operators and solvers in a structured way, so agents and users can query them instead of web searching or crawling files.

The catalog is built by introspecting the installed PyLops (numpydoc) and dumped to pylops_mcp/data/index.json (make index).

Tools

Tool Arguments Description
search query (str), kind ("all" | "operator" | "solver" | "workflow", default "all") Case-insensitive substring search over names and docstring summaries. Returns up to 20 hits (name, kind, module, summary), name matches first.
list_operators module (str, optional, e.g. "basicoperators") Sorted list of operator names, optionally filtered by module.
list_solvers module (str, optional, e.g. "sparsity") Sorted list of solver names, optionally filtered by module.
list_workflows module (str, optional) Sorted list of workflow names (inversion/decomposition helpers such as MDD, PrestackInversion), optionally filtered by module.
get_operator name (str) Signature, parameters, notes and examples of an operator. Lookup is case-insensitive.
get_solver name (str) Signature, parameters, notes and examples of a solver. Lookup is case-insensitive.
get_workflow name (str) Signature, parameters, notes and examples of a workflow. Lookup is case-insensitive.

All responses include pylops_version. An unknown name returns an error together with up to 5 close-match suggestions.

Operator descriptions are also exposed as the MCP resource pylops://operators/{name}.

Installation

For Users

No clone or index build is needed: the PyPI release ships a prebuilt index.json (rebuilt by CI against the latest PyLops at release time).

Claude Code:

claude mcp add --scope user pylops -- uvx pylops-mcp

Claude Desktop: add to claude_desktop_config.json:

{
  "mcpServers": {
    "pylops": { "command": "uvx", "args": ["pylops-mcp"] }
  }
}

Codex:

codex mcp add pylops -- uvx pylops-mcp

or add to ~/.codex/config.toml:

[mcp_servers.pylops]
command = "uvx"
args = ["pylops-mcp"]

OpenCode: add to opencode.json (project) or ~/.config/opencode/opencode.json (global):

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pylops": { "type": "local", "command": ["uvx", "pylops-mcp"], "enabled": true }
  }
}

PI: PI has no built-in MCP support, so first install the pi-mcp-adapter extension:

pi install npm:pi-mcp-adapter

then add to ~/.pi/agent/mcp.json (global) or .pi/mcp.json (project):

{
  "mcpServers": {
    "pylops": { "command": "uvx", "args": ["pylops-mcp"] }
  }
}

For Developers

This project is developed with Claude Code, so all the commands below are for Claude Code only. For other clients, translate the uv run ... command into that client's MCP configuration (see For Users).

Clone the repository first; the commands below assume it lives at /path/to/pylops-mcp.

1. This project only

Run from inside the repository folder. The server is registered for this project only (--scope local, the default), and uv run uses the project's .venv. Nothing is installed globally.

claude mcp add pylops -- uv run pylops-mcp

2. All projects, running from source

Register the server for every project and tell uv where the project lives, so it works from any folder and always runs your current source:

claude mcp add --scope user pylops -- uv run --directory /path/to/pylops-mcp pylops-mcp

3. All projects, as a global tool

Install pylops-mcp as a standalone tool and register the plain command (add -e to the install to pick up source changes without reinstalling):

uv tool install /path/to/pylops-mcp
claude mcp add --scope user pylops -- pylops-mcp

Rebuilding the index

Running make index upfront is optional: the repository ships a prebuilt index.json, and if it is missing the server falls back to introspecting PyLops live at every startup (slower). Rebuild it with make index whenever you change the introspection code or upgrade PyLops, so the served docs match the installed version.

Releasing

Versions come from git tags (hatch-vcs):

  • dry run: Actions → Release → Run workflow → testpypi
  • release: Releases → Draft a new release → create tag → Publish release (publishes to PyPI)

Metadata

Release files for pylops-mcp 0.2.1.dev0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pylops-mcp 0.2.1.dev0
File Size Uploaded Provenance
pylops_mcp-0.2.1.dev0.tar.gz 60.8 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pylops-mcp 0.2.1.dev0
File Interpreter ABI Platform
pylops_mcp-0.2.1.dev0-py3-none-any.whl Python 3 none any Details

Total release size: 122.5 kB

Release files / pylops_mcp-0.2.1.dev0.tar.gz

Download URL pylops_mcp-0.2.1.dev0.tar.gz
Size 60.8 kB
Tags Source
SHA-256 checksum
How to use checksums
45b2e88304017db6dfad5a651c96396028efd96a7bc4f774f647bfb8883a0edb
BLAKE2b-256 checksum
How to use checksums
f04cf76e17eba07e6c5443ef75a0260d56146b0da11f33e5ede1f9a1f2d52acf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Release files / pylops_mcp-0.2.1.dev0-py3-none-any.whl

Download URL pylops_mcp-0.2.1.dev0-py3-none-any.whl
Size 61.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d7a4b86a892ddfb8880b73108ea829e0d063c92fd91513283438c183f7341505
BLAKE2b-256 checksum
How to use checksums
18be613d238cdc6dd74d4cc51639af759511606264c953a54df3de8821caf4e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

Security for pylops-mcp 0.2.1.dev0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for pylops_mcp-0.2.1.dev0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page