NestDaddy

Civicrm Mcp

io.github.YogiAdhik/civicrm-mcp · v0.1.2

Model Context Protocol server for CiviCRM — AuthX-first, schema-introspected, write-gated.

Connect Runs on your machine

Terminal
claude mcp add civicrm-mcp -e CIVICRM_BASE_URL=<CIVICRM_BASE_URL> -e CIVICRM_API_KEY=<CIVICRM_API_KEY> -e CIVICRM_CMS=<CIVICRM_CMS> -e CIVICRM_SITE_KEY=<CIVICRM_SITE_KEY> -e CIVICRM_AUTH_MODE=<CIVICRM_AUTH_MODE> -e CIVICRM_ALLOW_WRITES=<CIVICRM_ALLOW_WRITES> -e CIVICRM_ALLOW_DELETES=<CIVICRM_ALLOW_DELETES> -- npx -y [email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "civicrm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "CIVICRM_BASE_URL": "<CIVICRM_BASE_URL>",
        "CIVICRM_API_KEY": "<CIVICRM_API_KEY>",
        "CIVICRM_CMS": "<CIVICRM_CMS>",
        "CIVICRM_SITE_KEY": "<CIVICRM_SITE_KEY>",
        "CIVICRM_AUTH_MODE": "<CIVICRM_AUTH_MODE>",
        "CIVICRM_ALLOW_WRITES": "<CIVICRM_ALLOW_WRITES>",
        "CIVICRM_ALLOW_DELETES": "<CIVICRM_ALLOW_DELETES>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "civicrm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "CIVICRM_BASE_URL": "<CIVICRM_BASE_URL>",
        "CIVICRM_API_KEY": "<CIVICRM_API_KEY>",
        "CIVICRM_CMS": "<CIVICRM_CMS>",
        "CIVICRM_SITE_KEY": "<CIVICRM_SITE_KEY>",
        "CIVICRM_AUTH_MODE": "<CIVICRM_AUTH_MODE>",
        "CIVICRM_ALLOW_WRITES": "<CIVICRM_ALLOW_WRITES>",
        "CIVICRM_ALLOW_DELETES": "<CIVICRM_ALLOW_DELETES>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "civicrm-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "CIVICRM_BASE_URL": "<CIVICRM_BASE_URL>",
        "CIVICRM_API_KEY": "<CIVICRM_API_KEY>",
        "CIVICRM_CMS": "<CIVICRM_CMS>",
        "CIVICRM_SITE_KEY": "<CIVICRM_SITE_KEY>",
        "CIVICRM_AUTH_MODE": "<CIVICRM_AUTH_MODE>",
        "CIVICRM_ALLOW_WRITES": "<CIVICRM_ALLOW_WRITES>",
        "CIVICRM_ALLOW_DELETES": "<CIVICRM_ALLOW_DELETES>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
CIVICRM_BASE_URL
Required
Base URL of the CiviCRM install, e.g. https://crm.example.org. No trailing slash.
CIVICRM_API_KEY
Required, secret
API key of the contact the server authenticates as. Keep it on a dedicated 'MCP Bot' contact with minimum permissions.
CIVICRM_CMS
Optional
CMS host: drupal, wordpress, standalone, or backdrop.
CIVICRM_SITE_KEY
Optional, secret
Optional — only needed if the site enables the AuthX site-key guard.
CIVICRM_AUTH_MODE
Optional
authx (default, recommended) or legacy for pre-5.36 installs.
CIVICRM_ALLOW_WRITES
Optional
Set to 'true' to enable create / update / save / submit actions. Off by default.
CIVICRM_ALLOW_DELETES
Optional
Set to 'true' to enable delete / replace actions. Off by default.

Details

Package[email protected] (NPM, stdio)
First published24 Apr 2026
Last updated24 Apr 2026
Registry nameio.github.YogiAdhik/civicrm-mcp

More ai and media servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.