Skip to main content

MCP for OpenFilters

An unofficial connector built on OpenFilters: not affiliated with or endorsed by the OpenFilters authors or Polytechnique Montréal.

Design, simulate and optimize optical thin-film coatings by talking to Claude.

This project is an MCP server around the calculation core of OpenFilters (Stéphane Larouche and Ludvik Martinu, Polytechnique Montréal), ported to Python 3 and run without its GUI. Claude plans the work and reads compact summaries; the server does the computing — in parallel on all CPU cores — and writes full results to disk, including .ofp project files that open in the OpenFilters GUI.

Claude orchestrates; the server computes. One tool call can launch a whole campaign.

Quick start

Pick the one that matches how you use Claude (details under Installation):

You use Do this
Claude Desktop Download mcp-for-openfilters-<version>.mcpb from the latest release and open it: Claude Desktop installs the extension.
Claude Code claude mcp add --scope user mcp-for-openfilters -- uvx mcp-for-openfilters (needs uv), or the plugin: /plugin marketplace add BBrunoEsteves/mcp-for-openfilters, then /plugin install mcp-for-openfilters@mcp-for-openfilters
Any MCP client, or no uv Run uvx mcp-for-openfilters, pip install mcp-for-openfilters (PyPI), or the installer from the release page, which also registers it in Claude Desktop and Claude Code.

Then, in a new chat: "Run the MCP for OpenFilters server_info tool", and try "Design an antireflection coating for BK7 from 430 to 670 nm with TiO2 and SiO2." It is also listed in the official MCP Registry as io.github.BBrunoEsteves/mcp-for-openfilters.

Built and tested with Claude. The server follows the open MCP standard, but it has so far been developed and tested only with Claude (Claude Desktop and Claude Code). Other MCP clients may work, but they are untested: tool descriptions, plots and long-running jobs may behave differently there.

What it can do

Area Tools
Materials list_materials, get_material_index, add_material (constant, Cauchy, Sellmeier, n,k tables from files), search_refractiveindex + import_refractiveindex_material (any of the ~3,500 entries of the refractiveindex.info database, downloaded on demand)
Single design describe_design, compute_spectrum (R/T/A, phase, GD, GDD; s/p/unpolarized or any polarization angle; any angle of incidence; reverse side), compute_angle_scan, compute_color, compute_electric_field, compute_monitoring_curves (chosen wavelengths or spectroscopic; reverse side)
Targets & merit evaluate_design, layer_sensitivity
Optimization optimize_design — OpenFilters' refinement, needle and step methods
Temperature thermal_sensitivity (how a peak moves per index and thickness change of each material; dλ/dT, kelvin per FWHM, athermal dn/dT), thermal_sweep (peak versus temperature) — tunable and athermal filters
Campaigns run_batch (parameter sweeps), run_optimization_campaign (many starts → ranked → optional yield stage), tolerance_analysis (Monte Carlo yield with thickness and index errors), simulate_random_errors (OpenFilters' Preproduction: mean, standard deviation and worst case of the curves)
Jobs job_status, get_results, list_jobs, cancel_job — results survive a server restart
Files load_project, save_project (native .ofp)

Example requests to Claude:

  • "Design a dichroic on BK7 with R > 99 % at 532 and 1064 nm and T > 90 % at 633 nm for 0–20°, at most 40 layers of TiO2/SiO2. Run 100 needle optimizations from random starts and rank the best 10 by yield at ±1 % thickness error."
  • "Add my ALD Al2O3 from this ellipsometry file and sweep the AR coating thickness ±10 %."
  • "Find thin-film HfO2 data on refractiveindex.info, import it and redo the mirror with it."
  • "Where is the electric-field peak of this mirror at 1064 nm, and what monitoring signal should I expect at 633 nm at the end of each layer?"

Ready-made workflows (prompts) appear as / commands in Claude Code and in the attachment menu of Claude Desktop: design an antireflection coating, a mirror, an edge filter or dichroic, a narrow band-pass filter, and review a design for manufacturing. The design-format guide, the material list and the OpenFilters example projects are available as resources (openfilters://guide, openfilters://materials, openfilters://examples/<name>). Long optimizations and yield analyses report progress to apps that show it.

Installation

Requires Python ≥ 3.10. OpenFilters itself does not need to be installed: its calculation engine is built in (the OpenFilters GUI is only useful to open the .ofp files).

Claude Desktop extension (one click)

From the latest release, download mcp-for-openfilters-<version>.mcpb and open it (or drag it onto Claude Desktop's Settings → Extensions). Claude Desktop runs it with uv, which fetches the server from PyPI.

Claude Code plugin

In Claude Code:

/plugin marketplace add BBrunoEsteves/mcp-for-openfilters
/plugin install mcp-for-openfilters@mcp-for-openfilters

The plugin runs the server with uvx (see claude-plugin/README.md for what it runs and downloads).

With uv (one command)

With uv installed, the server runs straight from PyPI, with the right package for your computer chosen automatically:

claude mcp add --scope user mcp-for-openfilters -- uvx mcp-for-openfilters

For Claude Desktop, add to claude_desktop_config.json (Settings → Developer → Edit config), then fully quit and reopen Claude Desktop:

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

uvx keeps its own cached environment; uvx mcp-for-openfilters@latest picks up a new version.

With the installer

From the release page, download install_mcp_for_openfilters.py and the package for your computer (or all .whl files) into one folder, then:

python install_mcp_for_openfilters.py

It creates a private environment in ~/.mcp-for-openfilters, installs the package, registers the server in Claude Desktop (backing up its settings) and Claude Code, and runs a self-test. Then fully quit and reopen Claude Desktop. --uninstall removes it; --from-github downloads the packages with the GitHub CLI.

Packages are built for Windows (64-bit), Linux (x86-64) and macOS (Apple Silicon), Python 3.10–3.14, with the compiled fast core included: no compiler needed.

Manually

pip install mcp_for_openfilters-<version>-<python>-<platform>.whl
claude mcp add --scope user mcp-for-openfilters -- mcp-for-openfilters

For Claude Desktop, add to claude_desktop_config.json (Settings → Developer → Edit config):

{"mcpServers": {"mcp-for-openfilters": {"command": "<full path to mcp-for-openfilters>"}}}

Upgrading from openfilters-mcp (before 0.2.0)

The project was called openfilters-mcp until version 0.2.0. Fully quit Claude Desktop and Claude Code, then run the new installer: it removes the old openfilters registration and the old private environment (~/.openfilters-mcp) and registers mcp-for-openfilters. Your data folder ~/OpenFilters-MCP is kept and still used, and the old OPENFILTERS_MCP_* environment variables are still read. After a manual install, pip uninstall openfilters-mcp and replace the openfilters entry in your Claude settings.

From source (development)

git clone https://github.com/BBrunoEsteves/mcp-for-openfilters
cd mcp-for-openfilters
python -m venv .venv
.venv/Scripts/pip install -e ".[dev]"      # .venv/bin/pip on macOS/Linux
python dev/fetch_compiled.py               # fast C++ core compiled by GitHub Actions (or build it locally)

Configuration

Environment variable Default Meaning
MCP_FOR_OPENFILTERS_HOME ~/MCP-for-OpenFilters data folder: materials/, jobs/, projects/, outputs/
MCP_FOR_OPENFILTERS_WORKERS CPU count − 1 parallel worker processes for jobs

The names used before 0.2.0 (OPENFILTERS_MCP_HOME, OPENFILTERS_MCP_WORKERS) still work, and an existing ~/OpenFilters-MCP folder is used when ~/MCP-for-OpenFilters does not exist.

Conventions

  • wavelengths and thicknesses in nm, angles in degrees, R/T/A as fractions (0–1);
  • complex index N = n − ik (k ≥ 0 absorbs), as in OpenFilters and Macleod;
  • layers are listed from the substrate outward;
  • the merit function is OpenFilters' χ² = Σ ((target − value)/tolerance)², with satisfied inequality targets contributing zero.

A design:

{"substrate": "FusedSilica", "incident_medium": "void", "center_wavelength": 550,
 "layers": [{"material": "TiO2", "thickness": 58.6}, {"material": "SiO2", "qwot": 1}]}

or with a stack formula: {"formula": {"formula": "(HL)^8 H", "materials": {"H": "TiO2", "L": "SiO2"}}}.

Materials given as n,k tables have no data outside their wavelength range. There the design field "table_extrapolation" decides: "hold" (default: n,k stay at the value at the nearest end of the data), "openfilters" (OpenFilters' own extrapolation, identical to its GUI) or "refuse". Every result computed outside the data says so, with the n,k used and what the other choice would give; optimizations, campaigns and yield analyses do not start until the choice is made (Claude asks you).

A target:

{"kind": "R", "from": 1000, "to": 1100, "step": 5, "value": 0.99, "tolerance": 0.005,
 "inequality": ">=", "angle": 0, "polarization": "unpolarized"}

Validation

The test suite (pytest) checks the ported core against analytic results (quarter-wave stacks) and an independent transfer-matrix implementation (dispersive dielectrics, absorbing metals, 0–60°, s/p/unpolarized; agreement < 1e-9) and textbook closed forms (quarter-wave antireflection and absentee layers, V-coat zero, Brewster angle, quarter-wave stack peak reflectance and stop-band width), round-trips every example project through .ofp files, and runs the refinement and needle optimizations of the OpenFilters examples.

How the port was made

src/openfilters_core is generated from the original OpenFilters 1.1.1 sources by tools/port_from_py2.py, an auditable script (mechanical Python 2 → 3 conversions, a short list of targeted fixes, package-relative imports). The _abeles C++ extension uses the Python 3 C-API port by Emil Kleijn; _moremath is ported by the same script. See src/openfilters_core/PROVENANCE.md.

Privacy

Everything runs on your computer: no data is sent anywhere and there is no telemetry. The only network access is downloading public refractiveindex.info data when you ask for it. See PRIVACY.md.

Citing

If you use this in published work, please cite OpenFilters:

S. Larouche and L. Martinu, "OpenFilters: open-source software for the design, optimization, and synthesis of optical filters," Applied Optics 47, C219–C230 (2008).

Contact

  • Bug reports and feature requests: GitHub Issues (please include the output of the server_info tool).
  • Collaboration and other questions: Bruno Esteves, Center for MicroElectroMechanical Systems (CMEMS), University of Minho: mcp.for.openfilters@gmail.com.

License

GPL-2.0-or-later, like OpenFilters. OpenFilters is © Stéphane Larouche; this project is not affiliated with or endorsed by its authors or Polytechnique Montréal.

Metadata

Release files for mcp-for-openfilters 0.2.2

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

Source distribution (sdist)

Source distribution for mcp-for-openfilters 0.2.2
File Size Uploaded Provenance Actions
mcp_for_openfilters-0.2.2.tar.gz 572.2 kB With provenance Details for mcp_for_openfilters-0.2.2.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for mcp-for-openfilters 0.2.2
File Actions
mcp_for_openfilters-0.2.2-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for mcp_for_openfilters-0.2.2-cp314-cp314-win_amd64.whl
mcp_for_openfilters-0.2.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for mcp_for_openfilters-0.2.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
mcp_for_openfilters-0.2.2-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for mcp_for_openfilters-0.2.2-cp314-cp314-macosx_11_0_arm64.whl
mcp_for_openfilters-0.2.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for mcp_for_openfilters-0.2.2-cp313-cp313-win_amd64.whl
mcp_for_openfilters-0.2.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for mcp_for_openfilters-0.2.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
mcp_for_openfilters-0.2.2-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for mcp_for_openfilters-0.2.2-cp313-cp313-macosx_11_0_arm64.whl
mcp_for_openfilters-0.2.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for mcp_for_openfilters-0.2.2-cp312-cp312-win_amd64.whl
mcp_for_openfilters-0.2.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for mcp_for_openfilters-0.2.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
mcp_for_openfilters-0.2.2-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for mcp_for_openfilters-0.2.2-cp312-cp312-macosx_11_0_arm64.whl
mcp_for_openfilters-0.2.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for mcp_for_openfilters-0.2.2-cp311-cp311-win_amd64.whl
mcp_for_openfilters-0.2.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details for mcp_for_openfilters-0.2.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
mcp_for_openfilters-0.2.2-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for mcp_for_openfilters-0.2.2-cp311-cp311-macosx_11_0_arm64.whl
mcp_for_openfilters-0.2.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for mcp_for_openfilters-0.2.2-cp310-cp310-win_amd64.whl
mcp_for_openfilters-0.2.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for mcp_for_openfilters-0.2.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
mcp_for_openfilters-0.2.2-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for mcp_for_openfilters-0.2.2-cp310-cp310-macosx_11_0_arm64.whl

Total release size: 16.9 MB

Release files / mcp_for_openfilters-0.2.2.tar.gz

Download URL mcp_for_openfilters-0.2.2.tar.gz
Size 572.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d3c0e62d90b7ecd52414e2c1070ab8674a5dd557cea5b1d9a88d9b3fc5594f58
BLAKE2b-256 checksum
How to use checksums
93c4952cde682aec47e0f770708658e2ec76bb70afd86e2e7275fc67c159d8df
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp314-cp314-win_amd64.whl

Download URL mcp_for_openfilters-0.2.2-cp314-cp314-win_amd64.whl
Size 961.4 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
99858432a19f818c1bc6d869a29b1c14a9785bd5bf31192a2dbade7777d11a4b
BLAKE2b-256 checksum
How to use checksums
653987694f97b48395820851286a735a4fde75b048d043459decca3de713c8cf
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL mcp_for_openfilters-0.2.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
93669f5a3b22b6f05c882ee8398120a0c22905d9b892790c12a5eb773c081701
BLAKE2b-256 checksum
How to use checksums
2575ea5e42ed232ceee209938c8f5f7fc6d175867f5594eb92da952ff7ae5ccf
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp314-cp314-macosx_11_0_arm64.whl

Download URL mcp_for_openfilters-0.2.2-cp314-cp314-macosx_11_0_arm64.whl
Size 788.8 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8512667229b28bb5b2348cf803cc50a8dc82528dddb878fd44af4103526721d8
BLAKE2b-256 checksum
How to use checksums
020e79a005d63dd966975d53d67f42973ca14f1e288995a6d4d608ed0e5ea974
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp313-cp313-win_amd64.whl

Download URL mcp_for_openfilters-0.2.2-cp313-cp313-win_amd64.whl
Size 951.2 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
ea58b117b8ccca3051304e621df01636fc248ff5a416313a004c46949222209d
BLAKE2b-256 checksum
How to use checksums
4f5e6acba2f03a2ef475dbfb4f76a8c94a08bdb391e46a893d77a0393f2bfc48
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL mcp_for_openfilters-0.2.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d688f6642058f8538d4238ff2009faf920da3657a662b7ec9a074a67efbd7bfd
BLAKE2b-256 checksum
How to use checksums
d8e127927f8ffc0c9953d5f861c138031813c35ad60242aadb8d65b0352642f7
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp313-cp313-macosx_11_0_arm64.whl

Download URL mcp_for_openfilters-0.2.2-cp313-cp313-macosx_11_0_arm64.whl
Size 788.7 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2a585fa8d0abe9b1fa95702b014523c164f5a8fb0cb6e0b8ba51936573dcd273
BLAKE2b-256 checksum
How to use checksums
248bd21555f10a96e26a8bee8230d8984e66c5b661a5b949571b39a38777ce85
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp312-cp312-win_amd64.whl

Download URL mcp_for_openfilters-0.2.2-cp312-cp312-win_amd64.whl
Size 951.2 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
2b35784704c6d82fc51cc47a30ecd3d9c27d30d4a1848c7137a4871090ff0a65
BLAKE2b-256 checksum
How to use checksums
7c7eae17e63dd440fe7a14f3953f1d044db8c85b992e3110c21931f245e18cce
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL mcp_for_openfilters-0.2.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
f16facc0abe4b80110b567e44bd000862b18cef8be7f36f64d0ed5bc0711cf40
BLAKE2b-256 checksum
How to use checksums
ba3d0e88215d4b915288c8694d780cd8a73e1af7e13f019bcd74e067f7ec67aa
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp312-cp312-macosx_11_0_arm64.whl

Download URL mcp_for_openfilters-0.2.2-cp312-cp312-macosx_11_0_arm64.whl
Size 788.7 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
abce3c71b17ca0b2584ba47f77b612f6a05b3967e8e23a0d7bf8099dabb3f005
BLAKE2b-256 checksum
How to use checksums
bb36558a9e8d0621372577af3d17f7432e88a507ec721e9cd20b95cf162300eb
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp311-cp311-win_amd64.whl

Download URL mcp_for_openfilters-0.2.2-cp311-cp311-win_amd64.whl
Size 950.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
4ffb252ad5566582335c7851bf386b716ad97d760812fa52bfc1f3b084be4e76
BLAKE2b-256 checksum
How to use checksums
ed970945c0b5ad3a4e3cab532a5981e40574710b555023d668cc3f70381e4bdb
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL mcp_for_openfilters-0.2.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7f7af2a05161741e691c852ab086f554ce3713ef0dc481b779f36bee7ace61b3
BLAKE2b-256 checksum
How to use checksums
e87744273548c691bdc690c16bf9ee8890d60dbbf6288a304a5ed7379b180808
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp311-cp311-macosx_11_0_arm64.whl

Download URL mcp_for_openfilters-0.2.2-cp311-cp311-macosx_11_0_arm64.whl
Size 788.3 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5ad2edf83f4946f07b093336cd48c12cf90019d24986efda079588e120ec8c26
BLAKE2b-256 checksum
How to use checksums
ee6d0cc91da520e56d324cf946331e65cff96c9264e990f9e71e409411163d5b
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp310-cp310-win_amd64.whl

Download URL mcp_for_openfilters-0.2.2-cp310-cp310-win_amd64.whl
Size 950.9 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
db7881a57ca6d28e0a69ffb0e3a46a4914ab0b07c4319d7f5f466d2afcb2a4da
BLAKE2b-256 checksum
How to use checksums
6814d5a72f10d3fa5f204cad07aee9c98351b501b9a23cc1a1d6b5a486e75c11
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL mcp_for_openfilters-0.2.2-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 1.5 MB
Tags CPython 3.10 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
59911c9caa31cf126a5bd6a1a88866319fa09df0a74c946e6a556e9e6fda5764
BLAKE2b-256 checksum
How to use checksums
18718c5a8f6c29abd15b18713ae688402a955efb73ca495a45585dec544e882a
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 Nov 6, 2026.

Transparency log

Release files / mcp_for_openfilters-0.2.2-cp310-cp310-macosx_11_0_arm64.whl

Download URL mcp_for_openfilters-0.2.2-cp310-cp310-macosx_11_0_arm64.whl
Size 788.3 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2a2ec49ecc5ceb18e7a261318ad2922061be50d90cd7d7812f5704cb19070d70
BLAKE2b-256 checksum
How to use checksums
9b686d292cc11c82e55c0f645075314b074cee6cf093408d4eb0e70cba2ee160
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 Nov 6, 2026.

Transparency log

Security for mcp-for-openfilters 0.2.2

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 16 files in this release have been uploaded with provenance metadata.

Select from 16 files

Attestation for mcp_for_openfilters-0.2.2.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 Nov 6, 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.

Release history Release notifications | RSS feed

This release

0.2.2 This release

16 release files Full provenance

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