Materials Project · Capability

Materials Project API

The Materials Project API allows anyone to have direct access to current, up-to-date information from the Materials Project database in a structured way. This allows for analysis, development of automated tools, machine learning, downloading personal copies of the Materials Project database and more on a large scale. The API is offered with the hopes of making Materials Project data more useful to you. We want you to use our data! As such, the API is offered free-of-charge and we support several tools to help you get started. ## API Key To make any request to the Materials Project API, you mus

Run with Naftiko MaterialsProjectAPI

What You Can Do

GET
Search doi get — Get DOIDoc documents
/doi/
GET
Search materials core blessed tasks get — Get MaterialsDoc documents
/materials/core/blessed_tasks/
POST
Search materials core find structure post — Post FindStructure documents
/materials/core/find_structure/
GET
Search materials core formula autocomplete get — Get FormulaAutocomplete documents
/materials/core/formula_autocomplete/
GET
Search materials core get — Get MaterialsDoc documents
/materials/core/
GET
Search materials absorption get — Get AbsorptionDoc documents
/materials/absorption/
GET
Search materials bonds get — Get BondingDoc documents
/materials/bonds/
GET
Search materials chemenv get — Get ChemEnvDoc documents
/materials/chemenv/
GET
Search materials tasks trajectory get — Get TrajectoryDoc documents
/materials/tasks/trajectory/
GET
Search materials tasks entries get — Get EntryDoc documents
/materials/tasks/entries/
GET
Search materials tasks deprecation get — Get DeprecationDoc documents
/materials/tasks/deprecation/
GET
Search materials tasks get — Get TaskDoc documents
/materials/tasks/
GET
Search materials thermo get — Get ThermoDoc documents
/materials/thermo/
GET
Search materials dielectric get — Get DielectricDoc documents
/materials/dielectric/
GET
Search materials piezoelectric get — Get PiezoelectricDoc documents
/materials/piezoelectric/
GET
Search materials magnetism get — Get MagnetismDoc documents
/materials/magnetism/
GET
Search materials phonon get — Get PhononBSDOSDoc documents
/materials/phonon/
GET
Search materials eos get — Get EOSDoc documents
/materials/eos/
GET
Search materials similarity get — Get SimilarityDoc documents
/materials/similarity/
GET
Search materials similarity match get — Get SimilarityDoc documents
/materials/similarity/match/
GET
Search materials xas get — Get XASDoc documents
/materials/xas/
GET
Search materials grain boundaries get — Get GrainBoundaryDoc documents
/materials/grain_boundaries/
GET
Search materials fermi get — Get FermiDoc documents
/materials/fermi/
GET
Search materials elasticity get — Get ElasticityDoc documents
/materials/elasticity/
GET
Search materials substrates get — Get SubstratesDoc documents
/materials/substrates/
GET
Search materials surface properties get — Get SurfacePropDoc documents
/materials/surface_properties/
GET
Search materials robocrys text search get — Get RobocrystallogapherDoc documents
/materials/robocrys/text_search/
GET
Search materials robocrys get — Get RobocrystallogapherDoc documents
/materials/robocrys/
GET
Search materials synthesis get — Get SynthesisSearchResultModel documents
/materials/synthesis/
GET
Search materials insertion electrodes get — Get InsertionElectrodeDoc documents
/materials/insertion_electrodes/
GET
Search materials conversion electrodes get — Get ConversionElectrodeDoc documents
/materials/conversion_electrodes/
GET
Search materials oxidation states get — Get OxidationStateDoc documents
/materials/oxidation_states/
GET
Search materials alloys get — Get AlloyPairDoc documents
/materials/alloys/
GET
Search materials provenance get — Get ProvenanceDoc documents
/materials/provenance/
GET
Search materials summary get — Get SummaryDoc documents
/materials/summary/
GET
Search materials electronic structure bandstruct — Get ElectronicStructureDoc documents
/materials/electronic_structure/bandstructure/
GET
Search materials electronic structure dos get — Get ElectronicStructureDoc documents
/materials/electronic_structure/dos/
GET
Search materials electronic structure get — Get ElectronicStructureDoc documents
/materials/electronic_structure/
GET
Search molecules summary get — Get MoleculeSummaryDoc documents
/molecules/summary/
GET
Search molecules jcesr get — Get MoleculesDoc documents
/molecules/jcesr/
GET
Search defects tasks get — Get DefectTaskDoc documents
/defects/tasks/

MCP Tools

search-doi-get

Get DOIDoc documents

read-only idempotent
search-materials-core-blessed-tasks-get

Get MaterialsDoc documents

read-only idempotent
search-materials-core-find-structure-post

Post FindStructure documents

search-materials-core-formula-autocomplete-get

Get FormulaAutocomplete documents

read-only idempotent
search-materials-core-get

Get MaterialsDoc documents

read-only idempotent
search-materials-absorption-get

Get AbsorptionDoc documents

read-only idempotent
search-materials-bonds-get

Get BondingDoc documents

read-only idempotent
search-materials-chemenv-get

Get ChemEnvDoc documents

read-only idempotent
search-materials-tasks-trajectory-get

Get TrajectoryDoc documents

read-only idempotent
search-materials-tasks-entries-get

Get EntryDoc documents

read-only idempotent
search-materials-tasks-deprecation-get

Get DeprecationDoc documents

read-only idempotent
search-materials-tasks-get

Get TaskDoc documents

read-only idempotent
search-materials-thermo-get

Get ThermoDoc documents

read-only idempotent
search-materials-dielectric-get

Get DielectricDoc documents

read-only idempotent
search-materials-piezoelectric-get

Get PiezoelectricDoc documents

read-only idempotent
search-materials-magnetism-get

Get MagnetismDoc documents

read-only idempotent
search-materials-phonon-get

Get PhononBSDOSDoc documents

read-only idempotent
search-materials-eos-get

Get EOSDoc documents

read-only idempotent
search-materials-similarity-get

Get SimilarityDoc documents

read-only idempotent
search-materials-similarity-match-get

Get SimilarityDoc documents

read-only idempotent
search-materials-xas-get

Get XASDoc documents

read-only idempotent
search-materials-grain-boundaries-get

Get GrainBoundaryDoc documents

read-only idempotent
search-materials-fermi-get

Get FermiDoc documents

read-only idempotent
search-materials-elasticity-get

Get ElasticityDoc documents

read-only idempotent
search-materials-substrates-get

Get SubstratesDoc documents

read-only idempotent
search-materials-surface-properties-get

Get SurfacePropDoc documents

read-only idempotent
search-materials-robocrys-text-search-get

Get RobocrystallogapherDoc documents

read-only idempotent
search-materials-robocrys-get

Get RobocrystallogapherDoc documents

read-only idempotent
search-materials-synthesis-get

Get SynthesisSearchResultModel documents

read-only idempotent
search-materials-insertion-electrodes-get

Get InsertionElectrodeDoc documents

read-only idempotent
search-materials-conversion-electrodes-get

Get ConversionElectrodeDoc documents

read-only idempotent
search-materials-oxidation-states-get

Get OxidationStateDoc documents

read-only idempotent
search-materials-alloys-get

Get AlloyPairDoc documents

read-only idempotent
search-materials-provenance-get

Get ProvenanceDoc documents

read-only idempotent
search-materials-summary-get

Get SummaryDoc documents

read-only idempotent
search-materials-electronic-structure-bandstruct

Get ElectronicStructureDoc documents

read-only idempotent
search-materials-electronic-structure-dos-get

Get ElectronicStructureDoc documents

read-only idempotent
search-materials-electronic-structure-get

Get ElectronicStructureDoc documents

read-only idempotent
search-molecules-summary-get

Get MoleculeSummaryDoc documents

read-only idempotent
search-molecules-jcesr-get

Get MoleculesDoc documents

read-only idempotent
search-defects-tasks-get

Get DefectTaskDoc documents

read-only idempotent

Capability Spec

materials-project-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Materials Project API
  description: 'The Materials Project API allows anyone to have direct access to current, up-to-date information from the
    Materials Project database in a structured way. This allows for analysis, development of automated tools, machine learning,
    downloading personal copies of the Materials Project database and more on a large scale. The API is offered with the hopes
    of making Materials Project data more useful to you. We want you to use our data! As such, the API is offered free-of-charge
    and we support several tools to help you get started. ## API Key To make any request to the Materials Project API, you
    mus'
  tags:
  - Materials
  - Project
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: materials-project
    baseUri: https://api.example.com
    description: Materials Project API HTTP API.
    authentication:
      type: apikey
      in: header
      name: X-API-KEY
      value: '{{MATERIALS_PROJECT_TOKEN}}'
    resources:
    - name: doi
      path: /doi/
      operations:
      - name: search-doi-get
        method: GET
        description: Get DOIDoc documents
        inputParameters:
        - name: material_ids
          in: query
          type: string
          description: Comma-separated list of material_id values to query on
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        - name: _fields
          in: query
          type: string
          description: 'Fields to project from DOIDoc as a list of comma separated strings. Fields include: `doi` `bibtex`
            `material_id`'
        - name: _all_fields
          in: query
          type: boolean
          description: Include all fields.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-core-blessed-tasks
      path: /materials/core/blessed_tasks/
      operations:
      - name: search-materials-core-blessed-tasks-get
        method: GET
        description: Get MaterialsDoc documents
        inputParameters:
        - name: run_type
          in: query
          type: string
          required: true
          description: Calculation run type of blessed task data
        - name: energy_min
          in: query
          type: string
          description: Minimum total uncorrected DFT energy in eV/atom
        - name: energy_max
          in: query
          type: string
          description: Maximum total uncorrected DFT energy in eV/atom
        - name: material_ids
          in: query
          type: string
          description: Comma-separated list of material_id values to query on
        - name: formula
          in: query
          type: string
          description: Query by formula including anonymized formula or by including wild cards. A comma delimited string
            list of anonymous formulas or regular formulas can also be pr
        - name: chemsys
          in: query
          type: string
          description: A comma delimited string list of chemical systems. Wildcards for unknown elements only supported for
            single chemsys queries
        - name: elements
          in: query
          type: string
          description: Query by elements in the material composition as a comma-separated list
        - name: exclude_elements
          in: query
          type: string
          description: Query by excluded elements in the material composition as a comma-separated list
        - name: task_ids
          in: query
          type: string
          description: Comma-separated list of task_ids to query on
        - name: deprecated
          in: query
          type: string
          description: Whether the material is marked as deprecated
        - name: nsites_max
          in: query
          type: string
          description: Query for maximum value of nsites
        - name: nsites_min
          in: query
          type: string
          description: Query for minimum value of nsites
        - name: nsites
          in: query
          type: string
          description: Query for nsites being equal to an exact value
        - name: nsites_not_eq
          in: query
          type: string
          description: Query for nsites being not equal to an exact value
        - name: nsites_eq_any
          in: query
          type: string
          description: Query for nsites being any of these values. Provide a comma separated list.
        - name: nsites_neq_any
          in: query
          type: string
          description: Query for nsites being not any of these values. Provide a comma separated list.
        - name: nelements_max
          in: query
          type: string
          description: Query for maximum value of nelements
        - name: nelements_min
          in: query
          type: string
          description: Query for minimum value of nelements
        - name: nelements
          in: query
          type: string
          description: Query for nelements being equal to an exact value
        - name: nelements_not_eq
          in: query
          type: string
          description: Query for nelements being not equal to an exact value
        - name: nelements_eq_any
          in: query
          type: string
          description: Query for nelements being any of these values. Provide a comma separated list.
        - name: nelements_neq_any
          in: query
          type: string
          description: Query for nelements being not any of these values. Provide a comma separated list.
        - name: volume_max
          in: query
          type: string
          description: Query for maximum value of volume
        - name: volume_min
          in: query
          type: string
          description: Query for minimum value of volume
        - name: density_max
          in: query
          type: string
          description: Query for maximum value of density
        - name: density_min
          in: query
          type: string
          description: Query for minimum value of density
        - name: density_atomic_max
          in: query
          type: string
          description: Query for maximum value of density_atomic
        - name: density_atomic_min
          in: query
          type: string
          description: Query for minimum value of density_atomic
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        - name: license
          in: query
          type: string
          description: Query by license. Can be commercial or non-commercial, or both
        - name: _fields
          in: query
          type: string
          description: 'Fields to project from MaterialsDoc as a list of comma separated strings. Fields include: `builder_meta`
            `nsites` `elements` `nelements` `composition` `composit'
        - name: _all_fields
          in: query
          type: boolean
          description: Include all fields.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-core-find-structure
      path: /materials/core/find_structure/
      operations:
      - name: search-materials-core-find-structure-post
        method: POST
        description: Post FindStructure documents
        inputParameters:
        - name: ltol
          in: query
          type: number
          description: Fractional length tolerance. Default is 0.2.
        - name: stol
          in: query
          type: number
          description: Site tolerance. Defined as the fraction of the average free length per atom := ( V / Nsites ) ** (1/3).
            Default is 0.3.
        - name: angle_tol
          in: query
          type: number
          description: Angle tolerance in degrees. Default is 5 degrees.
        - name: _limit
          in: query
          type: integer
          description: Maximum number of matches to show. Defaults to 1, only showing the best match.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-core-formula-autocomplete
      path: /materials/core/formula_autocomplete/
      operations:
      - name: search-materials-core-formula-autocomplete-get
        method: GET
        description: Get FormulaAutocomplete documents
        inputParameters:
        - name: formula
          in: query
          type: string
          required: true
          description: Human readable chemical formula.
        - name: limit
          in: query
          type: integer
          description: Maximum number of matches to show. Defaults to 10.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-core
      path: /materials/core/
      operations:
      - name: search-materials-core-get
        method: GET
        description: Get MaterialsDoc documents
        inputParameters:
        - name: material_ids
          in: query
          type: string
          description: Comma-separated list of material_id values to query on
        - name: formula
          in: query
          type: string
          description: Query by formula including anonymized formula or by including wild cards. A comma delimited string
            list of anonymous formulas or regular formulas can also be pr
        - name: chemsys
          in: query
          type: string
          description: A comma delimited string list of chemical systems. Wildcards for unknown elements only supported for
            single chemsys queries
        - name: elements
          in: query
          type: string
          description: Query by elements in the material composition as a comma-separated list
        - name: exclude_elements
          in: query
          type: string
          description: Query by excluded elements in the material composition as a comma-separated list
        - name: task_ids
          in: query
          type: string
          description: Comma-separated list of task_ids to query on
        - name: crystal_system
          in: query
          type: string
          description: Crystal system of the material. If a comma-separated string, will query by multiple crystal systems.
        - name: spacegroup_number
          in: query
          type: string
          description: Space group number of the material. If a comma-separated string, will query by multiple space group
            numbers.
        - name: spacegroup_symbol
          in: query
          type: string
          description: Space group symbol of the material. If a comma-separated string, will query by multiple space group
            numbers.
        - name: deprecated
          in: query
          type: string
          description: Whether the material is marked as deprecated
        - name: nsites_max
          in: query
          type: string
          description: Query for maximum value of nsites
        - name: nsites_min
          in: query
          type: string
          description: Query for minimum value of nsites
        - name: nsites
          in: query
          type: string
          description: Query for nsites being equal to an exact value
        - name: nsites_not_eq
          in: query
          type: string
          description: Query for nsites being not equal to an exact value
        - name: nsites_eq_any
          in: query
          type: string
          description: Query for nsites being any of these values. Provide a comma separated list.
        - name: nsites_neq_any
          in: query
          type: string
          description: Query for nsites being not any of these values. Provide a comma separated list.
        - name: nelements_max
          in: query
          type: string
          description: Query for maximum value of nelements
        - name: nelements_min
          in: query
          type: string
          description: Query for minimum value of nelements
        - name: nelements
          in: query
          type: string
          description: Query for nelements being equal to an exact value
        - name: nelements_not_eq
          in: query
          type: string
          description: Query for nelements being not equal to an exact value
        - name: nelements_eq_any
          in: query
          type: string
          description: Query for nelements being any of these values. Provide a comma separated list.
        - name: nelements_neq_any
          in: query
          type: string
          description: Query for nelements being not any of these values. Provide a comma separated list.
        - name: volume_max
          in: query
          type: string
          description: Query for maximum value of volume
        - name: volume_min
          in: query
          type: string
          description: Query for minimum value of volume
        - name: density_max
          in: query
          type: string
          description: Query for maximum value of density
        - name: density_min
          in: query
          type: string
          description: Query for minimum value of density
        - name: density_atomic_max
          in: query
          type: string
          description: Query for maximum value of density_atomic
        - name: density_atomic_min
          in: query
          type: string
          description: Query for minimum value of density_atomic
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        - name: _fields
          in: query
          type: string
          description: 'Fields to project from MaterialsDoc as a list of comma separated strings. Fields include: `builder_meta`
            `nsites` `elements` `nelements` `composition` `composit'
        - name: _all_fields
          in: query
          type: boolean
          description: Include all fields.
        - name: license
          in: query
          type: string
          description: Query by license. Can be commercial or non-commercial, or both
        - name: batch_id
          in: query
          type: string
          description: Query by batch identifier
        - name: batch_id_not_eq
          in: query
          type: string
          description: Exclude batch identifier
        - name: batch_id_eq_any
          in: query
          type: string
          description: Query by a comma-separated list of batch identifiers
        - name: batch_id_neq_any
          in: query
          type: string
          description: Exclude a comma-separated list of batch identifiers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-absorption
      path: /materials/absorption/
      operations:
      - name: search-materials-absorption-get
        method: GET
        description: Get AbsorptionDoc documents
        inputParameters:
        - name: material_ids
          in: query
          type: string
          description: Comma-separated list of material_id values to query on
        - name: nsites_max
          in: query
          type: string
          description: Query for maximum value of nsites
        - name: nsites_min
          in: query
          type: string
          description: Query for minimum value of nsites
        - name: nsites
          in: query
          type: string
          description: Query for nsites being equal to an exact value
        - name: nsites_not_eq
          in: query
          type: string
          description: Query for nsites being not equal to an exact value
        - name: nsites_eq_any
          in: query
          type: string
          description: Query for nsites being any of these values. Provide a comma separated list.
        - name: nsites_neq_any
          in: query
          type: string
          description: Query for nsites being not any of these values. Provide a comma separated list.
        - name: nelements_max
          in: query
          type: string
          description: Query for maximum value of nelements
        - name: nelements_min
          in: query
          type: string
          description: Query for minimum value of nelements
        - name: nelements
          in: query
          type: string
          description: Query for nelements being equal to an exact value
        - name: nelements_not_eq
          in: query
          type: string
          description: Query for nelements being not equal to an exact value
        - name: nelements_eq_any
          in: query
          type: string
          description: Query for nelements being any of these values. Provide a comma separated list.
        - name: nelements_neq_any
          in: query
          type: string
          description: Query for nelements being not any of these values. Provide a comma separated list.
        - name: volume_max
          in: query
          type: string
          description: Query for maximum value of volume
        - name: volume_min
          in: query
          type: string
          description: Query for minimum value of volume
        - name: density_max
          in: query
          type: string
          description: Query for maximum value of density
        - name: density_min
          in: query
          type: string
          description: Query for minimum value of density
        - name: density_atomic_max
          in: query
          type: string
          description: Query for maximum value of density_atomic
        - name: density_atomic_min
          in: query
          type: string
          description: Query for minimum value of density_atomic
        - name: bandgap_max
          in: query
          type: string
          description: Query for maximum value of bandgap
        - name: bandgap_min
          in: query
          type: string
          description: Query for minimum value of bandgap
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        - name: _fields
          in: query
          type: string
          description: 'Fields to project from AbsorptionDoc as a list of comma separated strings. Fields include: `builder_meta`
            `nsites` `elements` `nelements` `composition` `composi'
        - name: _all_fields
          in: query
          type: boolean
          description: Include all fields.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-bonds
      path: /materials/bonds/
      operations:
      - name: search-materials-bonds-get
        method: GET
        description: Get BondingDoc documents
        inputParameters:
        - name: material_ids
          in: query
          type: string
          description: Comma-separated list of material_id values to query on
        - name: max_bond_length_max
          in: query
          type: string
          description: Maximum value for the maximum bond length in the structure.
        - name: max_bond_length_min
          in: query
          type: string
          description: Minimum value for the maximum bond length in the structure.
        - name: min_bond_length_max
          in: query
          type: string
          description: Maximum value for the minimum bond length in the structure.
        - name: min_bond_length_min
          in: query
          type: string
          description: Minimum value for the minimum bond length in the structure.
        - name: mean_bond_length_max
          in: query
          type: string
          description: Maximum value for the mean bond length in the structure.
        - name: mean_bond_length_min
          in: query
          type: string
          description: Minimum value for the mean bond length in the structure.
        - name: coordination_envs
          in: query
          type: string
          description: Query by coordination environments in the material composition as a comma-separated list (e.g. 'Mo-S(6),S-Mo(3)')
        - name: coordination_envs_anonymous
          in: query
          type: string
          description: Query by anonymous coordination environments in the material composition as a comma-separated list
            (e.g. 'A-B(6),A-B(3)')
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        - name: _fields
          in: query
          type: string
          description: 'Fields to project from BondingDoc as a list of comma separated strings. Fields include: `builder_meta`
            `nsites` `elements` `nelements` `composition` `compositio'
        - name: _all_fields
          in: query
          type: boolean
          description: Include all fields.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-chemenv
      path: /materials/chemenv/
      operations:
      - name: search-materials-chemenv-get
        method: GET
        description: Get ChemEnvDoc documents
        inputParameters:
        - name: material_ids
          in: query
          type: string
          description: Comma-separated list of material_id values to query on
        - name: chemenv_iucr
          in: query
          type: string
          description: A comma delimited string list of unique (cationic) species in IUCR format.
        - name: chemenv_iupac
          in: query
          type: string
          description: A comma delimited string list of unique (cationic) species in IUPAC format.
        - name: chemenv_name
          in: query
          type: string
          description: A comma delimited string list of coordination environment descriptions for unique (cationic) species.
        - name: chemenv_symbol
          in: query
          type: string
          description: A comma delimited string list of ChemEnv symbols for unique (cationic) species in the structure.
        - name: species
          in: query
          type: string
          description: A comma delimited string list of unique (cationic) species in the structure.
        - name: csm_min
          in: query
          type: string
          description: Minimum value of the continous symmetry measure for any site.
        - name: csm_max
          in: query
          type: string
          description: Maximum value of the continous symmetry measure for any site.
        - name: elements
          in: query
          type: string
          description: Query by elements in the material composition as a comma-separated list
        - name: exclude_elements
          in: query
          type: string
          description: Query by excluded elements in the material composition as a comma-separated list
        - name: nsites_max
          in: query
          type: string
          description: Query for maximum value of nsites
        - name: nsites_min
          in: query
          type: string
          description: Query for minimum value of nsites
        - name: nsites
          in: query
          type: string
          description: Query for nsites being equal to an exact value
        - name: nsites_not_eq
          in: query
          type: string
          description: Query for nsites being not equal to an exact value
        - name: nsites_eq_any
          in: query
          type: string
          description: Query for nsites being any of these values. Provide a comma separated list.
        - name: nsites_neq_any
          in: query
          type: string
          description: Query for nsites being not any of these values. Provide a comma separated list.
        - name: nelements_max
          in: query
          type: string
          description: Query for maximum value of nelements
        - name: nelements_min
          in: query
          type: string
          description: Query for minimum value of nelements
        - name: nelements
          in: query
          type: string
          description: Query for nelements being equal to an exact value
        - name: nelements_not_eq
          in: query
          type: string
          description: Query for nelements being not equal to an exact value
        - name: nelements_eq_any
          in: query
          type: string
          description: Query for nelements being any of these values. Provide a comma separated list.
        - name: nelements_neq_any
          in: query
          type: string
          description: Query for nelements being not any of these values. Provide a comma separated list.
        - name: volume_max
          in: query
          type: string
          description: Query for maximum value of volume
        - name: volume_min
          in: query
          type: string
          description: Query for minimum value of volume
        - name: density_max
          in: query
          type: string
          description: Query for maximum value of density
        - name: density_min
          in: query
          type: string
          description: Query for minimum value of density
        - name: density_atomic_max
          in: query
          type: string
          description: Query for maximum value of density_atomic
        - name: density_atomic_min
          in: query
          type: string
          description: Query for minimum value of density_atomic
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        - name: _fields
          in: query
          type: string
          description: 'Fields to project from ChemEnvDoc as a list of comma separated strings. Fields include: `builder_meta`
            `nsites` `elements` `nelements` `composition` `compositio'
        - name: _all_fields
          in: query
          type: boolean
          description: Include all fields.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-tasks-trajectory
      path: /materials/tasks/trajectory/
      operations:
      - name: search-materials-tasks-trajectory-get
        method: GET
        description: Get TrajectoryDoc documents
        inputParameters:
        - name: task_ids
          in: query
          type: string
          description: Comma-separated list of task_ids to query on
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-tasks-entries
      path: /materials/tasks/entries/
      operations:
      - name: search-materials-tasks-entries-get
        method: GET
        description: Get EntryDoc documents
        inputParameters:
        - name: task_ids
          in: query
          type: string
          description: Comma-separated list of task_ids to query on
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Limited to 1000.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: materials-tasks-deprecation
      path: /materials/tasks/deprecation/
      operations:
      - name: search-materials-tasks-deprecation-get
        method: GET
        description: Get DeprecationDoc documents
        inputParameters:
        - name: task_ids
          in: query
          type: string
          required: true
          description: Comma-separated list of task_ids to query on
        - name: _page
          in: query
          type: integer
          description: Page number to request (takes precedent over _limit and _skip).
        - name: _per_page
          in: query
          type: integer
          description: Number of entries to show per page (takes precedent over _limit and _skip). Limited to 1000.
        - name: _skip
          in: query
          type: integer
          description: Number of entries to skip in the search.
        - name: _limit
          in: query
          type: integer
          description: Max number of entries to return in a single query. Lim

# --- truncated at 32 KB (317 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/materials-project/refs/heads/main/capabilities/materials-project-capability.yaml