3CX Directory & Contacts
SkillCommunication3CX's read-only directory surface: resolving a caller by email or by exact extension, searching the PBX's own phonebooks, searching contacts synced from an integrated CRM, and listing PBX users/extensions.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the 3CX Directory & Contacts skill
What this skill tells your AI
The instructions your AI receives, as published by wyre-ai/msp-claude-plugins in msp-claude-plugins/3cx/3cx/skills/directory/SKILL.md and read by ahel’s review.
Overview
3CX exposes read-only lookups across three sources: the PBX's own phonebooks (company and personal entries), the PBX's user/extension list, and — where the PBX has a CRM connector configured — contacts synced in from that CRM. All of it is read-only; nothing in this skill creates or edits a contact or extension.
Anti-triggers
- The CRM record itself — this skill only reads what 3CX has synced in
or is querying live from a connected CRM. To create or edit the actual
CRM contact, use
hubspot-contactsorsalesbuildr-companies-contacts. - The client's documentation record — extension lists and phone trees
that belong in runbooks live in
hudu-companies, not here.
Capabilities
Exact tool names are not published by 3CX — see the api-patterns skill
for why, and call tools/list for the authoritative names on a connected
PBX. The read-only capabilities this skill covers:
- Find a contact by email
- Find a contact by exact extension
- Search CRM-integrated contacts
- Search 3CX phonebooks
- List PBX users/extensions
Common Workflows
Resolve a caller
- If you have an email address or an exact extension number, use the matching exact-match lookup first — it's the most reliable signal.
- If that comes back empty, fall back to a phonebook search or a CRM-integrated contact search for a partial or fuzzy match.
- If you only have a name, search the phonebook and the CRM-integrated contacts in parallel — one may have an entry the other doesn't.
Cross-reference with the PSA or CRM
A miss on CRM-integrated contact search means "not synced to this PBX," not "doesn't exist in the CRM." The sync is whatever CRM connector is configured on that specific PBX — confirm the connector is active before concluding a contact genuinely doesn't exist anywhere.
Gotchas
- Extension lookup is exact-match, not fuzzy. A partial or slightly-wrong extension number won't resolve — fall back to the user list or a phonebook search instead of retrying the same lookup.
- CRM-integrated results reflect the PBX's own sync, not a live CRM query. Staleness depends entirely on how that PBX's CRM connector is configured — this skill has no visibility into that connector's refresh interval.
Related Skills
- API Patterns — connection setup and tool discovery
- Calls, Queues & Profiles — what a resolved contact is doing right now (on a call, in a queue)
Signals
- GitHub stars
- 45
- Forks
- 24
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
x-3cx-directory-contacts- Source
- github.com/wyre-ai/msp-claude-plugins