Anu Agency
Playbook
Work with Anu
02.05 Three ways to connect your CRM, and how to export a safe CSV today

02.05

Three ways to connect your CRM, and how to export a safe CSV today

Compare CSV export, official connectors and your own API or MCP integration, then produce a trimmed, upload-ready export from HighLevel or Follow Up Boss.

40 minNeeds verificationChecked 2026-10-20

Video walkthrough

Coming soonCSV, connector or API: picking how Grok sees your CRM
It will cover
  1. The three methods drawn out, and what can go wrong with each
  2. What is officially supported today for HighLevel and Follow Up Boss
  3. Exporting from HighLevel: Smart Lists, Manage Fields, Bulk Actions
  4. Exporting from Follow Up Boss and trimming the file before upload
This chapter is complete without it. Every step is written out on this page.

What you're building

A decision on which connection method you use now, and a trimmed CSV export of your CRM with only the columns the CRM Manager needs, ready to upload to your Grok project.

Why it matters

Every method trades convenience against control. A CSV is a snapshot you choose and can delete; a live connection is always current but can see (and sometimes change) whatever its permissions allow. Starting with a CSV shows you what useful output looks like before you hand any tool a key to your CRM.

What you need

  • HighLevel: an Admin user on the sub-account (only admins can export, and only Agency or Location Admins can download the file)
  • Follow Up Boss: export permission (the account owner has it by default)
  • A spreadsheet app (Google Sheets, Excel or Numbers) to delete columns
  • The sample export below, to compare headers with
CSVSample CRM export (40 fictional contacts)Fictional contacts with opt-outs, duplicates and stale leads. Use its headers as your target format.

Time and cost

Time
40 minutes the first time, 10 minutes each week after
Cost
$0

Methods 2 and 3 may need a paid AI plan, a developer, or hosting. Those costs vary and are not covered here.

Step by step

  1. Compare the three methods and pick one

    1. CSV export2. Official connector3. Your own API or MCP integration
    FreshnessSnapshot at export timeLiveLive
    Can it change your CRM?NoYes, if you grant write scopesOnly if you build it to
    SetupMinutes, no codeMinutes, if one exists for your pair of toolsHours to days; developer skills
    HighLevel + Grok todayWorksNo documented HighLevel connector for GrokPossible through the xAI API (chapter 02.06)
    Follow Up Boss + Grok todayWorksNone documented by either companyPossible through the Follow Up Boss API (chapter 02.06)
    Main riskForgetting to delete old filesOver-broad scopesLeaked keys, write bugs

    Pick CSV unless you already have a developer and a reason the daily list must be live.

    Check: You have written your method and the reason in your setup record.

  2. Know what "official connector" means for your CRM today

    • HighLevel publishes an official MCP server ("LeadConnector MCP") with OAuth sign-in, a choice of sub-account, and scopes you approve. Its setup pages cover Claude, ChatGPT and other OpenAI-compatible clients, Codex and Muse. Grok is not listed as a documented client.
    • Follow Up Boss documents an API with per-user keys and OAuth for registered integrations. Its API docs do not list an official MCP server. Third-party MCP servers exist; they are separate companies' products and need your API key, which carries your full user permissions.
    • Grok documents built-in connectors for Google, Microsoft and Salesforce tools, a catalog, and custom MCP servers. Search grok.com/connectors for your CRM before deciding.

    Check: You know whether method 2 exists for your exact CRM and AI tool pair.

  3. HighLevel: choose the columns, then export

    1. Open Contacts → Smart Lists in the sub-account.
    2. Click Manage Fields and show only the columns you need (see the column list in the next step). The CSV contains only columns visible in the table.
    3. Filter if you want (for example, exclude a Trash tag), then tick the checkbox beside the filter fields and choose Select All Contacts.
    4. Click More → Export (or the three dots beside + Add Contact → Export) and confirm.
    5. Open Contacts → Bulk Actions, find the row with Operation Export and Status Complete, and click the download arrow.

    Check: A .csv file is in your Downloads folder and its header row shows only the columns you chose.

  4. Follow Up Boss: export all columns, then trim

    1. Go to People and open All People (or a Smart List you trust).
    2. Tick the box next to Name, then choose Select All.
    3. Click Export. Tick All Columns (otherwise only the columns on screen are exported) and confirm. The file downloads to your computer.

    Check: A .csv file is downloaded and opens in your spreadsheet app.

  5. Trim and rename the columns before uploading

    Open the file in a spreadsheet. Keep only these columns and rename them to match the sample export (so the neglected-lead finder and the prompts work unchanged):

    Keep (rename to)Why
    Contact IDLets you find the record again without names
    First Name, Last NameReadable list
    Email, PhoneDuplicate detection and channel checks
    Source, Stage, Tags, Assigned ToRanking context and team routing
    Created, Last Activity, Last Inbound, Last Outbound, Next Task DueNeglect is about dates
    Timeframe, Price RangeUrgency
    SMS Opt-Out, Email Opt-Out, Consent SourcePermitted channels (never delete these)
    Last NoteThe context the AI reads

    Delete everything else: street address, date of birth, Social Security or tax numbers, bank or loan details, lender notes about credit, and any field you would not show a stranger. Format dates as YYYY-MM-DD. Save as CSV.

    Check: Your file's header row matches the sample's 20 headers (or you have written down which ones are missing), and no address, birth date or financial column remains.

  6. Upload to your CRM Manager project and confirm the read

    In a new chat in the project, click + next to the message box and attach the trimmed CSV (files up to 150 MB are supported; CSV and XLSX are both accepted). Send: "Confirm the file name, the number of rows, the export date you infer, and any of the 20 expected columns that are missing. Do not analyze yet."

    Check: Grok's row count equals your spreadsheet's row count minus the header.

What success looks like

  • A chosen method, with a reason
  • A trimmed CSV with consent and opt-out columns intact and no sensitive extras
  • Grok reports the correct row count and the missing columns, if any

Copyable templates

csvTarget CSV header row
Contact ID,First Name,Last Name,Email,Phone,Source,Stage,Tags,Assigned To,Created,Last Activity,Last Inbound,Last Outbound,Next Task Due,Timeframe,Price Range,SMS Opt-Out,Email Opt-Out,Consent Source,Last Note
textFirst message after every upload
I just uploaded this week's CRM export. Before any analysis: (1) confirm the file name, (2) count the rows, (3) tell me the newest date in Last Activity, (4) list any of the 20 expected columns that are missing or empty in more than half the rows. Do not analyze or rank yet.

Try it

Trimmed CSV20 columns, no sensitive extras
Grok projectreads the upload
Youact in the CRM
CRMHighLevel or Follow Up Boss
  • CRMtoTrimmed CSVadmin export
  • Trimmed CSVtoGrok projectupload, delete weekly
  • Grok projecttoYouranked list + drafts
  • YoutoCRMcalls, notes, tasks
Method 1: CSV export. A snapshot you control; nothing can write back.
Youapprove scopes at sign-in
AI clientmust be a documented client
Official MCP serverrun by the CRM vendor
CRMHighLevel sub-account
  • YoutoAI clientOAuth consent
  • AI clienttoOfficial MCP servertool calls
  • Official MCP servertoCRMonly granted scopes
Method 2: official connector. Live, governed by the OAuth scopes you approve. Exists for HighLevel with Claude, ChatGPT, Codex and Muse; not documented for Grok.
Read-only tokenView scopes or GET-only code
xAI APIGrok + Remote MCP tools
Your script or MCP serverruns where you control it
Youread the result
CRM APIHighLevel API 2.0 or Follow Up Boss API
  • Your script or MCP servertoCRM APIGET requests
  • Read-only tokentoYour script or MCP server
  • xAI APItoYour script or MCP serverallowed tools only
  • xAI APItoYoulist + drafts
Method 3: your own read-only integration. Live, and you decide every permission (chapter 02.06).

How to test it

Open your trimmed CSV and search for one contact you know opted out of texts. Confirm the SMS Opt-Out (or DND) column says Y for them. If it is blank, your export dropped the field: go back to Manage Fields (HighLevel) or All Columns (Follow Up Boss) and export again. An export without opt-outs is not safe to use.

Troubleshooting

HighLevel's Export option is missing.

Only Admin users can export contacts. Ask an Agency or Location Admin to export, or to change your role.

The HighLevel download link no longer works.

Export files are available for 30 days. Run a new export; you want a fresh one each week anyway.

Notes are cut off mid-sentence.

HighLevel's export includes only the latest note, up to 255 characters. For contacts that matter, paste the full conversation into Grok separately (chapter 02.08).

Grok counts fewer rows than my spreadsheet.

Usually a note with an unclosed quote mark. Re-save the file as CSV UTF-8 from your spreadsheet app, which re-quotes every field, and upload again.

Advanced technical details

Optional. You can follow every step above without these.

Technical detailsHighLevel MCP: two documented setups

HighLevel's developer docs describe the OAuth-based LeadConnector MCP server with client-specific URLs: https://services.leadconnectorhq.com/mcp/anthropic/v2 for Claude and https://services.leadconnectorhq.com/mcp/openai/v2/ for ChatGPT, Codex and other compatible OpenAI clients. It exposes four unified tools (list_locations, search_operations, describe_operation, execute_operation) over more than 550 operations, and gates sensitive and irreversible operations with extra confirmation.

HighLevel's Help Center also documents an endpoint at https://services.leadconnectorhq.com/mcp/ authenticated with a Private Integration Token plus a locationId header, where the tools available depend on the token's scopes. That article says OAuth was planned for a future release; the developer docs now describe it. Chapter 02.06 uses the token version because its scopes can be limited to View permissions.

Technical detailsWhy the export is per sub-account

In HighLevel, contacts live in a sub-account (location). Exports, Private Integration Tokens and MCP connections all target one location at a time. If your team runs several sub-accounts, export each one and upload them as separate files with the location name in the file name.

Sources

Written from the best available information. One or more steps could not be confirmed; see the notes in the chapter. Last checked 2026-10-20.