About
MCP server prototype for the XrayDB database.
README
Prototype of a Model Context Protocol (MCP) server that provides access to X-ray properties of elements via the XrayDB library.
Installation
Claude Desktop (one-click via .mcpb)
Prerequisite: uv must be installed and on your PATH.
- Download
xraydb-mcp-server.mcpbfrom the Releases page (or build it locally with./build-mcpb.sh). - Double-click the file — Claude Desktop will prompt to install it.
- On first launch,
uv runwill resolvemcpandxraydbon the fly; no virtualenv setup needed.
Manual install (any MCP client)
Using uv
Cool is that this repo/server has only 2 pip installable dependencies:
mcpfor the protocolxraydbfor the tool usage
You can install the dependencies in a virtual environment using [uv] and pip:
uv venv
uv pip install -r requirements.txt
Running the MCP Server
After installing the dependencies, you can start the MCP server with:
uv run </path/to/dir>/src/server.py
If you like to start the server using the startup.bat or startup.sh scripts, make sure the script is executable. Make the script executable (if needed) and run it for Linux or MacOS:
chmod +x startup.sh
This will launch the server and make the XrayDB endpoints available via the MCP protocol. You can add it now in your favorite IDE. Highly recommend goose.
Collaborate
Please feel free to open a PR or issue.
So far implemented:
xray_edges– Get X-ray absorption edges for an element.xray_edge– Get data for a specific X-ray absorption edge.guess_edge– Guess element and edge from energy.atomic_number– Return atomic number for an element.atomic_density– Return atomic density for an element.mirror_reflectivity– Calculate reflectivity for a single-layer mirror.multilayer_reflectivity– Calculate reflectivity for a multilayer mirror stack.material_mu– Get X-ray attenuation length for a material.chantler_energies– List Chantler tabulated energies for an element.f0– Get elastic X-ray scattering factor for an ion.f0_ions– List supported ions for f0 calculation.chantler_data– Get data from Chantler tables for an element and energy.f1_chantler– Get real part of anomalous scattering factor (f1) from Chantler.f2_chantler– Get imaginary part of anomalous scattering factor (f2) from Chantler.mu_chantler– Get mass attenuation coefficient (mu/rho) from Chantler tables.lambert_beer– Calculate X-ray transmission using Lambert-Beer law.mu_elam– Get mass attenuation coefficient from Elam tables.coherent_cross_section_elam– Get coherent scattering cross-section from Elam.incoherent_cross_section_elam– Get incoherent scattering cross-section from Elam.xray_lines– List X-ray emission lines for an element.xray_line– Get data for a specific X-ray emission line.coated_reflectivity– Calculate reflectivity for a coated mirror.ionchamber_fluxes– Calculate ion chamber and PIN diode fluxes.dynamical_theta_offset– Calculate angular offset from Bragg diffraction.transmission_sample– Analyze transmission mode sample composition.formula_to_mass_fracs– Calculate mass fractions from a formula.mass_fracs_to_molar_fracs– Convert mass fractions to molar fractions.validate_mass_fracs– Validate and normalize mass fractions.
Installing Xraydb
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/gnzng/xraydb-mcp-serverFAQ
Is Xraydb MCP free?
Yes, Xraydb MCP is free — one-click install via Unyly at no cost.
Does Xraydb need an API key?
No, Xraydb runs without API keys or environment variables.
Is Xraydb hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Xraydb in Claude Desktop, Claude Code or Cursor?
Open Xraydb on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
wenb1n-dev/SmartDB_MCP
A universal database MCP server supporting simultaneous connections to multiple databases. It provides tools for database operations, health analysis, SQL optim
by wenb1n-devPostgres Server
This server enables interaction with PostgreSQL databases through the Model Context Protocol, optimized for the AWS Bedrock AgentCore Runtime. It provides tools
by madhurprashPostgres
Query your database in natural language
by AnthropicPostgreSQL
Read-only database access with schema inspection.
by modelcontextprotocolCompare Xraydb with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All data MCPs
