ParticlePhysics MCP Server

Provides seamless access to particle physics data from the Particle Data Group (PDG) for AI assistants and applications.

ParticlePhysics MCP Server

Version

A Model Context Protocol server that lets Claude Desktop, IDEs, and other MCP clients look up particle properties and decay modes.

Supports natural-language queries (muon plus, pion zero, antiproton, anti up quark), case-insensitive lookup, MC IDs (-13), and returns both human-readable text and a structured JSON payload.

Table of Contents

Features

  • search_particle — mass (MeV + GeV), charge, spin, color, parity / C / I / G, lifetime or width, MCID, review ID
  • list_decays — exclusive / inclusive branching fractions with the source method named
  • Natural-language input — muon plus, positive tau, pion zero, kaon minus
  • Anti-particle support — antimuon, anti up quark, ubar, u bar, u_bar, u~, antineutron; resolved via MCID negation, no name guessing
  • MC ID lookup — query directly with 11, -2212, etc.
  • Self-conjugate aware — anti photon resolves to gamma, anti pi0 to pi0
  • Structured output — every response includes a fenced ```json block alongside the human-readable text

Install

git clone https://github.com/uzerone/particlephysics-mcp-server.git
cd particlephysics-mcp-server
pip install -e .

Configure your MCP client

Add one of the following to your client's MCP config (e.g. claude_desktop_config.json).

Using uvx from the cloned repo (no global install needed):

{
  "mcpServers": {
    "particlephysics": {
      "command": "uvx",
      "args": ["--from", "/absolute/path/to/particlephysics-mcp-server",
               "python", "-m", "particlephysics_mcp_server"]
    }
  }
}

Using a local virtualenv (after pip install -e .):

{
  "mcpServers": {
    "particlephysics": {
      "command": "/absolute/path/to/.venv/bin/python",
      "args": ["-m", "particlephysics_mcp_server"]
    }
  }
}

Tools

search_particle

InputExample
Canonical namemu+, pi0, K-, Sigma+, gamma, Lambda, H
English aliasmuon, pion, higgs, electron, top quark
Anti-particleantimuon, anti up quark, ubar, u bar, u_bar, u~, antiproton
Natural-language chargemuon plus, positive tau, pion zero, kaon minus
MC ID11 (electron), -13 (mu+), 2212 (proton)

Sample call: search_particle({"query": "muon plus"})

Found 1 particle(s) matching 'muon plus':

1. mu
   Name: mu+
   PDG ID: -13
   PDG Review ID: S004/2025
   Mass: 105.6583755 MeV (0.1056583755 GeV)
   Spin (J): 1/2
   Charge: 1
   Color: singlet
   Quantum numbers: J=1/2
   Lifetime: 2.196981148893498e-06

```json
{
  "query": "muon plus",
  "count": 1,
  "particles": [{
    "name": "mu+",
    "mcid": -13,
    "pdg_review_id": "S004/2025",
    "mass": {"mev": 105.6583755, "gev": 0.1056583755},
    "charge": {"value": 1.0, "fraction": "1"},
    "spin": "1/2",
    "color": {"multiplicity": 1, "label": "singlet"},
    "quantum_numbers": {"J": "1/2"},
    "lifetime": {"seconds": 2.197e-06, "stable": false, "text": "..."}
  }]
}
```

list_decays

Same identifier formats as search_particle. Tries exclusive_branching_fractionsbranching_fractionsinclusive_branching_fractions and reports which source it used. Returns an empty decay list with stable=true for stable particles.

Sample call: list_decays({"particle_id": "tau"})

Decay modes for particle 'tau':

1. tau- --> mu- nubar_mu nu_tau (BR: 17.39 ± 0.04 %)
2. tau- --> e- nubar_e nu_tau  (BR: 17.82 ± 0.04 %)
…

```json
{
  "particle": {"name": "tau-", "mcid": 15, ...},
  "source": "exclusive_branching_fractions",
  "count": 137,
  "decays": [{
    "description": "tau- --> mu- nubar_mu nu_tau",
    "branching_ratio_text": "17.39 ± 0.04",
    "value_text": "17.39E-2",
    "is_limit": false
  }, ...]
}
```

Claude Skill

A Claude Code skill spec lives at .github/skills/particlephysics-skill/SKILL.md. It runs the inspector, validates both tools, and exercises the natural-language / anti-particle / MC ID query surface.

Trigger phrase: particle physics mcp or pp.

Changelog

See CHANGELOG.md for release notes.

Maintainer

@uzerone

License

MIT — see LICENSE.txt.

Server Terkait

NotebookLM Web Importer

Impor halaman web dan video YouTube ke NotebookLM dengan satu klik. Dipercaya oleh 200.000+ pengguna.

Instal Ekstensi Chrome