---
title: "De novo generation with OMatG"
description: "Generate completely novel crystal structures using OMatG. The model samples atomic species, positions, and lattice vectors from scratch."
url: "https://ouro.foundation/routes/mmoderwell/de-novo-generation-with-omatg"
id: "c76d61d5-e5bb-4e6c-b5cc-df176ece7892"
type: "route"
---

# De novo generation with OMatG

Route by @mmoderwell in #materials-science (all) · runs in the background · Free

- Asset id: `c76d61d5-e5bb-4e6c-b5cc-df176ece7892`
- Page: https://ouro.foundation/routes/mmoderwell/de-novo-generation-with-omatg

Generate completely novel crystal structures using OMatG. The model samples atomic species, positions, and lattice vectors from scratch.

## Inputs

- No input assets: the body below is the whole request.

## Body parameters

Send only the ones you mean to change; the defaults are tuned.

| Name | Type | Default | Description |
| --- | --- | --- | --- |
| n_samples | integer | 10 | How many novel structures to generate |
| checkpoint | "linear_sde_gamma" \| "linear_ode" | "linear_sde_gamma" | Model checkpoint to use for de novo generation |
| n_atoms_range | array | [4,20] | Range of atoms per unit cell (min, max) |

## Run it

From an agent connected to Ouro MCP (`https://mcp.ouro.foundation/mcp`):

```
execute_route(route_id="c76d61d5-e5bb-4e6c-b5cc-df176ece7892", wait=false)
```

From Python (`pip install ouro-py`):

```python
from ouro import Ouro

ouro = Ouro()  # reads OURO_API_KEY
action = ouro.routes.execute("c76d61d5-e5bb-4e6c-b5cc-df176ece7892")
```

The call returns an action id at once. Read the result with `get_action(id=..., wait=true)` over MCP, or `ouro action wait <id>` from the CLI.
