Settings

Theme

Show HN: CRM-CLI – A local-first personal CRM for the terminal with MCP server

github.com

1 points by jdanielnd 13 days ago · 1 comment

Reader

jdanielndOP 13 days ago

Hey HN, I built a personal CRM that lives entirely in the terminal.

I kept losing track of people — who I met at conferences, what we discussed, when I last followed up. I tried Notion, spreadsheets, and a few CRM apps, but they were all too heavy for what I needed. I just wanted something fast that I could use without leaving the terminal.

crm-cli stores everything in a local SQLite file (~/.crm/crm.db). Single binary, no accounts, no cloud. You can manage contacts, organizations, log interactions, track deals, set follow-up tasks, and tag anything.

What makes it different:

- Built-in MCP server — you can connect it to Claude (or any MCP-compatible agent) with claude mcp add crm -- crm mcp serve. After a meeting, you just tell Claude what happened and it logs the interaction, updates deals, and creates follow-ups automatically. - Unix-native — data to stdout, messages to stderr, proper exit codes. Supports table/JSON/CSV/TSV output, so it pipes into jq, fzf, awk, etc. - Pure Go, no CGO — uses modernc.org/sqlite, so it cross-compiles cleanly. Single static binary for macOS, Linux, and Windows.

The AI integration is what I use most now. The summary field on contacts acts as a living dossier that Claude maintains — it reads it before meetings for context and updates it after with new info.

Tech: Go, Cobra, SQLite (FTS5 for search), mcp-go for the MCP server. ~3k lines of Go.

Would love feedback on the CLI design and what features would be useful.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection