ParticlePhysics MCP Server

Proporciona acceso fluido a datos de física de partículas del Particle Data Group (PDG) para asistentes de IA y aplicaciones.

Documentación

Servidor MCP de Física de Partículas

Version

Un servidor de Protocolo de Contexto de Modelo que permite a Claude Desktop, IDEs y otros clientes MCP consultar propiedades de partículas y modos de desintegración.

Admite consultas en lenguaje natural (muon plus, pion zero, antiproton, anti up quark), búsqueda insensible a mayúsculas, IDs MC (-13), y devuelve tanto texto legible para humanos como una carga útil JSON estructurada.

Tabla de Contenidos

Características

  • search_particle — masa (MeV + GeV), carga, espín, color, paridad / C / I / G, vida útil o anchura, MCID, ID de revisión
  • list_decays — fracciones de ramificación exclusivas / inclusivas con el método de fuente nombrado
  • Entrada en lenguaje natural — muon plus, positive tau, pion zero, kaon minus
  • Soporte de antipartículas — antimuon, anti up quark, ubar, u bar, u_bar, u~, antineutron; resuelto mediante negación de MCID, sin adivinación de nombres
  • Búsqueda por ID MC — consulta directamente con 11, -2212, etc.
  • Consciente de autoconjugados — anti photon se resuelve a gamma, anti pi0 a pi0
  • Salida estructurada — cada respuesta incluye un bloque ```json delimitado junto con el texto legible para humanos

Instalación

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

Configura tu cliente MCP

Añade una de las siguientes opciones a la configuración MCP de tu cliente (p. ej. claude_desktop_config.json).

Usando uvx desde el repositorio clonado (no se necesita instalación global):

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

Usando un virtualenv local (después de pip install -e .):

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

Herramientas

search_particle

EntradaEjemplo
Nombre canónicomu+, pi0, K-, Sigma+, gamma, Lambda, H
Alias en inglésmuon, pion, higgs, electron, top quark
Antipartículaantimuon, anti up quark, ubar, u bar, u_bar, u~, antiproton
Carga en lenguaje naturalmuon plus, positive tau, pion zero, kaon minus
ID MC11 (electrón), -13 (mu+), 2212 (protón)

Ejemplo de llamada: 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

Mismos formatos de identificador que search_particle. Intenta exclusive_branching_fractions → branching_fractions → inclusive_branching_fractions e informa qué fuente utilizó. Devuelve una lista de desintegraciones vacía con stable=true para partículas estables.

Ejemplo de llamada: 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
  }, ...]
}
```

Registro de cambios

Consulta CHANGELOG.md para las notas de versión.

Mantenedor

@uzerone

Licencia

MIT — consulta LICENSE.txt.