Skip to content
Use cases / Agent-managed personal CRMStart your 7-day trial →

Agent-managed personal CRM

Use Rowset when you want a trusted agent to maintain relationship context without turning every follow-up into a manual spreadsheet chore.

For a complete implementation with separate people, interaction, and commitment records, follow the AI agent CRM guide.

Keep recalled preferences in agent memory and current contact fields in the CRM dataset. The guide to AI agent memory vs structured state shows how to choose the authoritative home for each fact.

Starter shape

Create a people dataset. Use email as the index when contacts have reliable email addresses, or person_id when one person can have several addresses.

People dataset indexed by email or person_id.

email name company contact_category last_interaction next_contact notes
alex@example.com Alex Morgan Northstar Labs A 2026-07-01 2026-07-22 Asked for implementation examples
sam@studio.dev Sam Lee Studio Dev B 2026-06-24 2026-08-24 Intro from May conference
nora@acme.com Nora Patel Acme C 2026-06-28 2026-12-28 Wants security details

Agent jobs

  • Add people and companies from meeting notes, emails, or chat summaries.
  • Update relationship stage after each conversation.
  • Find stale promises before they become dropped balls.
  • Export a CSV or JSONL snapshot when you want a backup or handoff.

Dataset context and semantic schema

Add instructions that define stage meanings, follow-up rules, and what counts as private notes. Mark email as an email column, last_interaction as a date, and next_action as free text. Keep the agent honest: it should update rows only from trusted notes or direct user instruction.

Calculate follow-up dates

Create next_contact as a date formula when each contact category has a fixed cadence:

SWITCH(
  {contact_category},
  "A", DATEADD({last_interaction}, 3, "weeks"),
  "B", DATEADD({last_interaction}, 2, "months"),
  "C", DATEADD({last_interaction}, 6, "months"),
  "D", DATEADD({last_interaction}, 12, "months")
)

Add a boolean formula such as AND({next_contact}, TODAY() >= {next_contact}) to make due contacts directly filterable through MCP, REST, and the dataset view. Formula columns calculate live and remain read-only; your agent only updates source fields such as last_interaction and contact_category.

Connect it

Use MCP access first. If MCP is unavailable, use the Dataset API with a bearer API key. Public previews should stay off unless you deliberately want a read-only relationship board.