Configuration
PRIMA CRM has one settings file, .prima-crm/config.json, and one setting in it, the contact cadence for each relationship. Everything else comes from where you start Claude Code and from defaults built into the server.
The Settings File
Section titled “The Settings File”The server writes .prima-crm/config.json in your workspace root the first time Claude uses the CRM. The file holds the default cadences.
{ "contactCadenceDays": { "client": 30, "partner": 60, "supplier": 90, "internal": null, "other": null }}Each value is the number of days an active company with that relationship can go without an interaction before the CRM calls it stale. A value of null means companies with that relationship are never stale. Stale Clients and Contact Cadence explains how the CRM uses these numbers.
Changing a Cadence
Section titled “Changing a Cadence”- Open
.prima-crm/config.jsonin your workspace root, or ask Claude to open it for you. - Change the number for the relationship you want, or set it to
nullto switch stale off for that relationship. - Save the file, then restart Claude Code so that the server reads your change.
The server reads the file once, the first time Claude uses the CRM in a session, so a change has no effect until you restart Claude Code. The dashboard reads the file each time you build it.
How the Server Reads the File
Section titled “How the Server Reads the File”- It never overwrites your file. Once the file exists, the server only reads it.
- Missing keys use the defaults. If you remove a relationship from the file, the default for that relationship applies.
- Numbers round down. A cadence of
45.5counts as 45 days. - Invalid values use the defaults. Zero, a negative number or text in place of a number leaves the default in force for that relationship.
- A broken file uses all the defaults. If the file is not valid JSON, the server leaves it untouched, applies the defaults, and writes a note to its log.
To set a cadence for one company only, ask Claude to set the company’s contact cadence. That value overrides the settings file for that company.
Files the Server Reads and Writes
Section titled “Files the Server Reads and Writes”The server treats the folder Claude Code starts in as your workspace root, and finds every path from there. Installing PRIMA CRM explains why that matters.
| Path | Read or write | Purpose |
|---|---|---|
.prima-crm/crm.db |
Both | The database, created on first use |
.prima-crm/config.json |
Writes once, then reads | Contact cadences |
.claude/state/state.json |
Reads | The AI Business OS project register. The server will not start without it |
.claude/state/projects/ |
Reads | Project detail files, for the latest action on linked projects |
.claude/config/integrations.json |
Reads | The connector registry that crm_sync status reports on |
The server never writes to the project register or the connector registry.
Registration
Section titled “Registration”Claude Code starts the server through .claude/mcp-servers/prima-crm/start.sh. The script finds its own folder, tells Node.js where the server’s packages are, and starts the server. It does not change folder, which is why the folder you open decides the workspace. PRIMA CRM reads no environment variables of its own.
Built-In Defaults
Section titled “Built-In Defaults”| Setting | Default |
|---|---|
| Status of a new company | lead |
| Stage of a new engagement | lead |
| Currency of a new engagement | EUR |
| Date of a new interaction | Today |
| Results from a company or contact search | 20 |
| Results from a stale list | 20 |
| Results from a segment run | 50 |
| Items in the sync review list | 50 |
| Days ahead in the follow-ups due list | 7 |
You can ask Claude for a different number of results or days on any single request.

