MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

E
Elmapicms MCP Server

MCP server by elmapicms

Created 2/10/2026
Updated about 21 hours ago
Repository documentation and setup instructions

ElmapiCMS MCP Server

An MCP (Model Context Protocol) server that connects AI agents like Cursor and Claude Code to your ElmapiCMS instance. Manage collections, fields, content entries, and assets programmatically through natural language.

Installation

npm install -g @elmapicms/mcp-server

Or install locally:

npm install @elmapicms/mcp-server

Configuration

The server requires three environment variables:

| Variable | Description | |---------------------|----------------------------------------------------| | ELMAPI_API_URL | Base API URL (e.g., https://your-domain.com/api) | | ELMAPI_API_KEY | API token with the required abilities | | ELMAPI_PROJECT_ID | Project UUID |

Usage with Cursor

Add this to your Cursor MCP settings (~/.cursor/mcp.json):

{
  "mcpServers": {
    "elmapicms": {
      "command": "npx",
      "args": ["@elmapicms/mcp-server"],
      "env": {
        "ELMAPI_API_URL": "https://your-domain.com/api",
        "ELMAPI_API_KEY": "your-api-key",
        "ELMAPI_PROJECT_ID": "your-project-uuid"
      }
    }
  }
}

Usage with Claude Code

Add the MCP server using the Claude Code CLI:

claude mcp add elmapicms \
  -e ELMAPI_API_URL=https://your-domain.com/api \
  -e ELMAPI_API_KEY=your-api-key \
  -e ELMAPI_PROJECT_ID=your-project-uuid \
  -- npx @elmapicms/mcp-server

Local Development (Laravel Herd / .test domains)

If your ElmapiCMS instance runs on a .test domain with a self-signed SSL certificate (e.g., via Laravel Herd), add this to your env config:

"env": {
  "ELMAPI_API_URL": "https://myproject.test/api",
  "ELMAPI_API_KEY": "your-api-key",
  "ELMAPI_PROJECT_ID": "your-project-uuid",
  "NODE_TLS_REJECT_UNAUTHORIZED": "0"
}

Note: Only use NODE_TLS_REJECT_UNAUTHORIZED=0 for local development. Do not use this in production.

Available Tools (17)

Project

  • get_project — Get project information

Collections

  • list_collections — List all collections
  • get_collection — Get a collection with its full field schema
  • create_collection — Create a collection (with optional batch field creation)
  • update_collection — Update a collection's name and slug
  • reorder_collections — Reorder collections

Fields

  • create_field — Add a field to a collection
  • update_field — Update a field
  • reorder_fields — Reorder fields within a collection

Content Entries

  • list_entries — List entries with advanced filtering (where with 13 operators, OR groups, relation filtering), sorting, pagination, count, and first
  • get_entry — Get a single content entry
  • create_entry — Create a content entry
  • update_entry — Update a content entry
  • delete_entry — Soft-delete a content entry (moves to trash)

Assets

  • list_assets — List assets with pagination
  • get_asset — Get an asset by UUID or filename
  • upload_asset — Upload a file as an asset
  • delete_asset — Delete an asset

Resources

The server exposes three reference resources that AI agents can read for context:

  • Field Types Reference (elmapicms://field-types) — Complete reference of all 16 field types, their options, validations, and common patterns.
  • Collections Guide (elmapicms://collections-guide) — Guide for working with collections, singletons, reserved slugs, and best practices.
  • Query Reference (elmapicms://query-reference) — Full documentation for content queries: where filters with 13 operators, OR groups, relation filtering, sorting, pagination, and examples.

Token Abilities

Your API token needs the appropriate abilities for the tools you want to use:

| Ability | Tools | |----------|-------------------------------------------------------------| | read | list/get collections, entries, assets | | create | create entries, upload assets | | update | update entries | | delete | delete entries, delete assets | | admin | create/update/reorder collections and fields |

You can generate API tokens from your project's Settings > API Access page.

Using Multiple Projects

Each MCP server instance connects to a single project. To work with multiple projects, add separate entries in your MCP config:

{
  "mcpServers": {
    "elmapicms-blog": {
      "command": "npx",
      "args": ["@elmapicms/mcp-server"],
      "env": {
        "ELMAPI_API_URL": "https://your-domain.com/api",
        "ELMAPI_API_KEY": "blog-project-api-key",
        "ELMAPI_PROJECT_ID": "blog-project-uuid"
      }
    },
    "elmapicms-store": {
      "command": "npx",
      "args": ["@elmapicms/mcp-server"],
      "env": {
        "ELMAPI_API_URL": "https://your-domain.com/api",
        "ELMAPI_API_KEY": "store-project-api-key",
        "ELMAPI_PROJECT_ID": "store-project-uuid"
      }
    }
  }
}

License

MIT

Quick Setup
Installation guide for this server

Install Package (if required)

npx @modelcontextprotocol/server-elmapicms-mcp-server

Cursor configuration (mcp.json)

{ "mcpServers": { "elmapicms-elmapicms-mcp-server": { "command": "npx", "args": [ "elmapicms-elmapicms-mcp-server" ] } } }