MCP
The 21 tools
Everything an MCP-connected assistant can do in PersonalCRM, grouped by what it touches.
Once connected, your assistant has these tools. Names follow a
strict verb_noun pattern, descriptions are written as agent prompts, and
every destructive tool is annotated so well-behaved clients ask you before
deleting anything.
Contacts
| Tool | What it does |
|---|---|
list_contacts | Search and filter your people, including needsPing: true for everyone who's overdue. |
get_contact | Full profile for one person: fields, cadence, last ping, notes. |
create_contact | Add a person. Used for one-offs and bulk imports from pasted data. |
update_contact | Change fields, cadence, notes, networks. |
delete_contact | Remove a person (destructive, confirmed first). |
Pings
| Tool | What it does |
|---|---|
log_ping | The core action: record "I was in touch", optionally with a note and a backdate. Resets the cadence timer. |
list_pings | The check-in history, per contact or overall. |
delete_ping | Remove a mistaken ping. The last-contact date recalculates automatically. |
Meetings
| Tool | What it does |
|---|---|
list_meetings | Past meetings with attendees and notes. |
get_meeting | One meeting in full, including each attendee's personal note. |
create_meeting | Log a meeting; counts as a Ping for every attendee. |
update_meeting | Edit details, attendees, notes. |
delete_meeting | Remove a meeting (destructive, confirmed first). |
Follow-ups
| Tool | What it does |
|---|---|
list_follow_ups | Open or completed follow-ups, per contact or overall. |
create_follow_up | A dated to-do tied to a person ("ask how the interview went, Friday"). |
update_follow_up | Reschedule, reword, complete, or reopen. |
delete_follow_up | Remove one (destructive, confirmed first). |
Networks
| Tool | What it does |
|---|---|
list_networks | Your circles, with icons and colors. |
create_network | Add a circle (Work, Running Club, …). |
update_network | Rename, recolor, change the icon. |
delete_network | Remove a circle: contacts stay, only the label goes (destructive, confirmed first). |
What agents do with these
A few real prompts and the tools they trigger:
- "Who am I falling out of touch with?" →
list_contacts(needsPing: true) - "Log a ping for Sarah, we talked about her Series A" →
log_ping - "Prep me for tomorrow's dinner with James" →
get_contact+list_pings+list_meetings+list_follow_ups - "Import this CSV of my Notion contacts and guess sensible cadences" → repeated
create_contactwith reasonedpingFrequency
Rate limits and auth are the same as the REST API: one key, 120 requests/minute, everything scoped to your account.