--- name: mat-synthesis-recommendation description: Query and rank synthesis recipes from Materials Project's text-mined literature database with precursors, procedures, and journal references. metadata: category: [materials] venv: [cpu] --- # Synthesis Recommendation ## Goal To provide experimentally validated synthesis routes for target inorganic materials by querying Materials Project's text-mined database of synthesis recipes extracted from scientific literature. This skill returns precursor materials, synthesis procedures, reaction equations, and DOI references to published papers. ## Instructions ### 1. Query Synthesis Recipes Search for synthesis recipes for a target material using the Materials Project API: ```bash ${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/scripts/recommend_synthesis.py "LiFePO4" --limit 10 --output synthesis_recipes.json ``` **Parameters:** - `formula`: Target material formula (e.g., `"LiFePO4"`, `"Li2CO3"`, `"NMC811"`) - `--limit`: Maximum number of recipes to display (default: 10) - `--output`: Optional JSON file to save results - `--type`: Filter by synthesis type (e.g., `"solid-state"`, `"hydrothermal"`, `"sol-gel"`) - `--min-temp`: Minimum synthesis temperature in °C - `--max-temp`: Maximum synthesis temperature in °C **Output:** Recipes are automatically ranked by: 1. **Simplicity**: Fewer precursors preferred 2. **Temperature**: Lower synthesis temperatures preferred 3. **Synthesis type**: Common methods (solid-state, hydrothermal) ranked higher ### 2. Interpret Results Each recipe contains: - **Target material**: Normalized chemical formula - **Precursors**: Starting materials/reagents - **Synthesis type**: Method category (solid-state, hydrothermal, sol-gel, etc.) - **Procedure**: Step-by-step synthesis description from the paper - **Reaction equation**: Balanced chemical equation (when available) - **DOI**: Link to the source publication for full experimental details ### 3. Validate Synthesis Feasibility (Optional) Cross-check the recommended precursors with other skills: ```bash # Check if target material is thermodynamically stable # See: ../mat-stability/SKILL.md ${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/../mat-stability/scripts/query_mp_hull.py \ --formula "Li-Fe-P-O" --target "LiFePO4" --output hull_structures/ # Calculate formation energy to verify synthesizability # Energy above hull (E_hull) < 0.1 eV/atom indicates likely synthesizability ``` ## Examples ### Example 1: Basic Query for LiFePO4 ```bash ${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/scripts/recommend_synthesis.py "LiFePO4" --limit 5 ``` **Expected output:** - 5 synthesis recipes ranked by simplicity - Common precursors: Li₂CO₃, FeC₂O₄, NH₄H₂PO₄ - Typical methods: solid-state reaction, hydrothermal synthesis - DOI links to papers in *J. Electrochem. Soc.*, *Chem. Mater.*, etc. ### Example 2: Filter by Synthesis Type ```bash # Query only hydrothermal synthesis routes for LiCoO2 ${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/scripts/recommend_synthesis.py "LiCoO2" --type hydrothermal --limit 10 --output LiCoO2_hydrothermal.json ``` ### Example 3: Temperature-Constrained Search ```bash # Find low-temperature synthesis routes (< 600°C) for Li2CO3 ${CLAUDE_SKILL_DIR}/../../venv/run cpu python ${CLAUDE_SKILL_DIR}/scripts/recommend_synthesis.py "Li2CO3" --max-temp 600 --limit 10 ``` ## Constraints - **API Key Required**: Requires Materials Project API key via `MP_API_KEY` environment variable or `~/.atomistic_skills.yaml` configuration - **Environment**: This skill requires the `cpu` environment (includes `mp-api`, `pymatgen`) - **Coverage Limitations**: Not all materials have synthesis recipes in the database - Database contains ~55,000 recipes for common inorganic materials - Coverage is best for battery materials, ceramics, and metal oxides - Organic materials and MOFs have limited coverage - **Text-Mining Accuracy**: Recipes are automatically extracted from literature using NLP - Precursors and procedures are generally accurate but should be verified against the source DOI - Temperature values may be missing or incomplete in some entries - **Data Freshness**: The text-mined database is periodically updated but may not include the most recent publications ## Data Source The synthesis recipes are extracted from scientific literature using natural language processing by the Materials Project team. The underlying datasets include: - **Solid-state synthesis**: 19,488+ recipes from the CederGroup text-mined database - **Solution-based synthesis**: 35,675+ recipes for solution, hydrothermal, and sol-gel methods - **NLP pipeline**: Transformer-based models for paragraph classification, named entity recognition, and synthesis action extraction **References:** - Materials Project Synthesis Explorer: https://materialsproject.org/synthesis - Text-mined synthesis datasets: [CederGroup GitHub](https://github.com/CederGroupHub/text-mined-synthesis_public) - Kim et al., "A Database of Synthesis Recipes for Inorganic Materials," *Sci. Data* (2017) ## Related Skills - [mat-stability](../mat-stability/SKILL.md): Verify thermodynamic stability before attempting synthesis - [mat-intercalation-voltage](../mat-intercalation-voltage/SKILL.md): Calculate electrochemical properties of synthesized cathode materials --- **Author:** Bowen Deng **Contact:** [GitHub @learningmatter-mit](https://github.com/learningmatter-mit)