ParticlePhysics MCP Server
素粒子物理学 MCP サーバー
Claude Desktop、IDE、その他の MCP クライアントから、粒子の特性や崩壊モードを検索できるようにする Model Context Protocol サーバーです。
自然言語クエリ(muon plus、pion zero、antiproton、anti up quark)、大文字小文字を区別しない検索、MC ID(-13)をサポートしており、人間が読みやすいテキストと構造化された JSON ペイロードの両方を返します。
目次
Related MCP server: Physics MCP Server
機能
search_particle— 質量(MeV + GeV)、電荷、スピン、色、パリティ / C / I / G、寿命または幅、MCID、レビュー IDlist_decays— ソースメソッド名を含む排他的 / 包括的な分岐比自然言語入力 —
muon plus、positive tau、pion zero、kaon minus反粒子サポート —
antimuon、anti up quark、ubar、u bar、u_bar、u~、antineutron。MCID の否定によって解決され、名前の推測は行いませんMC ID 検索 —
11、-2212などで直接クエリ可能自己共役の認識 —
anti photonはgammaに、anti pi0はpi0に解決されます構造化された出力 — すべてのレスポンスには、人間が読みやすいテキストに加えて、
```jsonで囲まれたブロックが含まれます
インストール
git clone https://github.com/uzerone/particlephysics-mcp-server.git
cd particlephysics-mcp-server
pip install -e .MCP クライアントの設定
クライアントの MCP 設定(例: claude_desktop_config.json)に以下を追加してください。
クローンしたリポジトリから uvx を使用する場合(グローバルインストール不要):
{
"mcpServers": {
"particlephysics": {
"command": "uvx",
"args": ["--from", "/absolute/path/to/particlephysics-mcp-server",
"python", "-m", "particlephysics_mcp_server"]
}
}
}ローカルの virtualenv を使用する場合(pip install -e . の後):
{
"mcpServers": {
"particlephysics": {
"command": "/absolute/path/to/.venv/bin/python",
"args": ["-m", "particlephysics_mcp_server"]
}
}
}ツール
search_particle
入力 | 例 |
標準名 |
|
英語の別名 |
|
反粒子 |
|
自然言語の電荷 |
|
MC ID |
|
サンプル呼び出し: 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
search_particle と同じ識別子形式を使用します。exclusive_branching_fractions → branching_fractions → inclusive_branching_fractions の順に試行し、使用したソースを報告します。安定粒子に対しては stable=true を含む空の崩壊リストを返します。
サンプル呼び出し: 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 スキル
Claude Code スキルの仕様は .github/skills/particlephysics-skill/SKILL.md にあります。インスペクターを実行し、両方のツールを検証し、自然言語 / 反粒子 / MC ID クエリのインターフェースをテストします。
トリガーフレーズ: particle physics mcp または pp。
変更履歴
リリースノートについては CHANGELOG.md を参照してください。
メンテナー
ライセンス
MIT — LICENSE.txt を参照してください。
Available Tools
2 toolslist_decaysB
List decay modes for a specific particle
| Name | Required | Description | Default |
|---|---|---|---|
| particle_id | Yes | Particle identifier (PDG ID or name) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action but doesn't describe traits like whether this is a read-only operation, potential rate limits, error handling for invalid particles, or the format of the returned decay modes. This leaves significant gaps for a tool that likely queries a dataset.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is appropriately sized and front-loaded, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one parameter with full schema coverage and no output schema, the description is minimally adequate but lacks context about behavioral aspects and usage guidelines. For a simple query tool, it's passable, but the absence of annotations and output details means it doesn't fully equip the agent for optimal use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the parameter 'particle_id' documented as 'Particle identifier (PDG ID or name)'. The description adds no additional meaning beyond this, such as examples or constraints, so it meets the baseline of 3 where the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'decay modes for a specific particle', making the purpose immediately understandable. However, it doesn't explicitly differentiate from the sibling tool 'search_particle', which might also involve particle-related queries, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus the sibling 'search_particle' or any other alternatives. It lacks context about prerequisites, such as whether the particle must exist in a database, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_particleC
Search for particles by name or properties in the PDG database
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (particle name, symbol, or property) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool searches a database, implying a read-only operation, but doesn't disclose behavioral traits like authentication needs, rate limits, result format, pagination, or error handling. This leaves significant gaps for a database query tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for a search tool. It lacks details on behavioral aspects (e.g., result format, limits) and doesn't compensate for the absence of structured data, leaving the agent with insufficient context for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the 'query' parameter documented as 'Search query (particle name, symbol, or property)'. The description adds minimal value beyond this, only reiterating 'by name or properties'. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search for particles') and resource ('in the PDG database'), with specificity about search criteria ('by name or properties'). It doesn't explicitly differentiate from the sibling tool 'list_decays', which appears to be a different operation, but the purpose is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives or in what context. It mentions searching 'in the PDG database', but doesn't specify prerequisites, limitations, or how it relates to the sibling tool 'list_decays'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
list_decays - First observed
search_particle
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: one lists decay modes for a specific particle, while the other searches for particles in a database. There is no overlap in functionality, making it easy for an agent to choose the correct tool based on the task.
Both tools follow a consistent verb_noun naming pattern (list_decays and search_particle), using snake_case throughout. This predictability aids in understanding and usage without any deviations.
With only 2 tools, the server feels thin for a particle physics domain, which typically involves complex queries, simulations, or analyses. This limited set may not support comprehensive agent workflows, suggesting an under-scoped implementation.
The toolset is severely incomplete for particle physics, lacking essential operations like retrieving particle properties, calculating cross-sections, or simulating interactions. Agents will face significant gaps, as basic CRUD or lifecycle coverage is missing.
Maintenance
Related MCP Connectors
Real-time web search, reasoning, and research through Perplexity's API
Integrates Wolfram Language and Wolfram|Alpha accessing curated data and sophisticated algorithms.
Real-time web and scholarly search with cited answers and multi-step deep research.
Search 8.5M scientific papers with LLM TLDRs, citations, linked entities, figures, and full text.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables users to query Wolfram Alpha's computational knowledge engine through natural language. Provides access to mathematical computations, scientific data, and factual information via the Wolfram Alpha API.-
- AlicenseNot gradedqualityDmaintenanceEnables physicists to perform computer algebra calculations, create scientific plots, solve differential equations, work with tensor algebra and quantum mechanics, and parse natural language physics problems. Supports unit conversion, physical constants, and generates comprehensive reports with optional GPU acceleration.10MIT
- FlicenseAqualityDmaintenanceProvides access to Wolfram Alpha's computational knowledge engine for mathematical calculations, scientific computing, data analysis, and factual information through natural language queries.26-
- FlicenseNot gradedqualityDmaintenanceProvides unified natural language access to 40+ astronomical databases and surveys including DESI, SIMBAD, SDSS, and Gaia, enabling researchers to search, retrieve, and analyze astronomical data without learning complex APIs.6-