25 August 2026 · Ibtisam Ahmed Khan

Claude Skills for materials science: what actually exists right now

What Claude Skills are, how they differ from MCP, and how to install three real materials science skills available today.


Something changed in how Claude gets taught specialised knowledge. In October 2025, Anthropic introduced Agent Skills: small packages of instructions and reference material you hand to Claude so it stops improvising and starts following a domain expert’s playbook. Two months later, the file format became an open standard, also called Agent Skills, published at agentskills.io. That is why people use “Claude Skills” and “Agent Skills” almost interchangeably: the feature launched under the Claude brand, and the format it uses was later opened up.

The three skills in this post, though, are all Claude Skills specifically. They install into a .claude/skills/ folder or through Claude’s plugin system, and they only run inside Claude Code, Claude Desktop, or the Claude API. Materials science has started to show up in this space, so I went looking for what is actually there, checked three real examples, and worked out how to install each one.

What a skill actually is

A skill is not a live connection to a database. It is closer to a very good, structured brief that Claude reads before it starts working: what the domain is, what conventions matter, which tools to reach for, and what mistakes to avoid. I have written before about MCP, which gives Claude live tools it can call, for example to fetch a real formation energy from the Materials Project. A skill is the other half: it is know-how, not access. A well-built materials science skill might tell Claude exactly how to call pymatgen, which fields to request from an API to avoid an expensive full-document pull, or which elemental reference corrections matter when comparing formation energies. It does not fetch data on its own; it often calls an MCP server, or a library, to do that.

How to install a Claude Skill

A skill is just a folder containing a SKILL.md file. Every install method, on every platform, comes down to getting that folder into the right place, or uploading it in the right format. How you do that depends on which Claude you use day to day.

Terminal
Claude Code CLI, any OS
VS Code
Claude Code extension
Claude Desktop
Mac and Windows app
Claude Web
claude.ai in your browser

What you are actually installing

Before the platform-specific steps, it helps to see what a skill actually is. Strip away the marketplace packaging and every skill is one folder with a SKILL.md inside it: YAML frontmatter between --- markers, then plain markdown instructions below it.

---
name: materials-databases
description: Query AFLOW and the Materials Project for crystal structures, band gaps, and stability data. Use when asked about specific materials, compositions, or phase stability.
---

When asked about a material's properties, check the Materials Project first
if a band gap or electronic property is needed. Use AFLOW for large-scale
screening across compositions, since it needs no API key...

description is the only field that matters for Claude to find the skill on its own: Claude reads every installed skill’s description and decides when to load the full instructions. The folder name (Terminal and VS Code) or the ZIP file’s top-level folder (Desktop and Web) becomes the command you type to invoke it directly, for example /materials-databases. A skill folder can also carry extra files, reference docs, example data, small scripts, that Claude only opens when the main instructions point to them, so the base cost of having a skill installed stays close to zero until you actually use it.

Terminal and VS Code both run Claude Code, and read skills straight off disk. Desktop and Web both run through your claude.ai account, and read skills you upload as a ZIP. That split is why the four sets of steps below look different even though they end at the same place.

Terminal (Claude Code CLI)

The most direct path, and the one every other Claude Code method builds on.

  1. Install Claude Code once, if you have not already: npm install -g @anthropic-ai/claude-code.
  2. Create your skills folder if it does not exist yet, then clone straight into a subfolder named after the skill:
mkdir -p ~/.claude/skills
cd ~/.claude/skills
git clone <repository-url> <skill-name>
  1. If the skill has its own installer, for example openskills install <owner>/<repo>, use that instead of the manual clone. It gets the folder structure right automatically.
  2. If the skill is packaged as a Claude Code plugin, install it from inside a running claude session instead: type /plugin, search for it, and choose User scope to make it available in every project, or Project scope to keep it local to the current repository.
  3. Restart claude if the skills folder itself was new, then run /skills to confirm it loaded.

VS Code (Claude Code extension)

Same underlying engine as the terminal, inside your editor.

  1. Open the Extensions view with Ctrl+Shift+X (Cmd+Shift+X on Mac), search for “Claude Code,” and click Install.
  2. Open VS Code’s integrated terminal with Ctrl+` and type claude to start a session, exactly as you would in a standalone terminal.
  3. Follow the Terminal steps above from step 2 onward. Because the extension reads the same ~/.claude/skills/ and .claude/skills/ folders as the CLI, anything installed one way is visible the other way too.
  4. A skill installed at the project level (.claude/skills/) is a good fit here specifically, since it travels with the repository and shows up for anyone who opens the same project in VS Code.

Claude Desktop

No terminal needed, but you do the folder-to-ZIP step yourself first.

  1. If the skill is not already a ZIP, get its folder onto your computer: clone the GitHub repository, or download it, then locate the specific skill’s subfolder, the one containing SKILL.md directly inside it.
  2. Compress just that folder into a ZIP: right-click it and choose “Compress” on Mac, or “Send to > Compressed folder” on Windows. The ZIP’s top level should be the skill folder itself, not a parent folder containing it.
  3. Open Claude Desktop, click Customize, then Skills.
  4. Click the + button, choose Create skill, then Upload a skill, and select your ZIP.
  5. Claude reads the SKILL.md at the root of the ZIP and shows a summary. Confirm, then toggle the skill on: uploading and enabling are two separate steps, and only an enabled skill is actually usable.

Claude Web (claude.ai)

Same flow as Desktop, in the browser, and skills you enable here also become available in Desktop and in Cowork or cloud sessions automatically.

  1. Go to Settings > Capabilities and make sure “Code execution and file creation” is turned on. Skills need this to run.
  2. Go to Customize > Skills.
  3. Click the + button, choose Create skill, then Upload a skill, and select a ZIP built the same way as the Desktop steps above: the skill’s own folder, containing SKILL.md at its root, compressed directly.
  4. Toggle the skill on once it appears in your list.

Verifying it worked

Terminal or VS Code: run /skills inside a Claude Code session to see everything currently loaded, or just ask Claude directly, “what skills do you have available?” If a newly installed skill does not show up, the almost-always cause is that SKILL.md is nested one folder too deep: it needs to sit directly inside <skill-name>/SKILL.md, not inside an extra subfolder the repository’s own layout introduced.

Desktop or Web: check that the skill’s toggle in Customize > Skills is switched on, then ask a question that matches what the skill is for. You do not name the skill yourself; Claude matches your request against its description and loads it when relevant.

Removing a skill

Terminal or VS Code: delete its folder, ~/.claude/skills/<skill-name>/ for a personal skill or .claude/skills/<skill-name>/ for a project one.

Desktop or Web: open Customize > Skills and toggle it off, or remove it from the list entirely.

Three skills, checked

1. materials-science-specialist

Aims to cover material properties, processing techniques, testing methodologies, and material selection for engineering applications, broadly across materials science rather than one narrow slice of it. The listing itself is candid about where it stands: it is flagged as being in a “legacy state, with low confidence,” and recommends fresh web research before relying on it. That is a useful signal in itself. A skill is only as good as the domain knowledge baked into it, and this one is telling you plainly that its knowledge needs a refresh.

This skill lives inside a larger repository, not at the repository root, so cloning the whole repo and copying just its subfolder is the right approach:

git clone https://github.com/sandraschi/advanced-memory-mcp.git
cp -r advanced-memory-mcp/skills/sciences/materials-science-specialist ~/.claude/skills/
rm -rf advanced-memory-mcp

The last line is optional cleanup: it removes the full repository clone once you have copied out just the skill folder you need. Restart Claude Code, then check it loaded with /skills, or test it directly by asking something like “what testing methods would you use to evaluate a new polymer composite?” Given the low-confidence flag, treat its answers as a starting point to verify, not a final one.

On Desktop or Web, skip the commands: zip the materials-science-specialist folder from the clone and upload it under Customize > Skills instead.

2. pymatgen-materials-science

Wraps pymatgen, the core Python library for computational materials science that also powers the Materials Project. It covers structure and molecule handling across more than 100 file formats (CIF, POSCAR, XYZ, VASP, Gaussian, Quantum ESPRESSO), symmetry and coordination analysis, phase diagrams and thermodynamic stability, electronic structure tools like band structures and density of states, and surface and slab generation. It also integrates with the Materials Project API for database queries. Of the three, this is the most concretely useful: it is not teaching Claude general materials knowledge, it is teaching it how to correctly drive a specific, well-established library that most of the field already relies on.

This one is packaged as a Claude Code plugin, so it installs through Claude’s own plugin system rather than a manual clone:

claude plugin marketplace add K-Dense-AI/claude-scientific-skills
claude plugin install scientific-skills@claude-scientific-skills

Run those two commands inside Claude Code, not your regular terminal: the first registers the collection’s marketplace, the second installs the specific skill from it. You will need pymatgen itself importable in whatever Python environment Claude runs code in, since the skill drives the library rather than replacing it. Test it by asking Claude to load a CIF file and report its space group, which exercises both the skill’s instructions and the underlying library in one go.

This one is packaged as a plugin specifically for Claude Code, so it is Terminal and VS Code only: Desktop and Web do not support plugin installs at all, only individual skill uploads.

3. materials-databases

Scoped tightly to querying AFLOW (3.5 million+ calculated materials, no API key needed) and the Materials Project (150,000+ inorganic compounds, free API key required), using mp-api, pymatgen, ASE, and requests, plus the AFLUX search language for large-scale screening. It covers crystal structure retrieval and format conversion, band gap searches, energy-above-hull stability checks, phase diagrams, phonon data, elastic properties, and cross-database comparison. This is the one that reads most like it was written by someone who has actually hit the specific errors these databases produce and wrote the fix down.

It ships its own installer, so this is the simplest of the three to get running:

openskills install jkitchin/skillz

If you do not have openskills yet, it is a small CLI wrapper for exactly this kind of install; check the jkitchin/skillz repository for its setup instructions if the command is not found. Before testing, generate a free Materials Project API key at materialsproject.org, since any query that touches the Materials Project side of this skill needs one. AFLOW queries need no key at all. Test it by asking Claude to find stable semiconductors in a specific band-gap window, which is exactly the kind of cross-database screening this skill is built for.

On Desktop or Web, clone the jkitchin/skillz repository, zip the relevant skill folder inside it, and upload that instead of running openskills.

What this tells you about the category right now

Put these three side by side and a pattern shows up fast. The general-purpose one, covering “materials science” broadly, is the weakest and says so about itself. The two narrow ones, scoped to a specific library or a specific pair of databases, are the strongest. That is not a coincidence. A skill is only as trustworthy as the person who wrote it and how deep their knowledge of that narrow slice actually goes. “Materials science” is too big a domain for one skill to cover well; “how to correctly query AFLOW and the Materials Project” is not.

This is the same lesson I keep running into with MCP servers for materials data: connecting an AI to a tool is the easy part. Knowing whether what it gives you back is right, and whether the skill or server was built by someone who actually understands the domain’s sharp edges, is still the open problem. A skills marketplace listing does not audit domain accuracy. It lists what someone uploaded.

What I would actually do with these

If you are working in computational materials science today and want to try this, start narrow. A skill built around pymatgen or around a specific pair of databases saves real time: it encodes conventions you would otherwise have to explain to Claude every single session. A skill claiming to cover “materials science” as a whole is worth treating the way you would treat an unreviewed textbook chapter: plausible, occasionally right, and not something to build a real calculation on without checking.

The category is barely a year old. Give it time, and give the narrow ones your attention first.


Found a mistake? Good, tell me. This publication flags its own suspect values. Reach me on LinkedIn.