Connect Data Sources
Set up automatic syncing so Coppermind stays current without manual effort. Connect Granola for meeting transcripts, Google Drive for documents, or monitor client websites for changes.
Why Connect Sources#
Without connected sources, you have to manually paste transcripts and upload files. With them, Coppermind polls your sources in the background and ingests new content automatically. You walk out of a meeting and the knowledge is already stored by the time you sit down.
Available Sources#
| Source | What It Does | Scope |
|---|---|---|
| Granola | Auto-syncs meeting transcripts across all clients | All clients (matched by attendees) |
| Fireflies | Auto-syncs meeting transcripts from Fireflies.ai | All clients (matched by attendees) |
| Gmail / email | Ingests client emails and extracts decisions, commitments, contacts | All clients (matched by sender/domain) |
| Google Drive | Watches a folder for new or updated documents | Per client (one folder per client mind) |
| Dropbox | Watches a Dropbox folder for new or updated documents | Per client (one folder per client mind) |
| Microsoft 365 | Outlook mail, OneDrive files, and Outlook calendar | All clients / per client |
| Monday.com | Pulls boards and items as client context | Per client |
| Website | Monitors a client's website for content changes | Per client |
Coppermind polls every connected source in the background and routes new content to the right client mind automatically. You connect once and forget it.
Slack is different. Coppermind doesn't poll Slack in the background. Instead, Claude reads a client's Slack channel through your Slack integration when you ask it to, and saves the conversation into that client's memory. See Connect Slack to Coppermind for how.
To connect any source, just say what you want in plain English -- Coppermind hands you a secure connector link to finish setup in your browser. The Granola, Drive, and Website walkthroughs below are the most common; the same pattern works for Fireflies, Dropbox, Microsoft 365, and Monday.com:
Connect my Fireflies so meeting transcripts auto-sync
Watch my Acme Dropbox folder for new docs
Connect my Outlook so I can ingest client email
Pull my Monday board for Acme into this client
Never paste a third-party API key into the Claude chat. Coppermind always gives you a separate, secure connector page for credentials.
Connecting Granola#
Granola is the most common source. One connection covers all your clients -- Coppermind matches each meeting to the right client mind based on attendees.
Setup#
Say to Claude:
Connect my Granola so meetings auto-sync
Claude should call Coppermind's Data Source Auto-Ingest tool and give you a secure Coppermind connector link. Open that link in your browser, get a fresh Granola key from granola.ai/settings/api, and enter it on the Coppermind page. Do not paste Granola API keys into Claude or any chat.
If Claude talks about the Granola MCP connector, Research mode, or scheduled loops, stop it and say: "Use Coppermind CMO's Data Source Auto-Ingest tool for server-side Granola auto-ingest."
What Happens Next#
- The gateway checks Granola every 15 minutes for new notes
- Each note is matched to a client mind using attendee emails and calendar events
- Transcripts are processed through the extraction pipeline (decisions, commitments, stakeholders, etc.)
- If a meeting can't be matched to a client, it goes to your unattributed inbox for manual sorting
No Granola Desktop App Required#
The connection uses Granola's API directly. You don't need the Granola MCP integration or the desktop app running. The server handles everything.
Connecting Google Drive#
Drive connections are per-client. Each folder you connect is linked to one client mind.
Setup#
- Switch to the client:
switch to Acme - Say:
Watch my Acme Drive folder for new docs - Paste the Google Drive folder URL when asked
What Gets Ingested#
- Google Docs (exported as text)
- PDFs, Word docs, PowerPoints (text extracted server-side)
- New and updated files (modified since last check)
- Spreadsheets and images are skipped
Subfolder Support#
The connector crawls subfolders automatically. If you point it at a top-level client folder, it picks up everything underneath.
Monitoring a Website#
Website monitoring tracks content changes on a client's site and creates memories summarizing what changed.
Setup#
- Switch to the client:
switch to Acme - Say:
Monitor acme.com for content changes - Optionally set crawl depth (default is 2 levels deep)
What It Tracks#
- New pages added to the site
- Pages that disappear (404s)
- Content changes (text updates, new sections)
- Metadata changes (title, description, OG tags)
Each significant change creates a memory like: "Pricing page updated: removed Starter tier, raised Pro from $99 to $149/mo"
What It Ignores#
Minor changes like typo fixes, copyright year updates, and whitespace changes don't trigger ingestion.
Managing Your Connections#
See What's Connected#
What data sources do I have connected?
Shows all connectors plus email, with status and last sync time.
Check Pipeline Health#
How's my ingestion pipeline doing?
Shows pending, processing, completed, and failed item counts.
Disconnect a Source#
Disconnect my Granola
Stops syncing but keeps all memories already captured.
Fix a Paused Connector#
If a connector hits repeated errors (expired API key, site down), it pauses automatically. You'll see a warning when you start a session. To resume:
Reactivate my Granola connector
Moving Connections from Claude to Coppermind#
Early on, some users connected their sources through Claude's own connectors (Settings → Connectors in Claude) instead of through Coppermind. That path only gives Claude live, on-demand access when you ask — it does not keep your client memories up to date in the background. If your briefs or searches feel like they're missing recent emails or meetings, this is usually why.
The fix is to reconnect those sources server-side through Coppermind, which polls them automatically:
- List what you have:
What data sources do I have connected? - For anything you set up through Claude's connectors (commonly Gmail or Slack), reconnect it through Coppermind using the steps above — e.g.
Connect my Gmail so I can ingest client email. - You don't need to remove the Claude-side connector — it just stops being the thing Coppermind relies on. The server connection takes over.
You only do this once. After that, every source syncs in the background.
Getting Two Daily Briefs?#
If you receive two different-looking daily briefs, you almost certainly have a leftover brief routine running inside Claude (set up during early onboarding) on top of the current server brief. The server brief is the one to keep — it's more reliable and runs even when your laptop is closed.
To turn off the old local one:
- In Claude, open the Code tab, then Routines (older versions: scheduled tasks).
- Find the daily-brief routine and set it to inactive.
- Keep getting your brief by email as normal — that's the server one.
If you're not sure which is which, ask in your next Coppermind help-desk session and we'll sort it out together.
Google says "This app is blocked"#
If you click Connect Google (Gmail, Drive, or Calendar) and Google shows "This app is blocked — this app tried to access sensitive info in your Google Account," that block is coming from your Google Workspace, not Coppermind. Newer Workspace accounts only allow apps an admin has explicitly trusted, and Coppermind isn't on that list yet.
On a personal Gmail account (not Workspace)? This won't apply — skip to Troubleshooting below.
On Google Workspace and you're your own admin? You can clear it in about two minutes:
- Go to admin.google.com and sign in as a Workspace admin.
- Security → Access and data control → API controls.
- Click Manage Third-Party App Access.
- Add app → "OAuth App Name Or Client ID."
- Paste Coppermind's Client ID:
491650319703-bfhcktilchrgmr6vs42rabajdetlgftg.apps.googleusercontent.com - Select Coppermind, check it, Continue.
- Set access to Trusted, then Confirm.
- Go back to Coppermind and reconnect Google — it goes through.
Not the admin? Send those steps to whoever manages your Google Workspace. One approval covers Gmail, Drive, and Calendar — they share a single Google connection.
How It Works (Technical)#
The connector framework runs entirely server-side in the gateway:
- Discovery cron (every minute) checks which connectors are overdue for polling
- Each connector's provider fetches new content from the source API
- Discovered items go into the ingestion queue (Cloudflare Queue + database)
- The queue consumer processes each item through the standard extraction pipeline
- A fallback sweep (every 5 minutes) catches anything the queue missed
Error Handling#
- Auth failures (expired key, revoked access): connector pauses immediately, you get a Slack alert
- Rate limits: automatic exponential backoff
- Transient errors (server down, timeout): retries with backoff, pauses after 5 consecutive failures (10 for websites)
- Dead letters: items that fail 3 times are flagged for manual review
Daily Cap#
Each account can ingest up to 500 items per day across all connectors. This prevents runaway costs from misconfigured crawlers or API loops.
Troubleshooting#
| Problem | Fix |
|---|---|
| "Connector not found" | You may need to set up the connection first. Say "connect my Granola" |
| Meetings not being matched to clients | Check that client minds have email contacts configured. Say "configure client mind" and add key stakeholder emails |
| Website monitoring missing pages | Increase crawl depth. Default is 2 levels. Say "monitor site.com with depth 4" |
| Connector shows "paused" | The source API returned errors. Fix the underlying issue (refresh key, check site), then say "reactivate my connector" |
| Nothing syncing | Check "how's my ingestion pipeline" to see queue status. If the queue is empty and connectors show recent poll times, everything is working -- there's just no new content |
Ready to try this yourself?
Coppermind is free to start and runs inside Claude. Your first meeting prep will convince you.
Try Coppermind Free