CRM
Housecat keeps a lightweight CRM of the companies, contacts, and attachments that tasks reference, and syncs with Notion or Attio when you want a system of record. Tasks show whether their related company exists in your CRM and link out directly to the matching record.
- User
-
Update my CRM from the last week of emails
- Housecat
-
Searching Gmail and extracting companies, people, and deals…
Searching Notion for existing records…
3 new companies, 6 new people, and 2 updated companies. Want me to push the changes?
In CRM Labels
Every task with a related company shows a green “✓ In CRM” or red “✗ Not in CRM” badge so you can see at a glance which conversations are tracked. The badge links directly to the matching Notion or Attio record. You can turn the labels off in profile settings.
Companies and Contacts
Companies and contacts each have a dedicated detail page with notes, labels, and the tasks they’re linked to. Avatars use a contact → company → source-logo → initials precedence, so a Slack thread without a known sender still shows the Slack favicon rather than a blank circle. Company favicons are auto-fetched from Google’s s2 service on creation.
Contacts can have multiple emails, phone numbers, and roles tying them to companies. Email aliases on your own profile let tasks classify and assign correctly when you receive mail at more than one address.
Sync with Notion and Attio
Housecat uses the official Notion MCP server for full pass-through tool support and a diff-based approach for Attio that only pushes records when content has actually changed. A “Refresh from Attio” button loads current data before editing so you’re never working from stale state.
API and MCP
Companies, contacts, and attachments have full v2 REST and MCP coverage:
-
/api/v2/companies,/api/v2/contacts,/api/v2/attachments— cursor-paginated CRUD with a 256KB response cap -
/mcp/companies,/mcp/contacts,/mcp/attachments—*_list,*_get,*_create,*_update,*_archivetools undercrm.*andtask.*scopes - All mutations write to the activities table with the calling client name and version
-
PATCH folds emails, phones, and roles via
*_addand*_removearrays so partial updates don’t clobber existing values
Use Cases
Dig into specific use cases: