这是一个模型上下文协议(MCP)服务器的原型,通过XrayDB库提供元素的X射线属性访问。
很酷的是,这个仓库/服务器只有两个可以通过pip安装的依赖项:
mcp用于协议xraydb用于工具使用你可以使用[uv]和pip在虚拟环境中安装这些依赖项:
uv venv
uv pip install -r requirements.txt
安装完依赖项后,你可以使用以下命令启动MCP服务器:
uv run </path/to/dir>/src/server.py
如果你想使用startup.bat或startup.sh脚本启动服务器,请确保该脚本具有可执行权限。如果需要,可以使用以下命令使脚本可执行,并在Linux或MacOS上运行它:
chmod +x startup.sh
这将启动服务器并通过MCP协议使XrayDB端点可用。现在你可以在最喜欢的IDE中添加它。强烈推荐goose。
请随时打开一个PR或问题。
xray_edges – 获取元素的X射线吸收边缘。xray_edge – 获取特定X射线吸收边缘的数据。guess_edge – 根据能量猜测元素和边缘。atomic_number – 返回元素的原子序数。atomic_density – 返回元素的原子密度。mirror_reflectivity – 计算单层镜面反射率。multilayer_reflectivity – 计算多层镜面堆栈的反射率。material_mu – 获取材料的X射线衰减长度。chantler_energies – 列出元素的Chantler表列能量。f0 – 获取离子的弹性X射线散射因子。f0_ions – 列出支持用于f0计算的离子。chantler_data – 从Chantler表获取元素和能量的数据。f1_chantler – 从Chantler获取异常散射因子(f1)的实部。f2_chantler – 从Chantler获取异常散射因子(f2)的虚部。mu_chantler – 从Chantler表获取质量衰减系数(mu/rho)。lambert_beer – 使用Lambert-Beer定律计算X射线传输。mu_elam – 从Elam表获取质量衰减系数。coherent_cross_section_elam – 从Elam获取相干散射截面。incoherent_cross_section_elam – 从Elam获取非相干散射截面。xray_lines – 列出元素的X射线发射线。xray_line – 获取特定X射线发射线的数据。coated_reflectivity – 计算涂层镜面的反射率。ionchamber_fluxes – 计算离子室和PIN二极管通量。dynamical_theta_offset – 根据布拉格衍射计算角度偏移。transmission_sample – 分析透射模式样品组成。formula_to_mass_fracs – 从公式计算质量分数。mass_fracs_to_molar_fracs – 将质量分数转换为摩尔分数。validate_mass_fracs – 验证并规范化质量分数。