{"id":73066,"plugin_id":"plugin_asdk_app_6ac60755990481918de6a1f3b22dcf8e","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-10-31T01:17:21.121Z","digest":"018e92d7e12152468cc1851d96577c3bf6665c8a4f894a19e1aeb24cbff1d68b","against":null,"payload":{"description":"Adds a NEW person to Breakthrough from a LinkedIn profile URL or an email address, then starts enrichment to fill in their role, employer, and background. Requires a URL or email — a name alone is not enough to import from.","included_files":[],"name":"import-contact","skill_md_contents":"---\nname: import-contact\ndescription: >-\n  Adds a NEW person to Breakthrough from a LinkedIn profile URL or an email address,\n  then starts enrichment to fill in their role, employer, and background. Requires a\n  URL or email — a name alone is not enough to import from.\nwhen_to_use: >-\n  Use when the user supplies a LinkedIn URL or email address and says \"import\", \"add\",\n  \"pull in\", \"get this person into the system\", \"track this guy\", \"add her to\n  Breakthrough\". Do NOT use for someone already in the system whose details have gone\n  stale; that is refresh-contact. Do NOT use to check whether they already exist; that\n  is find-contact.\n---\n\n# Import a contact\n\nWraps the `import_contact` MCP tool.\n\n## Before calling\n\n**Check whether they already exist.** Run the find-contact skill first. Importing\nsomeone already in the CRM enqueues enrichment work for nothing and can create a\nduplicate the user then has to clean up.\n\n**You need a LinkedIn URL or an email address.** `query` alone is a weak signal for\nimport — the tool imports from an identifier, not from a name. If the user has neither,\nsay so rather than importing something approximate.\n\n## Calling\n\n`import_contact(linkedin_url=None, email=None, query=None)` — pass whichever identifier\nyou have.\n\nThis tool is annotated **destructive** and Claude Code will prompt before it runs. That\nprompt is correct; do not tell the user to pre-approve it.\n\n## What it does\n\n- Queues background enrichment against external data sources\n- Waits for the contact to be created, for up to **~90 seconds**, and returns then\n- The fit result keeps generating after it returns: `contact_without_fit_generating`\n  means it is still running; `contact_profile` shows it a minute or two later\n\nA pause is expected. Don't retry a call that seems slow — you'll queue a second import.\n\n## Reporting\n\nReport the returned status and the contact if one was created.\n\nEnrichment continuing after the tool returns is normal. Say the import started and that\ndata will fill in, rather than presenting a partially-enriched record as final.\n\nIf the result is `{\"status\": \"skipped\", \"reason\": \"missing_or_invalid_license_context\"}`,\nnothing was imported — that's an auth failure. Tell the user to authenticate.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}