Install the "mat-stability" agent skill from https://github.com/learningmatter-mit/AtomisticSkills/tree/main/skills/mat-stability into .claude/skills/mat-stability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mat-stability", then confirm the skill loads.
Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Type this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
skills CLI
$ npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a codex
Project install goes to .agents/skills/; add -g for ~/.codex/skills/.
Install the "mat-stability" agent skill from https://github.com/learningmatter-mit/AtomisticSkills/tree/main/skills/mat-stability into .agents/skills/mat-stability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mat-stability", then confirm the skill loads.
Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a cursor
Project install goes to .agents/skills/; add -g for ~/.cursor/skills/.
Install the "mat-stability" agent skill from https://github.com/learningmatter-mit/AtomisticSkills/tree/main/skills/mat-stability into .cursor/skills/mat-stability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mat-stability", then confirm the skill loads.
Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
skills CLI
$ npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a gemini-cli
Project install goes to .agents/skills/; add -g for ~/.gemini/skills/.
Install the "mat-stability" agent skill from https://github.com/learningmatter-mit/AtomisticSkills/tree/main/skills/mat-stability into .gemini/skills/mat-stability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mat-stability", then confirm the skill loads.
Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Installs for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
skills CLI
$ npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a github-copilot
Project install goes to .agents/skills/; add -g for ~/.copilot/skills/.
Install the "mat-stability" agent skill from https://github.com/learningmatter-mit/AtomisticSkills/tree/main/skills/mat-stability into .github/skills/mat-stability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mat-stability", then confirm the skill loads.
GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skills CLI
$ npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a opencode
OpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
Install the "mat-stability" agent skill from https://github.com/learningmatter-mit/AtomisticSkills/tree/main/skills/mat-stability into .opencode/skills/mat-stability/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mat-stability", then confirm the skill loads.
OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
Facts
Skill name
mat-stability
GitHub stars
175
Token cost
~2.2k tokens
SKILL.md length
823 words
Files
6 (incl. scripts)
Skills in repo
129
Repo updated
First seen
Licence
MIT
At a glance
Calculate the thermodynamic stability and energy above the convex hull (Ehull) of a material at 0K.
Works in 5 steps: Select Level of Theory: Choose the… → Query Materials Project Hull: Retrieve… → Relax All Structures: Perform structural… → …
SKILL.md covers Goal, Instructions, Examples and Constraints
Runs Python scripts from its folder
What it does
Mat Stability is an agent skill from learningmatter-mit/AtomisticSkills. Calculate the thermodynamic stability and energy above the convex hull (Ehull) of a material at 0K.
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including scripts (for example `examples/li3ps4_stability/README.md`, `examples/li3ps4_stability/hull_entries.json` and `examples/li3ps4_stability/stability_analysis.json`).
It works with Model Context Protocol. The repository describes itself as: Integrating AtomisticSkills into Agentic IDEs (Cursor, Claude Code, Codex, Google Antigravity, Hermes Agent, etc). The licence is MIT.
Example prompts
“/mat-stability”
Requirements
Python 3
Workflow steps
5 steps, taken from the first numbered list in SKILL.md.
1Select Level of Theory: Choose the target accuracy level for stability calculations.
2Query Materials Project Hull: Retrieve all structures on the convex hull in the target material's chemical space.
3Relax All Structures: Perform structural relaxation on all hull structures using the same MLIP.
4Construct Convex Hull & Calculate Stability: Build a pymatgen phase diagram using the relaxed energies.
5Interpret Stability: Assess the thermodynamic stability based on $E_{hull}$ (energy above hull in meV/atom)
What it can do on your machine
Read from SKILL.md and the folder at commit 7f2d86d. It shows what the files ask for, not the result of running them.
Tool permissions
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Runs code
Ships 2 files in scripts/ (Python), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
Network
Links to these hosts (documentation or services it may open):
doi.org
github.com
From URLs in SKILL.md, links to its own repository left out.
Credentials
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Context cost
Mat Stability loads about 2.2k tokens when it runs. Until then it costs about 29 tokens; SKILL.md has 823 words of instructions outside code blocks.
Always· name and description, kept in context so the agent knows when to use it
~29
When it runs· the whole SKILL.md, loaded when a task matches
~2.2k
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
Safety
Auto-check passed
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
Download SKILL.mdSave it as .claude/skills/mat-stability/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
mat-stability
description
Calculate the thermodynamic stability and energy above the convex hull (E_hull) of a material at 0K.
metadata.category
materials
metadata.venv
cpu, mlip
Stability Calculation
<!-- mcp-tools-note -->
[!NOTE]
Steps written server.tool are MCP tool calls: matgl.relax_structure is the relax_structure
tool of the matgl server (mcp__matgl__relax_structure, or
mcp__plugin_atomistic-skills_matgl__relax_structure when installed as a plugin).
Without a connected server, run the same tools from the shell. Tools named in
one command share a process, so a model loaded by load_model stays loaded:
To determine the thermodynamic stability of a material at 0K by computing the energy above the convex hull ($E_{hull}$) using pymatgen phase diagram analysis with structures from Materials Project.
[!TIP]
Finite Temperature Stability: While this skill focuses on 0K stability (potential energy), you can construct a finite-temperature phase diagram by replacing potential energies with Free Energies ($G = U + F_{\text{vib}}$) calculated from the mat-qha-thermal-expansion skill.
Electrochemical Stability: The phase diagram constructed here can be seamlessly reused to calculate the material's electrochemical window (ECW) against a specific mobile ion (e.g., Li/Li+). See the mat-electrochemical-window skill for detailed methods.
Instructions
Select Level of Theory: Choose the target accuracy level for stability calculations.
Recommended: r2SCAN-level foundation potentials for high accuracy
Options: TensorNet-MatPES-r2SCAN-v2025.1-PES (MatGL) or MACE-MH-1 with matpes_r2scan head
Note: r2SCAN shows high accuracy for predicting thermodynamic stability (MAE 80 meV/atom for formation energies vs PBE's 175 meV/atom)[^1]. Using r2SCAN-trained potentials ensures consistency with Materials Project's r2SCAN entries.
[^1]: Kingsbury, R. et al. "Performance comparison of r2SCAN and SCAN metaGGA density functionals for solid materials via an automated, high-throughput computational workflow" Physical Review Materials6, 013801 (2022). DOI: 10.1103/PhysRevMaterials.6.013801
Query Materials Project Hull: Retrieve all structures on the convex hull in the target material's chemical space.
Read relaxed structures and energies from each subdirectory
Create ComputedEntry objects for pymatgen
Construct the convex hull using PhaseDiagram
Calculate $E_{hull}$ for the target material
(Optional) If --calculate_ecw is provided, calculate the intrinsic Electrochemical Stability Window ($V_{red}$ and $V_{ox}$) against the specified --mobile_ion.
Interpret Stability: Assess the thermodynamic stability based on $E_{hull}$ (energy above hull in meV/atom):
$E_{hull} = 0$ meV/atom: STABLE - On the convex hull, thermodynamically stable
$0 < E_{hull} \leq 50$ meV/atom: METASTABLE - May be synthesizable under kinetic control
$E_{hull} > 50$ meV/atom: UNSTABLE - Likely to decompose into competing phases
The decomposition reaction and products are also reported by pymatgen.
Show full SKILL.md (282 more words)Show less
Examples
Example 1: Integrated Stability and ECW Pipeline for Li3PS4
bash
# Step 1: Query Materials Project hull in Li-P-S space
${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/scripts/query_mp_hull.py \
--formula "Li-P-S" \
--target "Li3PS4" \
--thermo_type "R2SCAN" \
--output hull_structures/
# Step 2: Batch relax all structures with MatGL r2SCAN
matgl.relax_structure(
structure_data="hull_structures/",
relax_cell=True,
model_name="TensorNet-MatPES-r2SCAN-v2025.1-PES",
fmax=0.05,
steps=20,
output_dir="relaxed/"
)
# Step 3: Compute Integrated Stability and ECW
${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/scripts/compute_ehull.py \
--hull_manifest hull_entries.json \
--relaxed_dir relaxed/ \
--target_material Li3PS4 \
--calculate_ecw \
--mobile_ion Li \
--output Li3PS4_stability_ecw.json
We also provide a stored record of this example run in examples/li3ps4_stability/.
Constraints
Energy Consistency: All structures (target + hull phases) MUST be relaxed with the same MLIP model and settings. Mixing different MLIPs will produce incorrect E_hull values.
Level of Theory: Use r2SCAN-trained foundation potentials (e.g., MACE-MH-1 matpes_r2scan) for better accuracy and consistency with Materials Project.
Convergence Criterion: Use fmax ≤ 0.02 eV/Å for all relaxations. Inconsistent convergence criteria will introduce systematic errors.
Chemical Space: The query must include ALL elements in the target material. For example, for LiFePO4, query "Li-Fe-P-O" not just "Li-Fe-P".
Hull Completeness: Ensure all competing phases are included. Missing hull phases will lead to underestimated E_hull (false negatives for instability).
Hull Reuse: If calculating the stability of multiple different structures in the same chemical space, we should reuse the hull instead of relaxing them again.
Stability Thresholds:
$E_{hull} = 0$ meV/atom: Stable
$0 < E_{hull} \leq 50$ meV/atom: Metastable
$E_{hull} > 50$ meV/atom: Unstable
Phase Diagram Construction: For full phase diagram visualization and competing phase analysis, see the separate phase-diagram skill (to be developed).
Energy Input: Use TOTAL POTENTIAL ENERGY for all entries in pymatgen.analysis.phase_diagram.PhaseDiagram automatically calculates formation energies by identifying elemental ground states from the provided entries. Do not pass formation energies directly.
High-Throughput Self-Competition: When computing $E_{hull}$ for multiple generated candidates, place all relaxed structures in relaxed_dir. compute_ehull.py will automatically load all candidates and include them in the PhaseDiagram alongside the Materials Project hull reference. This correctly enables generated candidates to thermodynamically compete against each other.
DFT Validation: For publication-quality results, validate E_hull with DFT calculations, especially for materials close to the stability threshold.
Mat Stability next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
Mat Stability compared with similar skills
Skill
Stars
Used in
Tokens
Auto-check
Licence
Repo updated
Mat Stability this skilllearningmatter-mit/AtomisticSkills
Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.
Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.
Required groundwork before any use_figma call: the rules and reference files for running JavaScript in a Figma file through the Plugin API without common failures.
Define a docking search box (center coordinates + box dimensions in Angstroms) from a co-crystal ligand, binding-site residues, or a saved JSON specification.
Calculate the thermodynamic stability and energy above the convex hull (Ehull) of a material at 0K. Mat Stability is an agent skill from learningmatter-mit/AtomisticSkills. Calculate the thermodynamic stability and energy above the convex hull (Ehull) of a material at 0K.
How do I install Mat Stability in Claude Code?
Run `npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a claude-code`. Or copy the skill folder (skills/mat-stability in learningmatter-mit/AtomisticSkills) into .claude/skills/mat-stability in your project. Claude Code loads it when a task matches its description.
How do I install Mat Stability in Codex?
Run `npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a codex`. Or copy the skill folder (skills/mat-stability in learningmatter-mit/AtomisticSkills) into .agents/skills/mat-stability in your project. Codex loads it when a task matches its description.
Can I use Mat Stability in Cursor, Gemini CLI or GitHub Copilot?
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add learningmatter-mit/AtomisticSkills --skill mat-stability -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mat-stability, .gemini/skills/mat-stability, .github/skills/mat-stability and .opencode/skills/mat-stability in your project.
What does Mat Stability need to run?
Going by SKILL.md and its folder, Mat Stability needs Python for the scripts in its folder. Our summary lists: Python 3.
Does Mat Stability access the network?
SKILL.md names 2 domains. As links in the text: doi.org and github.com. This is read from the text; nothing was executed.
Is Mat Stability safe to install?
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
What licence does Mat Stability use?
Mat Stability is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
How many tokens does Mat Stability use?
About 2.2k tokens (SKILL.md is roughly 8.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
What are the alternatives to Mat Stability?
Skills that share tags, products or a category with Mat Stability: MCP Server Builder (anthropics/skills, 180k stars), MCP Server Builder (shareAI-lab/learn-claude-code, 78k stars), MCP Integration for Plugins (anthropics/claude-plugins-official, 37k stars) and Figma use_figma Plugin API Rules (warpdotdev/warp, 65k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Who maintains Mat Stability?
learningmatter-mit (a GitHub organization) maintains it in learningmatter-mit/AtomisticSkills, which has 175 GitHub stars. The repository holds 129 skills in this directory. The repository was last updated on October 6, 2026.