NomaCMS

Blog

What is MCP and how does a CMS MCP server help your AI editor?

Raşit Apalak
Raşit ApalakJuly 15, 2026

If you build with Cursor, Claude Code, or Windsurf, you have probably pasted the same CMS docs into chat more than once. Schema rules, auth headers, field types, publish flows. The model helps, but it starts cold every session.

MCP (Model Context Protocol) is an open standard that lets AI clients call tools and read resources from external services. Instead of guessing your stack, the editor can list collections, create entries, and check field types through structured calls.

NomaCMS ships @nomacms/mcp-server and agent skills so your editor already knows Noma patterns. This post explains MCP in plain language, then shows how to wire it up for a NomaCMS project.

MCP in 60 seconds

Think of MCP as a USB port between your AI editor and your tools.

PieceWhat it does
MCP clientYour editor (Cursor, Claude Code, etc.)
MCP serverA small program that exposes tools and resources
ToolsActions the agent can call (list entries, create a field, upload an asset)
ResourcesReference docs the agent can read (field types, query syntax)

The client launches the server process and talks over stdio (standard input/output). You do not host a public URL for local MCP. The editor starts @nomacms/mcp-server with npx, passes your credentials as environment variables, and the agent discovers tools automatically.

Why a generic MCP server is not enough for CMS work

Filesystem and GitHub MCP servers are useful. They do not know that:

  • NomaCMS entries store custom values under fields, not data
  • Relation fields accept UUIDs on write but return nested objects on read
  • Content API keys need specific abilities (read, create, update, delete, admin)
  • Project auth tokens are separate from personal access tokens

A CMS-specific MCP server encodes those rules in tools and reference resources. That is what @nomacms/mcp-server provides: 39 tools plus three built-in resources (nomacms://field-types, nomacms://collections-guide, nomacms://query-reference).

What the NomaCMS MCP server can do

Grouped by task:

AreaExamples
Projectget_project, add or set default locales
Schemalist_collections, create_collection, create_field, reorder fields
Contentlist_entries, create_entry, publish_entry, bulk create/update/delete
Assetsupload_asset, list_assets, bulk metadata updates
Webhookscreate_webhook, list_webhook_logs

The server uses the same Content API as the dashboard and JavaScript SDK. It authenticates with your personal access token and project id.

What it does not expose: deleting collections and removing locales (use the dashboard for those).

Before you install: get credentials

  1. Open app.nomacms.com and select the workspace that owns your project.
  2. Create an API key under User Settings → API Keys. For local dev, many teams enable all abilities (read, create, update, delete, admin) so schema and content tools work without permission errors.
  3. Copy your Project ID from the project home page or Project Settings → API Access.

Install in Cursor

Add to ~/.cursor/mcp.json:

{ "mcpServers": { "nomacms": { "command": "npx", "args": ["-y", "@nomacms/mcp-server"], "env": { "NOMA_API_KEY": "your-api-key", "NOMA_PROJECT_ID": "your-project-uuid" } } } }

Restart Cursor or reload MCP settings.

Install in Claude Code

claude mcp add nomacms \ -e NOMA_API_KEY=your-api-key \ -e NOMA_PROJECT_ID=your-project-uuid \ -- npx -y @nomacms/mcp-server

Add agent skills (the missing half)

MCP gives your editor hands. Agent skills give it memory of how Noma works.

Install from the official skills repo:

npx skills add nomacms/nomacms-agent-skills --skill '*'

That installs all 13 skills. A lighter starting set:

npx skills add nomacms/nomacms-agent-skills \ --skill noma-sdk-setup \ --skill noma-content \ --skill noma-errors

Add noma-user-auth if your app has end-user accounts. Add noma-nextjs, noma-nuxt, or framework skills that match your stack.

Skills teach the agent SDK method names, auth contracts, and error handling so you spend less time correcting hallucinated API shapes.

Example prompts that work well

Once MCP and skills are connected, try prompts like:

  • "List my collections and summarize the schema for posts."
  • "Create a Products collection with title, price, and image fields."
  • "Draft three blog entries in English and publish the first one."
  • "Set up a webhook that fires when entries are published."

The agent should call MCP tools instead of inventing REST paths. If you get 403, check API key abilities. Webhook routes need admin.

MCP vs dashboard AI: when to use which

SituationBest option
Building your app in an AI editorMCP + skills
Editors writing content in the CMSDashboard + Noma Assistant
Quick field rewrite or translationDashboard inline AI
CI or production automationREST API or SDK, not MCP

MCP is for your development workflow. It is not a replacement for the Content API in production apps.

Multiple projects

Each MCP entry connects to one project. Use separate mcpServers blocks with different NOMA_PROJECT_ID and API key values if you manage marketing and app content separately. Create each API key while the matching workspace is selected in the dashboard.

What to explore next

Every NomaCMS plan includes MCP, agent skills support, and a 7-day free trial.

Learn more