sent-contacts
This skill enables comprehensive management of Sent contacts through the Sent MCP tools. It can list, search, inspect, bulk-create, summarize, or delete contacts, and it includes local deduplication, payload previews, and explicit confirmation gates to ensure safe mutations. It is ideal for scenarios where users need to manage messaging contacts, import or deduplicate large contact lists, review a contact's messaging summary, remove a contact, or maintain clean contact records. By automating these operations and enforcing confirmation, it reduces manual effort, prevents accidental changes, and ensures that every mutation is deliberate and accurate. This is especially valuable in sales and customer relationship contexts where contact data accuracy and compliance are critical.
npx skills add https://github.com/sentdm/sent-plugin --skill sent-contactsBefore / After Comparison
1 组Before this skill, users had to manually enter contact information one by one, which was error-prone and time-consuming. For large imports, there was no automatic deduplication, leading to duplicate records, and the lack of confirmation gates increased the risk of accidental operations.
With this skill, contacts can be created in bulk with automatic local deduplication and confirmation gates for precise operations. It significantly reduces manual input errors, improves data quality, and lowers the risk of accidental deletions or duplicate creations.
Sent Contacts
Operate contacts with contacts.list, contacts.get, contacts.create_many, contacts.delete, and contacts.message_summary.
Establish connection and scope
Use client-managed OAuth 2.1/PKCE. Never request or expose a token, API key, authorization header, client ID, or secret. Before a mutation, surface the active organization and Sender Profile from the connection context; if either is unavailable, use sent-account-readiness to inspect the authorized scope. Reauthorize in the client to change scope.
Mask phone numbers where practical. Return only the contact fields needed for the task, and do not repeat contact data after it has been reviewed. Number presence or messaging history does not establish consent.
Read contacts
- Use
contacts.listto search or page through contacts. Apply the narrowest available filter and do not dump an entire contact book unnecessarily. - Use
contacts.getwhen an exact contact identifier is known or before a delete. - Use
contacts.message_summaryfor the contact's messaging summary. Distinguish summary data from proof of consent or current reachability.
Read-only calls do not require mutation confirmation.
Create contacts in bulk
- Validate and deduplicate the proposed records locally. Preserve only fields the user actually supplied.
- Build the exact
contacts.create_manyarguments without calling the tool. - Show a payload preview with the selected organization, Sender Profile, record count, duplicate handling, and each exact target. Mask phone numbers where the operator can still verify them; reveal full values once only when exact verification requires it.
- Ask for explicit confirmation for this exact batch. Earlier or general approval is not sufficient.
- Call
contacts.create_manyimmediately after confirmation. Any change to the records or scope invalidates confirmation.
Never call contacts.create_many without a preview and explicit confirmation immediately before the call. Treat every retry as a new mutation with a fresh preview and new explicit confirmation.
Delete a contact
- Resolve the requested contact to one unambiguous identifier.
- Fetch the exact target first with
contacts.get. Never delete from a guessed identifier, broad filter, or stale list result. - Show a delete preview containing the selected organization, Sender Profile, exact contact identifier, display label, and masked address. State that deletion is destructive.
- Ask for explicit confirmation to delete that exact target.
- Call
contacts.deleteimmediately after confirmation. If the target, scope, or record changes, fetch it again and repeat the preview.
Never call contacts.delete without fetching the target and obtaining explicit confirmation immediately before the call. Every retry requires another fetch, a fresh preview, and new explicit confirmation.
Report results
Report counts and stable identifiers, not full contact records. If a create or delete outcome is ambiguous, do not assume success and do not retry automatically. Re-read the exact target when possible, explain the uncertainty, and require a new confirmation before any further mutation.
User Reviews (0)
Write a Review
No reviews yet
Statistics
User Rating
Rate this Skill