contacts-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CONTACTS_MCP_HELPER_APP_PATH | Yes | Absolute path to the ContactsMCPHelperApp.app bundle |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| contacts_permissionsA | Check and optionally prompt for Apple Contacts access used by the helper app. |
| contacts_lookup_phoneB | Resolve one phone number to matching Apple Contacts entries. Returns zero or more ranked matches. |
| contacts_lookup_emailA | Resolve one email address to matching Apple Contacts entries. Returns zero or more ranked matches. |
| contacts_search_nameB | Search Apple Contacts by name, nickname, or organization. Returns zero or more ranked matches. |
| contacts_get_contactA | Fetch one Apple Contact by unified contact identifier. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool has a distinct query modality: permission check, lookup by phone, lookup by email, fetch by ID, and search by name. No two tools overlap in input type or purpose, so misselection is unlikely.
All names use snake_case with a consistent `contacts_` prefix, and four of five follow a verb_noun pattern. `contacts_permissions` is a slight noun-form deviation but remains predictable.
Five tools is well-scoped for a read-focused Contacts helper: permissions, three query modalities, and one ID fetch. Each tool has a clear role and none feels redundant.
The surface covers access check and all common read paths (ID, phone, email, name). It lacks any list-all/browse operation or mutation tools, but those may be outside the stated read-lookup scope; core retrieval is covered.