Command-line interface for Mesh, your personal CRM.
npm install -g @meshhq/mesh-cli@latestOr run it without installing:
npx @meshhq/mesh-cli@latest <command>Requires Node.js 18.17+.
1.x no longer works. If you installed it globally, upgrade it, or npx will
keep running the old copy:
npm install -g @meshhq/mesh-cli@latestThen run mesh login once.
mesh login # opens your browser; or paste the callback URL into the terminal
mesh status # show who you are logged in as
mesh logout # remove stored credentialsCredentials are stored in ~/.config/mesh-cli.json.
For scripts and agents, use a Mesh API key instead. It takes precedence over a stored login:
export MESH_API_KEY=mesh_sk_...Run mesh --help for the list and mesh <command> --help for a command's
options. List flags repeat (--name Jane --name John); id lists also take
commas (--contact-ids 1,2). Ids from 1.x still work.
mesh contacts:search --name "Jane Doe"
mesh contacts:search --keywords designer --work-history-company Google
mesh contacts:search --email-count-gte 10 --sort-field last_interacted
mesh contact --contact-id <id>
mesh contacts:create --first-name Jane --last-name Doe --email jane@example.com
mesh contacts:update --contact-id <id> --title "Senior Designer"
mesh contacts:archive --contact-ids <id>
mesh contacts:restore --contact-ids <id>
mesh contacts:merge --contact-ids <keep>,<merge-in> # the first id is keptmesh notes:create --contact-id <id> --content "Met at the conference"
mesh notes --start 2025-01-01 --end 2025-12-31mesh groups
mesh groups:create --title Investors
mesh groups:update --group-id <id> --add-contact-ids <id>,<id>mesh events --start 2025-01-01 --end 2025-01-31
mesh events:upcoming
mesh emails --start 2025-01-01 --end 2025-01-31
mesh emails:recent --limit 20 --page 2mesh reminders:recent
mesh reminders:upcomingcontacts:search returns { total, results }. Each result is a contact
summary (id, displayName, name, avatarURL, image, isMemorialized,
bio, score, url) plus the fields its filters matched on: --work-history-*
adds work_history, --keywords adds location, notes, work_history and
education_history, and so on. Add more with --include-fields, from:
emails, phone_numbers, social_links, websites, work_history,
education_history, location, birthday, created, notes,
integrations, interaction_history, email_history, event_history,
message_history.
contact and contacts:update return the full contact. contacts:create
returns the new contact.
All commands print JSON by default. --format csv or --format tsv prints one
row per item of a list:
mesh contacts:search --name "Jane" --format csvCopyright Mesh