Skip to main content

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 one file per PyLops release, pylops_mcp/data/indexes/<version>.json (make index; releases from 2.4.0 are shipped).

Tools

Tool Arguments Description
list_versions none PyLops versions that have an index, and the default (the latest).
search query (str), kind ("all" | "operator" | "solver" | "workflow", default "all"), pylops_version (str, optional) 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"), pylops_version (str, optional) Sorted list of operator names, optionally filtered by module.
list_solvers module (str, optional, e.g. "sparsity"), pylops_version (str, optional) Sorted list of solver names, optionally filtered by module.
list_workflows module (str, optional), pylops_version (str, optional) Sorted list of workflow names (inversion/decomposition helpers such as MDD, PrestackInversion), optionally filtered by module.
get_operator name (str), pylops_version (str, optional) Signature, parameters, notes and examples of an operator. Lookup is case-insensitive.
get_solver name (str), pylops_version (str, optional) Signature, parameters, notes and examples of a solver. Lookup is case-insensitive.
get_workflow name (str), pylops_version (str, optional) Signature, parameters, notes and examples of a workflow. Lookup is case-insensitive.

Every tool except list_versions takes an optional pylops_version (e.g. "2.6", resolved to the highest matching release; default: the latest). An unknown version returns an error with the available_versions. All responses include the resolved 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} (latest) and pylops://{pylops_version}/operators/{name}.

Installation

For Users

No clone or index build is needed: the PyPI release ships prebuilt indexes for PyLops 2.4.0 and later (CI builds any missing release 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 prebuilt indexes in pylops_mcp/data/indexes/, and if there are none the server falls back to introspecting the installed PyLops live at every startup (slower).

  • make index indexes the PyLops installed in the project environment.
  • make index-all VERSIONS="2.4.0 2.5.0" builds specific releases, each in an isolated environment.
  • make index-missing builds every PyPI release (>= 2.4.0) that has no index yet.

Indexes of released versions are kept as they are; rebuild one only if you change the introspection code.

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.3.0

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.3.0
File Size Uploaded Provenance
pylops_mcp-0.3.0.tar.gz 247.2 kB With provenance Details

Built distribution (wheel)

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

Total release size: 500.3 kB

Release files / pylops_mcp-0.3.0.tar.gz

Download URL pylops_mcp-0.3.0.tar.gz
Size 247.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d5db83b227863397f165c3fe466d1523c5336ce3ed180f657f56a60f3922c4da
BLAKE2b-256 checksum
How to use checksums
3fc75fffc0ad3b4694b9c40b5c9cfe0370b74388d7989ddbec5945b5b376c56f
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.3.0-py3-none-any.whl

Download URL pylops_mcp-0.3.0-py3-none-any.whl
Size 253.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
03c1305bbf886b10b0d6746b38162978a0b75c699e344dc1df99e9102ce3c64b
BLAKE2b-256 checksum
How to use checksums
9b0bc84ed1d3d91bf3c195c68e93a368790dc4c452da76fca7ec484eb0a5150e
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.3.0

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.3.0.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