dex-skill
Original:🇺🇸 English
Translated
Manage your Dex personal CRM — search, create, and update contacts, log interaction notes, set follow-up reminders, organize contacts with tags and groups, and manage custom fields. Use this skill when the user wants to: (1) Find or look up a contact, (2) Add or edit contact details, (3) Log a meeting, call, or interaction note, (4) Set a reminder or follow-up task, (5) Organize contacts into groups or apply tags, (6) Track custom data with custom fields, (7) Merge duplicate contacts, (8) Review their relationship history or prepare for a meeting, (9) Authenticate with Dex via /dex-login, or any other personal CRM task involving their professional network.
10installs
Sourcegetdex/agent-skills
Added on
NPX Install
npx skill4agent add getdex/agent-skills dex-skillTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Dex Personal CRM
Dex is a personal CRM that helps users maintain and nurture their professional relationships. It tracks contacts, interaction history, reminders, and organizational structures (groups, tags, custom fields).
Setup — Detect Access Method
Check which access method is available, in this order:
- MCP tools available? If and other
dex_search_contactstools are in the tool list, use MCP tools directly. This is the preferred method — skip CLI setup entirely.dex_* - CLI installed? Check if command exists (run
dexorwhich dex). If authenticated, use CLI commands.dex auth status - Neither? Guide the user through setup.
First-Time Setup
Path A — Platform supports MCP (Claude Desktop, Cursor, VS Code, Gemini CLI, etc.):
If the user already has the Dex MCP server configured, or their platform can add MCP servers:
bash
npx -y add-mcp https://mcp.getdex.com/mcp -yThis auto-detects installed AI clients and configures the Dex MCP server for all of them. User authenticates via browser on first MCP connection.
Path B — Install CLI:
bash
npm install -g @getdex/cliWorks with npm, pnpm, and yarn. No postinstall scripts — the binary is bundled in a platform-specific package.
Path C — No Node.js:
Direct the user to follow the setup guide at https://getdex.com/docs/ai/mcp-server — it has client-specific instructions for Claude Desktop, Claude Code, Cursor, VS Code, and other MCP-capable clients.
Authentication
Triggered by or on first use when not authenticated. Ask the user which method they prefer:
/dex-loginOption 1 — API Key:
- User generates a key at Dex Settings > Integrations (requires Professional plan)
- For CLI:
dex auth --token dex_your_key_here - Key is saved to (chmod 600)
~/.dex/api-key
Option 2 — Device Code Flow (works on remote/headless machines):
Drive this flow directly via HTTP — no browser needed on the machine:
-
Request a device code:bash
curl -s -X POST https://mcp.getdex.com/device/code -H "Content-Type: application/json"Response:{ "device_code": "...", "user_code": "ABCD-EFGH", "verification_uri": "https://...", "expires_in": 600, "interval": 5 } -
Show the user theand
user_code. They open the URL on any device with a browser, log in to Dex, and enter the code.verification_uri -
Poll for approval every 5 seconds:bash
curl -s -X POST https://mcp.getdex.com/device/token \ -H "Content-Type: application/json" \ -d '{"device_code": "<device_code>"}'- → keep polling
{"error": "authorization_pending"} - → done, save the key
{"api_key": "dex_..."}
-
Save the API key:bash
mkdir -p ~/.dex && echo "<api_key>" > ~/.dex/api-key && chmod 600 ~/.dex/api-keyFor CLI:dex auth --token <api_key>
For CI/automation with no human present, use the API key method with environment variable.
DEX_API_KEYData Model
Contact
├── Emails, Phone Numbers, Social Profiles
├── Company, Job Title, Birthday, Website
├── Description (rich text notes about the person)
├── Tags (flat labels: "Investor", "College Friend")
├── Groups (collections with emoji + description: "🏢 Acme Team")
├── Custom Fields (user-defined: input, dropdown, datepicker)
├── Notes/Timeline (interaction log: meetings, calls, coffees)
├── Reminders (follow-up tasks with optional recurrence)
└── Starred / Archived statusUsing Tools
MCP Mode
Call tools directly. All tools accept and return JSON.
dex_*CLI Mode
Use the command. CLIHub generates subcommands from MCP tool names (replacing with ):
dex_-bash
dex dex-search-contacts --query "John"
dex dex-list-contacts --limit 100
dex dex-create-contact --first-name "Jane" --last-name "Doe"
dex dex-list-tags
dex dex-create-reminder --text "Follow up" --due-at-date "2026-03-15"Use for machine-readable output, (default) for human-readable.
--output json--output textRun for all commands, or for command-specific help.
dex --helpdex <command> --helpSee CLI Command Reference for the full mapping table of all 38 tools to CLI commands.
Core Workflows
1. Find a Contact
search → get details (with notes if needed)- Search by name, email, company, or any keyword
- Use empty query to browse recent contacts (sorted by last interaction)
- Use for bulk iteration (up to 500 per page, cursor-paginated)
dex_list_contacts - Include when user needs interaction history
include_notes: true
2. Add a New Contact
create contact → (optionally) add to groups → apply tags → set reminder- Create with whatever info is available (no fields are strictly required)
- Immediately organize: add relevant tags and groups
- Set a follow-up reminder if the user just met this person
3. Log an Interaction
(optional) list note types → create note on contact timeline- Discover note types first with to pick the right one (Meeting, Call, Coffee, Note, etc.)
dex_list_note_types - Set to when the interaction happened, not when logging it
event_time - Keep notes concise but capture key details, action items, and personal context
4. Set a Reminder
create reminder → (link to contact if applicable)- Always require (ISO format: "2026-03-15")
due_at_date - Use for the reminder description — there is no separate title field
text - Recurrence options: ,
weekly,biweekly,monthly,quarterly,biannuallyyearly
5. Organize Contacts
Tags — flat labels for cross-cutting categories:
create tag → add to contacts (bulk)Groups — named collections with emoji and description:
create group → add contacts (bulk)Best practice: Use tags for attributes ("Investor", "Engineer", "Met at Conference X") and groups for relationship clusters ("Startup Advisors", "Book Club", "Acme Corp Team").
6. Manage Custom Fields
list fields → create field definition → batch set values on contacts- Three field types: (free text),
input(dropdown with options),autocompletedatepicker - Use to set values on multiple contacts at once
dex_set_custom_field_values - For autocomplete fields, provide array with the allowed options
categories
7. Meeting Prep
When a user says "I have a meeting with X":
- Search for the contact
- Get full details with
include_notes: true - Check recent reminders for pending items
- Summarize: last interaction, key notes, pending follow-ups, shared context
- See CRM Workflows for detailed meeting prep guidance
8. Merge Duplicates
search for potential duplicates → confirm with user → merge- First ID in each group becomes the primary — all other data merges into it
- Always confirm with the user before merging (destructive operation)
- Can merge multiple groups in a single call
Important Patterns
Pagination
List operations use cursor-based pagination:
- : default 100 per page, max 500
dex_list_contacts - : default 50 per page, max 200
dex_search_contacts - Other list tools: default 10 per page
- Check in response
has_more - Pass from previous response to get next page
next_cursor - Iterate until to get all results
has_more: false
Destructive Operations
Always confirm with the user before:
- Deleting contacts ()
dex_delete_contacts - Merging contacts ()
dex_merge_contacts - Deleting tags, groups, notes, reminders, or custom fields
Response Truncation
Responses are capped at 25,000 characters. If truncated, the response preserves pagination metadata (, ) so you can fetch the next page. Use smaller values if responses are being truncated.
next_cursorhas_morelimitDate Formats
- All dates: ISO 8601 strings (e.g., ,
"2026-03-15")"2026-03-15T14:30:00Z" - Birthdays:
YYYY-MM-DD - Reminder due dates:
YYYY-MM-DD
Detailed References
- Tool Reference — Complete parameter documentation for every tool, with examples
- CLI Command Reference — Full MCP tool → CLI command mapping table (only needed for CLI mode)
- CRM Workflows — Relationship management best practices, follow-up cadences, and strategies for being an effective CRM assistant