ABACUS, an open-source DFT-based simulation platform, is supported by an MCP server that provides a structured communication interface for submitting, managing, and executing tasks.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"abacus-mcp-server": {
"env": {
"PYTHONPATH": "/path/to/abacus-mcp-server"
},
"args": [
"/path/to/abacus-mcp-server/src/server.py"
],
"command": "python"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
中文 | English | 快速开始 | Quick Start
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'fastmcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
FastMCP OpenAPI Provider has an SSRF & Path Traversal Vulnerability
## Technical Description The `OpenAPIProvider` in FastMCP exposes internal APIs to MCP clients by parsing OpenAPI specifications. The `RequestDirector` class is responsible for constructing HTTP requests to the backend service. A critical vulnerability exists in the `_build_url()` method. When an OpenAPI operation defines path parameters (e.g., `/api/v1/users/{user_id}`), the system directly substitutes parameter values into the URL template string **without URL-encoding**. Subsequently, `urll
FastMCP: Missing Consent Verification in OAuth Proxy Callback Facilitates Confused Deputy Vulnerabilities
## Summary While testing the *GitHubProvider* OAuth integration, which allows authentication to a FastMCP MCP server via a FastMCP OAuthProxy using GitHub OAuth, it was discovered that the FastMCP OAuthProxy does not properly validate the user's consent upon receiving the authorization code from GitHub. In combination with GitHub’s behavior of skipping the consent page for previously authorized clients, this introduces a Confused Deputy vulnerability. ## Technical Details An adversary can initi
FastMCP has a Command Injection vulnerability - Gemini CLI
Server names containing shell metacharacters (e.g., `&`) can cause command injection on Windows when passed to `fastmcp install claude-code` or `fastmcp install gemini-cli`. These install paths use `subprocess.run()` with a list argument, but on Windows the target CLIs often resolve to `.cmd` wrappers that are executed through `cmd.exe`, which interprets metacharacters in the flattened command string. PoC: ```python from fastmcp import FastMCP mcp = FastMCP(name="test&calc") @mcp.tool def rol
FastMCP OAuth Proxy token reuse across MCP servers
While testing the OAuth Proxy implementation, it was noticed that the server does not properly respect the `resource` parameter submitted by the client in the authorization and token request. Instead of issuing the token explicitly for this MCP server, the token is issued for the `base_url` passed to the `OAuthProxy` during initialization. **Affected File:** *https://github.com/jlowin/fastmcp/blob/main/src/fastmcp/server/auth/oauth_proxy.py#L828* **Affected Code:** ```python self._jwt_issuer:
FastMCP updated to MCP 1.23+ due to CVE-2025-66416
There was a recent CVE report on MCP: https://nvd.nist.gov/vuln/detail/CVE-2025-66416. FastMCP does not use any of the affected components of the MCP SDK directly. However, FastMCP versions prior to 2.14.0 did allow MCP SDK versions <1.23 that were vulnerable to CVE-2025-66416. Users should upgrade to FastMCP 2.14.0 or later.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in education / data
Query and manage PostgreSQL databases directly from AI assistants
🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
Manage Supabase projects — databases, auth, storage, and edge functions
Real-time financial market data: stocks, forex, crypto, commodities, and economic indicators
MCP Security Weekly
Get CVE alerts and security updates for Abacus Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
中文 | English | 快速开始 | Quick Start
基于Model Context Protocol (MCP)的ABACUS第一性原理计算服务器。主要用于量子化学和材料科学计算。
pip install fastmcp ase numpy psutil
参考ABACUS官方文档安装。
git clone <repository-url>
cd abacus-mcp-server
pip install -r requirements.txt
确保ABACUS在系统PATH中:
abacus --version
mkdir pseudos
# 把赝势文件放到pseudos目录
python src/server.py
在Claude Desktop设置中添加:
{
"mcpServers": {
"abacus-mcp-server": {
"command": "python",
"args": ["/path/to/abacus-mcp-server/src/server.py"],
"env": {"PYTHONPATH": "/path/to/abacus-mcp-server"}
}
}
}
基础SCF计算
我想对硅晶体进行SCF计算,请帮我设置参数。
结构优化
我有个钙钛矿结构需要优化几何并计算带隙。
能带结构
计算石墨烯沿Γ-M-K-Γ路径的能带结构。
故障排除
我的ABACUS计算不收敛,SCF一直振荡,帮我看看。
pseudos/ 目录硅能带结构计算
计算硅晶体的能带结构,晶格常数5.43 Å,沿Γ-X-L-Γ路径。
钙钛矿结构优化
优化BaTiO3几何结构并计算电子性质。
收敛问题诊断
我的MoS2计算不收敛,SCF在-150.5和-150.8 Ry间振荡,用的ecutwfc=80 Ry。
PyABACUS工作流
用PyABACUS分析原子轨道重叠,需要LCAO计算和重叠矩阵。
# 使用create_structure工具创建原子结构
structure = create_structure(
formula_or_data="Si2",
input_format="formula",
crystalstructure="diamond",
a=5.43
)
# 验证计算参数
validation = validate_input(
input_params={
"ecutwfc": 100,
"scf_thr": 1e-6,
"basis_type": "pw"
},
structure_dict=structure["data"]
)
# 执行SCF计算
scf_result = run_scf(
structure_dict=structure["data"],
input_params={
"ecutwfc": 100,
"scf_thr": 1e-6
},
kpoints_definition={
"mode": "Monkhorst-Pack",
"size": [4, 4, 4]
},
pseudo_potential_map={"Si": "Si.UPF"}
)
# 查看计算结果和建议
print(scf_result["data"]["interpretation"])
print(scf_result["data"]["recommendations"])
abacus://system/status - 系统状态abacus://docs/input_parameters - 参数文档abacus://examples/scf - SCF示例abacus://calculations/{task_id}/results - 计算结果abacus://calculations/{task_id}/logs - 计算日志export ABACUS_COMMAND="/path/to/abacus"
export PSEUDO_DIR="/path/to/pseudos"
export ABACUS_WORK_DIR="/path/to/calculations"
创建config.json:
{
"abacus_command": "abacus",
"pseudo_base_path": "./pseudos",
"work_directory": "./calculations"
}
ABACUS未找到
which abacus
abacus --version
赝势文件缺失
ls -la pseudos/
内存不足
export LOG_LEVEL="DEBUG"
python src/server.py
git clone https://github.com/deepmodeling/abacus-develop.git
cd abacus-develop/python
pip install .
import pyabacus as m
s = m.ModuleBase.Sphbes()
result = s.sphbesj(1, 0.0)
create_structure - 创建原子结构validate_structure - 验证结构convert_structure - 格式转换run_scf - SCF计算run_optimization - 结构优化run_md - 分子动力学calculate_band_structure - 能带结构calculate_dos - 态密度