Overview
Materials Project MCP (benedictdebrah) is a third-party Model Context Protocol server for querying the Materials Project database through the mp_api client. It provides a tool interface for assistant clients rather than a separate materials database or predictive model. The repository documents integration with Claude Desktop and VS Code Copilot; it does not establish endorsement by Materials Project. In a research workflow, its role is to make database searches and property retrieval available within an assistant conversation.
The documented inputs include element selections, band-gap ranges, stability criteria, material identifiers, and chemical systems. Depending on the selected tool, outputs include crystal structures and lattice parameters, electronic and phonon density-of-states data, band-structure plots, and property records. Additional tools cover magnetic, dielectric, elastic, surface, grain-boundary, and battery-related data. The README also describes cohesive-energy calculations and retrieval of atomic reference energies and aqueous ion reference data for Pourbaix diagrams.
The repository supplies Docker and local Python setup instructions, client configuration examples, and an MCP Inspector testing workflow. Access requires a Materials Project API key; local Python setup requires Python 3.12 or later and uv, while the Docker route requires a running Docker environment. These are documented setup paths, not independently tested compatibility claims. The supplied excerpts describe the tool inventory but do not establish scientific validation, response completeness, or coverage for every material. Evaluation should therefore check individual tool outputs against the upstream API documentation before using them in downstream research.
Key Features
- search_materials supports searches by elements, band-gap range, and stability; get_structure_by_id retrieves crystal structures and lattice parameters.
- Electronic and phonon tools provide band-structure plotting and density-of-states retrieval through get_electronic_bandstructure, get_electronic_dos_by_id, get_phonon_bandstructure, and get_phonon_dos_by_id.
- Property tools retrieve magnetic ordering, charge density, dielectric properties, elastic constants, diffraction patterns, and X-ray absorption spectra.
- Energy and stability tools cover cohesive-energy calculations, isolated-atom reference energies, thermodynamic stability, and aqueous ion reference data for Pourbaix diagrams.
- Materials-interface and battery tools cover suggested substrates, surface properties, computed grain boundaries, insertion electrodes, and oxidation states.
- The README documents Docker and local Python deployment, Claude Desktop and VS Code Copilot configuration, and interactive testing with MCP Inspector.
Use Cases
- Suggested evaluation: screen database candidates using element, band-gap, and stability criteria, then retrieve structures for closer inspection.
- Suggested evaluation: assemble electronic and phonon property data for selected material identifiers and compare retrieved records with upstream documentation.
- Suggested evaluation: explore thin-film substrate candidates alongside surface properties and grain-boundary records.
- Suggested evaluation: collect insertion-electrode data or aqueous ion references as inputs to battery-materials or Pourbaix-diagram research workflows.
How to Use
- Read the repository README to select the Docker or local Python setup route and review its prerequisites. For local setup, the documented requirements include Python 3.12 or later and uv.
- Obtain an API key through your Materials Project account. Keep it private and supply it through the documented MP_API_KEY configuration rather than including it in shared prompts or reports.
- Follow the README's installation instructions for your chosen route. For Docker, ensure Docker Desktop is running; for local Python, follow the environment and dependency setup provided there.
- Apply the README's Claude Desktop or VS Code Copilot configuration, replace the relevant placeholders privately, and restart the client as instructed.
- Evaluate a narrow search, such as silicon materials, then retrieve a structure or property for a returned identifier. Use the documented MCP Inspector workflow to inspect tool behavior, and consult the Materials Project documentation when interpreting results.