Integration

Ninox integration

Ninox is a low-code database and app builder. Read and write the records of a Ninox 4 workspace (list with filters and sorting, get one, create, update, upsert by a unique field, delete, import a CSV file, read changes since a timestamp, attach a file to a record), and manage its structure: modules, tables, fields (one by one or in batch), views, reports (render a report as a PDF), and global function scripts; read pages and components and a module's full definition; run a Ninox script against a record. Not included: creating or editing pages and components (UI layout), applying a whole module definition, the two-step presigned file upload and the XLSX view export. Authentication is a Workspace API key, created under Workspace Integration in the Ninox app and scoped to one workspace, sent as a Bearer token.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in Ninox.Built from the 48 Ninox tools below, on the connection you add once.

What you can do with Ninox

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Field, 8 operations

  • create_fieldCreate fieldPOSTCreates a new field in a table. **Choice / multi fields:** provide an `options` array with initial values.
  • create_fields_batchCreate fields batchPOSTCreates multiple fields in a table within a single transaction. If any field creation fails, all changes are rolled back.
  • delete_fieldDelete fieldDELETEDeletes one field from a table, identified by its machine name (see delete_fields_batch for several).
  • delete_fields_batchDelete fields batchDELETEDeletes multiple fields in a table within a single transaction. If any field deletion fails, all changes are rolled back.
  • get_fieldGet fieldGETRetrieves detailed information about a specific field in a table. For choice/multi fields the response includes an `options` array with stable ids.
  • list_fieldsList fieldsGETLists all fields of a table with their machine names, types and settings.
  • update_fieldUpdate fieldPATCHUpdates an existing field in a table. **choice / multi fields:** `options` replaces the full option list.
  • update_fields_batchUpdate fields batchPATCHUpdates multiple fields in a table within a single transaction. If any field update fails, all changes are rolled back.

Record, 7 operations

  • create_recordsCreate recordsPOSTCreates records in a table (max 6 MB payload). Each record is an object of field name to value. Returns the created record ids.
  • delete_recordsDelete recordsDELETEDeletes existing records from a table in a single transaction. If any record id is invalid, does not exist, or deletion fails, all changes are rolled back.
  • get_recordGet recordGETRetrieves a single record by its id. The record id is not a filterable field, so this is the only way to fetch a known record by id.
  • import_records_csvImport records csvPOSTImports records from a CSV file into an existing table (max 50 MB), in append, update or upsert mode, with optional column-to-field mappings.
  • list_recordsList recordsGETLists records of a table, up to 100 per page (limit, offset), with optional filter (a JSON object of field name to value), sort and field selection. Choice values come back as option ids.
  • update_recordsUpdate recordsPATCHUpdates existing records in a table (max. 6MB payload size). Each record must include an `id` field referencing an existing record.
  • upsert_recordsUpsert recordsPOSTCreates or updates records in a table, matched by a single explicit field (max. 6MB payload size). The match field must be marked `unique: true` on the table.

Function, 5 operations

  • create_global_functionCreate global functionPOSTCreates a script of global function definitions, callable from every script of the module.
  • delete_global_functionDelete global functionDELETEDeletes a global function script. Scripts after it that call its functions are not checked again. Needs records:write
  • get_global_functionGet global functionGETRetrieves a global function script of a module by name, with its code.
  • list_global_functionsList global functionsGETLists the module's global function scripts, in the name order they compile in
  • update_global_functionUpdate global functionPATCHUpdates or renames a global function script. The result is compiled again with the functions of the scripts before it by name.

Module, 5 operations

  • create_moduleCreate modulePOSTCreates a new module in the workspace, identified by its machine name.
  • delete_moduleDelete moduleDELETEDeletes a module from the workspace, identified by its machine name as returned by list_modules.
  • get_moduleGet moduleGETRetrieves detailed information about a specific module, including its tables
  • list_modulesList modulesGETRetrieves all modules available in a workspace
  • update_moduleUpdate modulePATCHUpdates a module (name, labels, icon, visibility, open roles or open script). Omitted properties are left unchanged.

Table, 5 operations

  • create_tableCreate tablePOSTCreates a new table in a module, identified by its machine name, with localized labels and optional permissions and triggers.
  • delete_tableDelete tableDELETEDeletes a table from a module, identified by its machine name as returned by list_tables.
  • get_tableGet tableGETRetrieves detailed information about a specific table, including its fields
  • list_tablesList tablesGETLists all tables of a module with their machine names, for the record and field tools.
  • update_tableUpdate tablePATCHUpdates an existing table in a module. Omitted properties are left unchanged.

View, 5 operations

  • create_viewCreate viewPOSTCreates a view in a table. Every view type can be created, with field references by name.
  • delete_viewDelete viewDELETEDeletes a view of a table, identified by its id as returned by list_views.
  • get_viewGet viewGETRetrieves one view of a table by id, with its type and configuration.
  • list_viewsList viewsGETLists all views of a table (table, list, calendar, chart, kanban and other types) with their ids.
  • update_viewUpdate viewPATCHUpdates a view. Nested configs (chartConfig, ganttConfig, pivot) are merged onto the stored ones, so a PATCH can send just the settings it changes.

Report, 4 operations

  • create_reportCreate reportPOSTCreates a report (print layout) for a table. Omit `objects` to auto-generate a layout from the table's current fields, matching the report designer's automatic layout option.
  • get_reportGet reportGETRetrieves a report (print layout) by id, with its page settings and layout objects.
  • list_reportsList reportsGETLists all reports (print layouts) of a table with their ids, for print_report.
  • print_reportPrint reportPOSTRenders a report for one record (or a merged run across several) as a PDF and returns a presigned download URL for it.

Change, 2 operations

  • list_record_changesList record changesGETRetrieves rows created, updated, or deleted since a given timestamp, for incremental sync. Only available for tables with history tracking enabled; returns 400 otherwise.
  • list_schema_changesList schema changesGETRetrieves the log of changes to modules, tables, and fields since a given timestamp, for incremental sync.

Component, 2 operations

  • delete_componentDelete componentDELETEDeletes a page or component, and every component nested under it
  • get_componentGet componentGETRetrieves a page or component of a module by id, with its type and settings.

Module definition, 1 operation

  • get_module_definitionGet module definitionGETReturns every object of a module as one definition that the PUT route applies, in this or another workspace. Custom roles are referenced by name as @role:<name>.

Module label, 1 operation

  • update_module_labelsUpdate module labelsPATCHUpdates labels across a module, its tables, their fields, and choice/multi option labels in a single transaction.

Record file, 1 operation

  • upload_record_fileUpload record filePOSTUploads a file and attaches it to a record in a single multipart/form-data request, with the file in the `file` form field, like the Ninox 3 files endpoint.

Script, 1 operation

  • execute_scriptExecute scriptPOSTRuns a Ninox script expression against a record, with writes and trigger cascades enabled (the API key needs the records:write grant). do as database is confined to the module named.

Workspace, 1 operation

  • get_workspaceGet workspaceGETRetrieves comprehensive details about a workspace, including all its modules

Use Ninox from Claude Code, Cursor or Codex

Connect Ninox in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Ninox operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect Ninox

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Ninox once

    Add your Ninox connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

Ninox integration FAQ

What can you do with the Ninox integration?

LiveContext exposes 48 operations on Ninox, covering field, record, function and module.

Popular integrations

Browse the whole catalog