---
title: Libraries, APIs and community
eyebrow: Setting up
description: The published TypeScript, Python and Rust clients, the CLI, the MCP server, the skills, the OpenAPI spec and where to reach us.
---

# Libraries, APIs and community

Choose a client for your language, use the CLI or MCP server, or generate your own client from the [OpenAPI spec](../api/openapi.yaml). The [Quick Start](./getting-started.html) shows complete image and video programs using the published packages.

![Clients connected to one API](../assets/art/clients.jpg)

## Packages

<!-- gen:sdk-versions -->
| Client | Package | Version |
| --- | --- | --- |
| TypeScript | `@nolgia/sdk` | 0.1.4 |
| Python | `nolgia` on PyPI | 0.1.4 |
| Rust | `nolgia-client` | published with the CLI release; see crates.io |
<!-- /gen -->

## Published clients

| Language | Published package | Interface |
| --- | --- | --- |
| TypeScript | `@nolgia/sdk` on npm | `createNolgiaClient` returns an `openapi-fetch` client typed from the spec; call `GET` and `POST`. |
| Python | `nolgia` on PyPI | Import endpoint modules from `nolgia.api.*` and request and response types from `nolgia.models`. |
| Rust | `nolgia-client` on crates.io, released with the CLI | A progenitor-generated builder client: `client.generate_image().body_map(…).send()`. |

## Install

```bash tab="npm"
$ npm install @nolgia/sdk
```

```bash tab="yarn"
$ yarn add @nolgia/sdk
```

```bash tab="pnpm"
$ pnpm add @nolgia/sdk
```

```bash tab="bun"
$ bun add @nolgia/sdk
```

```bash tab="pip"
$ pip install nolgia
```

```bash tab="uv"
$ uv add nolgia
```

```bash tab="cargo"
$ cargo add nolgia-client
```

```bash tab="Homebrew"
$ brew install nolgiainc/nolgia/nolgia
```

```bash tab="curl installer"
$ curl -fsSL https://raw.githubusercontent.com/nolgiainc/nolgia-cli/main/install.sh | bash
```

```bash tab="curl"
$ curl https://api.nolgia.ai/v1/me -H "Authorization: Bearer $NOLGIA_TOKEN"
```

## Helpers and error types

> [!NOTE]
> The `submit` and `subscribe` helpers and `NolgiaGenerationError` ship in `@nolgia/sdk` and `nolgia` 0.1.4, whose job handle `cancel()` cancels the job on the server. They submit a generation, wait for its result and report failures in one call. The examples on this site deliberately call the endpoint interfaces directly instead, because every published release carries those, so a sample runs whichever version you already have installed.

## Other ways to connect

| Surface | Start here |
| --- | --- |
| Terminal and scripts | [The CLI](./cli.html) |
| Claude Code, Cursor and Codex | [Run MCP](./mcp.html) |
| Coding-agent skills and installation runbook | [Nolgia for Claude Code, Cursor and Codex](./coding-agents.html) |
| REST endpoints and schemas | [API reference](../api/) and [OpenAPI spec](../api/openapi.yaml) |
| Plain-text and JSON discovery | [Agent-readable surfaces](./agent-surfaces.html) |

## MCP tools

<!-- gen:mcp-tools -->
The server registry has 72 tools in eight groups.

#### Generate

| Tool | What it does |
| --- | --- |
| `nolgia_text_to_image` | Generate image from text |
| `nolgia_image_to_image` | Generate image from an image |
| `nolgia_text_to_video` | Generate video from text |
| `nolgia_image_to_video` | Animate an image into video |
| `nolgia_text_to_audio` | Generate audio from text |
| `nolgia_run_preset` | Run a preset |
| `nolgia_render_blocks` | Assemble clips and narration into one video |
| `nolgia_multicam_plan` | Plan a Multicam job |
| `nolgia_multicam_start` | Start a Multicam job |
| `nolgia_multicam_run` | Check a Multicam job |
| `nolgia_multicam_download` | Download every Multicam angle |
| `nolgia_multicam_cancel` | Stop a Multicam job |
| `nolgia_generate_3d` | Generate a 3D model |
| `nolgia_generate_set` | Generate a set of images |
| `nolgia_miroge_options` | Price a Miroge remake |
| `nolgia_miroge` | Remake a clip with Miroge |

#### Your library

| Tool | What it does |
| --- | --- |
| `nolgia_list_assets` | List generated assets |
| `nolgia_get_asset` | Open an asset |
| `nolgia_delete_asset` | Trash an asset |
| `nolgia_update_asset_tags` | Set an asset's tags |
| `nolgia_upload_asset` | Upload an image |
| `nolgia_list_characters` | List saved characters |
| `nolgia_get_character` | Get one character |
| `nolgia_create_character` | Save a character |
| `nolgia_update_character` | Update a character |
| `nolgia_delete_character` | Delete a character |
| `nolgia_list_styles` | List saved styles |
| `nolgia_create_style` | Save a style |
| `nolgia_delete_style` | Delete a saved style |
| `nolgia_transcribe_asset` | Transcribe an asset |
| `nolgia_get_transcript` | Get an asset transcript |
| `nolgia_suggest_clips` | Find short video clips |
| `nolgia_create_clips` | Create short video clips |
| `nolgia_get_set` | Get a set of images |
| `nolgia_get_miroge` | Check a Miroge remake |

#### Projects

| Tool | What it does |
| --- | --- |
| `nolgia_list_projects` | List projects |
| `nolgia_get_project` | Get one project |
| `nolgia_create_project` | Create a project |
| `nolgia_update_project` | Update a project |
| `nolgia_delete_project` | Delete a project |
| `nolgia_add_project_assets` | Add assets to a project |
| `nolgia_remove_project_asset` | Remove an asset from a project |
| `nolgia_list_canvases` | List canvases |
| `nolgia_get_canvas` | Get a canvas |
| `nolgia_create_canvas` | Create a canvas |
| `nolgia_update_canvas` | Update a canvas |

#### Edit sessions and tweaks

| Tool | What it does |
| --- | --- |
| `nolgia_list_tweak_scopes` | List image tweak scopes |
| `nolgia_create_edit_session` | Start an edit session |
| `nolgia_get_edit_session` | Read an edit session |
| `nolgia_edit_session_step` | Apply the next image edit |
| `nolgia_revert_edit_session` | Revert an edit session |
| `nolgia_estimate_edit_session` | Estimate the next edit |

#### Presets

| Tool | What it does |
| --- | --- |
| `nolgia_list_presets` | List presets |
| `nolgia_get_preset` | Get one preset |

#### Timelines

| Tool | What it does |
| --- | --- |
| `nolgia_validate_mask` | Validate a timeline mask |
| `nolgia_validate_motion` | Validate timeline motion |
| `nolgia_list_color_presets` | List color-grade presets |
| `nolgia_get_render` | Check a render |

#### Desktop apps

| Tool | What it does |
| --- | --- |
| `nolgia_app_status` | List connected desktop apps |
| `nolgia_app_info` | Read a desktop app's state |
| `nolgia_app_run` | Run code in a desktop app |
| `nolgia_app_command` | Check a desktop app command |
| `nolgia_app_preview` | Preview a desktop app's document |
| `nolgia_app_import` | Import an asset into a desktop app |
| `nolgia_app_export` | Export from a desktop app |
| `nolgia_app_save` | Save the document in a desktop app |
| `nolgia_app_open` | Open a document in a desktop app |

#### Models, account and jobs

| Tool | What it does |
| --- | --- |
| `nolgia_list_models` | List models |
| `nolgia_get_account` | Get the signed-in account |
| `nolgia_get_usage` | Get generation counts |
| `nolgia_cancel_job` | Cancel a generation job |
| `nolgia_list_jobs` | List generation jobs |
<!-- /gen -->

## Community

| Where | What for |
| --- | --- |
| [GitHub](https://github.com/nolgiainc) | Public repositories and issues. |
| [Contact](https://nolgia.ai/contact) | Reach the team. |
| [Changelog](https://nolgia.ai/changelog) | Read release updates. |

:::cards
- [Quick Start](./getting-started.html) icon=spot-library: Generate an image and a video with a published client.
- [Run MCP](./mcp.html) icon=spot-agent: Connect your coding agent to the server.
- [The CLI](./cli.html) icon=spot-terminal: Generate and script from your terminal.
:::
