nds-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NDS_DB_PATH | No | Database path. Set to skip auto-download. | ~/.nds-mcp/nds.sqlite |
| NDS_TOOL_MODE | No | Tool exposure: standard (default) or full. full additionally exposes nds_self_update. | standard |
| NDS_EXFOR_DB_PATH | No | Optional EXFOR database path (auto-downloaded on first use if unset). | ~/.nds-mcp/exfor.sqlite |
| NDS_FENDL_DB_PATH | No | Optional FENDL-3.2c DB path (maintainer ingest / status in nds_info). | ~/.nds-mcp/fendl32c.sqlite |
| NDS_IRDFF_DB_PATH | No | Optional IRDFF-II DB path (maintainer ingest / status in nds_info). | ~/.nds-mcp/irdff2.sqlite |
| NDS_JENDL5_DB_PATH | No | Optional JENDL-5 database path (auto-downloaded on first use if unset). | ~/.nds-mcp/jendl5.sqlite |
| NDS_DB_DOWNLOAD_URL | No | Custom download URL for the SQLite file. | GitHub Releases latest |
| NDS_EXFOR_DB_DOWNLOAD_URL | No | Override auto-download URL for exfor.sqlite. | GitHub Releases latest |
| NDS_FENDL_DB_DOWNLOAD_URL | No | Override auto-download URL for fendl32c.sqlite. | GitHub Releases latest |
| NDS_IRDFF_DB_DOWNLOAD_URL | No | Override auto-download URL for irdff2.sqlite. | GitHub Releases latest |
| NDS_JENDL5_DB_DOWNLOAD_URL | No | Override auto-download URL for jendl5.sqlite. | GitHub Releases latest |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| nds_infoA | Return NDS database metadata: data versions, nuclide counts, DB file hash. |
| nds_catalogA | Catalog installed libraries and query entrypoints (what exists, where to query, and which tools to use). |
| nds_schemaA | Inspect SQLite schema for an installed NDS database library (tables/columns/foreign keys, optional indexes). |
| nds_queryC | Safe structured query builder over SQLite tables (filter/sort/paginate; no raw SQL input). |
| nds_list_raw_archivesA | List embedded upstream ENDF-6 zip archive metadata for FENDL/IRDFF (never returns BLOB payloads). |
| nds_check_updateA | Check npm registry for newer nds-mcp version. Does not perform updates. |
| nds_find_nuclideA | Find nuclides by element symbol, Z (atomic number), and/or A (mass number). Returns basic properties from NUBASE2020. |
| nds_get_massA | Get atomic mass data for a nuclide (Z, A) from AME2020: mass excess, binding energy/A, beta-decay energy, atomic mass. |
| nds_get_separation_energyA | Get nucleon separation energies from AME2020: Sn, Sp, S2n, S2p. |
| nds_get_q_valueA | Get Q-values from AME2020: Qα, Q(2β⁻), Q(εp), Q(β⁻n), Q(4β⁻), Q(d,α), Q(p,α), Q(n,α). |
| nds_get_decayA | Get decay information from NUBASE2020: half-life, spin/parity, decay modes with branching ratios, isomers. |
| nds_get_charge_radiusA | Get nuclear charge radius (rms) with source-aware comparison across IAEA, laser spectroscopy, and CODATA (when available). mode=best|all|compare controls recommendation vs full source list. |
| nds_searchA | Search nuclides by property range (half_life_seconds, mass_excess_keV). Returns ground-state nuclides matching criteria. |
| nds_query_levelsA | Query nuclear energy levels from ENSDF and TUNL. Returns level energies, spin-parity, half-lives. For A ≤ 20, automatically includes TUNL resonance data (widths, isospin, decay modes, table_label for TUNL publication provenance). Each result has a "source" field ("ENSDF" or "TUNL"). |
| nds_query_gammasA | Query gamma-ray transitions from ENSDF. Returns energies, intensities, multipolarities, conversion coefficients for a nuclide. |
| nds_query_decay_feedingsB | Query beta/EC decay feeding patterns from ENSDF. Returns branching ratios, log(ft) values, endpoint energies for parent nuclide decays. |
| nds_lookup_referenceA | Look up ENSDF/NSR bibliographic references by keynumber or mass number. |
| nds_get_radiation_spectrumA | Get decay radiation spectra from JENDL-5 Decay (gamma/beta/alpha/X-ray discrete lines and continuous-spectrum summaries). |
| nds_list_available_targetsA | List available JENDL-5 XS targets (A/state) for a given Z and projectile. |
| nds_get_reaction_infoA | Return available JENDL-5 reaction channels for a target: mt, reaction, e_min_eV, e_max_eV, n_points. |
| nds_get_cross_section_tableB | Get JENDL-5 pointwise cross-section tables. mode=raw returns tabulated points; mode=sampled interpolates onto a log grid with ENDF-6 NBT/INT rules. |
| nds_interpolate_cross_sectionA | Interpolate JENDL-5 cross section at a specific energy using ENDF-6 NBT/INT segmented interpolation rules. |
| nds_search_exforB | Search EXFOR experimental reaction data points by target/projectile/reaction/quantity (including MACS). |
| nds_get_exfor_entryA | Get one EXFOR entry (all subentries + points) by entry number. |
| nds_get_constantA | Get one CODATA fundamental constant by name (case-insensitive by default). |
| nds_list_constantsA | List CODATA fundamental constants with optional keyword filtering and pagination. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 26 tools
Most tools have clearly distinct purposes, targeting specific databases and data types. A few pairs, like nds_get_decay vs nds_query_decay_feedings and nds_get_mass vs nds_find_nuclide, could cause minor confusion, but the descriptions provide enough context to differentiate them.
Tool names consistently start with 'nds_' but mix verbs like get, query, list, search, find, and interpolate. There are also noun-style names such as nds_info and nds_catalog, so the pattern is not fully uniform, though still readable and descriptive.
With 26 tools, the server is on the heavy end, exceeding the typical 3-15 tool range. However, the broad scope covering multiple nuclear databases (NUBASE, AME, ENSDF, JENDL, EXFOR, CODATA) justifies a larger tool surface, making it borderline but not excessive.
The tool surface covers major nuclear data types: nuclide properties, masses, decay, levels, gammas, cross sections, EXFOR, and constants. Minor gaps exist, such as no direct access to raw ENDF-6 BLOB payloads and TUNL data only for A≤20, but these are workable limitations.