NomaCMS

Available Tools

Available Tools

The MCP server registers 39 tools and 3 resources. Tool responses are JSON text suitable for agents to parse. Under the hood they call https://app.nomacms.com/api with your configured project id and API key scoped to that project’s workspace (see Authentication).

Resources

Agents can read these URIs for long-form reference (field types, collections behavior, and query syntax):

URITitle
nomacms://field-typesField Types Reference — all 16 field types, options, validations
nomacms://collections-guideCollections Guide — singletons, reserved slugs, field order
nomacms://query-referenceContent Query Reference — where operators, OR groups, sort, pagination

Project

ToolDescription
get_projectProject metadata (default_locale, locales, and related fields)
add_project_localeAdd a locale code (admin)
set_default_project_localeSet the default locale (admin)

Collections

ToolDescription
list_collectionsList all collections
get_collectionOne collection by slug, including field schema
create_collectionCreate a collection; optional fields array to define schema in one step
update_collectionUpdate name and slug
reorder_collectionsSet display order by collection UUID

Fields

ToolDescription
create_fieldAdd a field to a collection
update_fieldUpdate field definition
reorder_fieldsReorder fields within a collection

There is no delete_field tool in MCP; remove or adjust fields in the NomaCMS app if needed.

Content entries

ToolDescription
list_entriesList with where filters, sort, pagination, first, or count
get_entrySingle entry by collection slug and entry UUID
create_entryCreate an entry
update_entryReplace entry draft fields (never changes publish state)
patch_entryPartial update of draft fields (never changes publish state)
publish_entryMint a new version from the draft and make it live (update)
unpublish_entryClear the live published pointer; versions retained (update)
delete_entrySoft-delete (trash)
link_entry_translationLink two entries across locales (update)
bulk_create_entriesCreate many entries atomically (supports publish-on-create)
bulk_update_entriesUpdate many drafts by UUID atomically; call publish_entry afterwards
bulk_delete_entriesDelete many entries by UUID atomically

Save vs. publish: update_entry, patch_entry, and bulk_update_entries only mutate the draft — the entry's last published version keeps serving state=published reads. Use publish_entry / unpublish_entry to change public visibility.

Drafts vs. published reads: list_entries and get_entry default to state=published, which reads the latest immutable snapshot. Pass state=draft to read live working-draft field values.

Richtext: On write, set richtext fields to a markdown string. On read, shape depends on the field’s editor.outputFormat (markdown vs html), consistent with the Content API.

Content entry versions

Every publish writes an immutable snapshot. These tools expose that history.

ToolDescription
list_entry_versionsList all versions for an entry (most recent first)
get_entry_versionFetch a single version by version_number, including the snapshot payload
revert_entry_versionRestore the draft from a prior snapshot and publish it as a new version (update)
update_entry_version_labelEdit label and/or description on a version; snapshot stays immutable (update)

Version retention is plan-based (Basic 10 / Grow 50 / Pro unlimited). When the cap is reached, the oldest versions are pruned on the next publish — the currently published version is never pruned. See Versions.

Media fields: Responses include url, thumbnail_url, and original_url where applicable (optional ?variant= query as in the API).

Assets

ToolDescription
list_assetsList with pagination
get_assetBy UUID or filename
upload_assetUpload a file
bulk_upload_assetsUpload multiple files atomically
bulk_update_asset_metadataUpdate metadata for multiple assets
delete_assetDelete an asset

Webhooks

All webhook HTTP routes require the admin ability on your API key (not only read or create).

ToolDescription
list_webhooksList all webhooks
get_webhookOne webhook by UUID
create_webhookCreate (events, URL, optional secret, collections, and so on)
update_webhookUpdate by UUID
delete_webhookDelete by UUID
list_webhook_logsDelivery logs for a webhook

Package reference

The canonical list and implementation details stay in the open-source repo: nomacms-mcp-server on GitHub and the package README on npm.

  • MCP Server Overview - Scope and limitations
  • MCP Server Setup - Environment variables and API key abilities
  • Advanced Filtering - REST query parameters that align with list_entries
  • Agent Skills - SDK and workflow skills for the code your agent writes alongside MCP

Search documentation

Find guides and reference pages