---
title: "hep-tools"
description: "Reusable HEP/Python development skills and generic read-only HEP MCP tools."
canonical: https://agentpluginsdirectory.com/plugins/hep-tools
last-updated: 2026-10-21
---

# hep-tools
Reusable HEP/Python development skills and generic read-only HEP MCP tools.
- Slug: hep-tools
- Publisher: LHCb Marketplace contributors
- Repository: https://github.com/MohamedElashri/lhcb-marketplace
- Manifest: plugins/hep-tools/plugin.json
- Version: 0.2.2
- License: MIT
- Category (editorial): other
- Skills: 28 (awkward, cabinetry, cli-creator, code-quality-tools, coffea, cpp-bindings, decaylanguage, fastjet, fsspec-xrootd, hepunits, hist, iminuit, lcgenv, mplhep, particle, pyhepmc, pyhf, pyhs3, pylhe, pytest-speedup, python-packaging, python-testing, roounfold, servicex, standalone-script, uproot, vector, xcache)
- MCP servers: 3 (cerngitlab, hepdata, inspirehep)
- Stars: 0
- Repository created: 2026-07-02
- Repository last pushed: 2026-09-01
- Publisher type: User
- Listing: https://agentpluginsdirectory.com/plugins/hep-tools
- Schema: https://agent-plugins.org/schemas/1.0.0/plugin.schema.json

## Skills

- awkward: Use when working with jagged or variable-length arrays in Python HEP analysis: building event records with ak.zip, filtering nested arrays, computing combinatorics (cartesian products or combinations), flattening ragged arrays, using argmin/argmax with keepdims, broadcasting per-event weights to pe…
- cabinetry: Use when building a HEP statistical analysis with cabinetry: writing a cabinetry config file, building histogram templates from ROOT NTuples, constructing a pyhf workspace, running a profile likelihood fit, visualising pre/post-fit data-MC comparisons, producing pull plots and NP rankings, or compu…
- cli-creator: Use when building a Python command-line interface with Typer: adding arguments and options to a script, creating subcommands, wiring an entry point into pyproject.toml, validating CLI inputs with callbacks, or adding a CLI layer to an existing analysis script or HEP workflow.
- code-quality-tools: Use when setting up code quality tooling for a HEP Python project: configuring pre-commit hooks, adding ruff for linting and auto-formatting, setting up mypy for static type checking, or debugging linter failures in CI or a pre-commit run.
- coffea: Use when building a columnar HEP analysis with coffea: loading ROOT data as NanoEvents, choosing a schema, writing a ProcessorABC processor, accumulating histograms or cutflows, and scaling execution from local iteration to Dask.
- cpp-bindings: Use when writing Python bindings for C++ HEP code with nanobind or pybind11: exposing a C++ class or function to Python, binding STL containers (vector, map), handling numpy/awkward array interop, choosing between nanobind and pybind11, or setting up a CMake build that produces a Python extension m…
- decaylanguage: Use when working with particle decay chains in Python: parsing EvtGen or DecFiles `.dec` decay descriptors with DecFileParser, building DecayChain and DecayMode objects programmatically, visualizing decay trees with DecayChainViewer, computing visible branching fractions, or converting AmpGen ampli…
- fastjet: Use when running jet clustering in Python with the Scikit-HEP fastjet package (or migrating from the deprecated pyjet): calling anti-kt or Cambridge/Aachen algorithms on particle four-vectors, accessing jet constituents, computing jet substructure variables (N-subjettiness, soft drop), clustering j…
- fsspec-xrootd: Use when accessing ROOT files on EOS, WLCG storage, or another XRootD endpoint from Python through fsspec: opening root:// URIs with uproot, listing remote directories, handling authentication, or diagnosing XRootD path and timeout failures.
- hepunits: Use when writing unit-safe HEP code in Python: converting between MeV and GeV, expressing cross-sections or luminosities with explicit units, computing ctau or decay lengths from particle lifetimes, checking that cut thresholds or histogram ranges carry correct units, or bridging hepunits values wi…
- hist: Use when creating, filling, slicing, or plotting histograms with the scikit-hep hist library: defining axes (Regular, Variable, StrCategory), filling with weighted data, using UHI indexing (loc, rebin, sum), applying an mplhep experiment style, producing ratio panels for data/MC comparisons, or pro…
- iminuit: Use when you need to minimize a scalar cost function in Python using MINUIT2 via iminuit (e.g., unbinned likelihood fits or least-squares fits), and you need HESSE/MINOS-style uncertainties or custom cost functions.
- lcgenv
- mplhep
- particle
- pyhepmc
- pyhf
- pyhs3
- pylhe
- pytest-speedup
- python-packaging
- python-testing
- roounfold
- servicex
- standalone-script
- uproot
- vector
- xcache

Descriptions come from the frontmatter of each SKILL.md, punctuation lightly normalized.

## MCP servers

- cerngitlab: transport: stdio; command: uvx --python 3.12 --from cerngitlab-mcp==0.3.0 cerngitlab-mcp --mode stdio
- hepdata: transport: stdio; command: uvx --python 3.12 --from hepdata-mcp==0.2.0 hepdata-mcp
- inspirehep: transport: stdio; command: uvx --python 3.12 --from inspirehep-mcp==0.2.0 inspirehep-mcp

Read from the plugin's own mcp.json. Environment variable names only, never values.
