MCP App Store
by KeenEthics
ConnectMachine icon

ConnectMachine

By Connect Machine Inc

Get New App Alerts

Overview

ConnectMachine is a digital business-card and contact platform. This connector lets Claude work with your ConnectMachine network in natural language. Contacts: create, find, update, and delete contacts; smart search across name, company, job title, email, phone, notes, location, and the event where you met. When two contacts share a name, the connector reports the ambiguity and asks which one you mean instead of guessing. Events: track which event you met a contact at, and organize contacts into networks (labels). Digital cards: create and edit your business cards, including websites and social links, or extract contact data from a card photo. Housekeeping: detect and merge duplicate contacts, see where your contacts came from, and bulk-import leads. You sign in with your existing ConnectMachine account. Data stays in ConnectMachine; the connector only returns what is needed to answer each request. Included with ConnectMachine accounts; a few advanced actions (CSV export, industry and location filters) follow the same Premium rules as the app and reply with a clear upgrade message on free accounts.

Tools

abort_import

ChatGPT
Cancel an in-progress import session. Args: import_id: The import session UUID. Returns: Confirmation.

add_events_to_contact

ChatGPT
Attach one or more events to a contact — e.g. where you met them. Event names are resolved to existing events or created if missing. If you only have the contact's name, resolve it with find_contact first — ask the user which contact if it's ambiguous. Args: contact_id: The contact UUID. event_names: Event names to attach, e.g. ["Web Summit 2026"]. Returns: Confirmation.

assign_contacts_to_network

ChatGPT
Move one or more contacts to a different network/label. Args: contact_ids: List of contact UUIDs to move. network_id: Target network UUID. Returns: Confirmation of the update.

create_card

ChatGPT
Create a new business card. Args: label: Card display label (required). first_name: First name on the card (required). last_name: Last name on the card. company: Company name. job_title: Job title / designation. emails: Email entries, e.g. [{"value": "j@co.com", "label": "Work"}]. phones: Phone entries, e.g. [{"value": "+1555123", "label": "Mobile"}]. websites: Website entries, e.g. [{"value": "example.com", "label": "Website"}]. A missing scheme is normalized to https://. social_links: Social profile entries, e.g. [{"value": "https://linkedin.com/in/jane", "label": "LinkedIn"}]. label should be the platform name (LinkedIn, Twitter/X, Instagram, GitHub, YouTube, TikTok, WhatsApp, etc.) — the web/App Clip card picks the icon from it. value may be a full URL or a bare handle; for a known platform a handle is expanded to the full profile URL. Returns: The created card object.

create_contact

ChatGPT
Create a new contact. Args: first_name: Contact first name (required). last_name: Contact last name. company: Company name. job_title: Job title / designation. network_id: Network/label ID to assign the contact to (default network when omitted; a first card named "My Card" is created if the user has none). notes: Free-text notes about the contact. bio: Short bio / description of the contact. industry_id: Industry ID to assign (see list_industries). emails: List of email objects, e.g. [{"value": "j@co.com", "label": "Work"}]. phones: List of phone objects, e.g. [{"value": "+1555123", "label": "Mobile"}]. events: List of event names where you met the contact (created if missing). Returns: The created contact object.

create_import_session

ChatGPT
Start a new contact import session. The session tracks import progress and can be used for batch imports. Args: label: Human-readable label for this import batch (e.g. "Salesforce Q1 2026"). source: Import source identifier — "csv", "phonebook", or "crm". Returns: Import session object with id and status.

create_network

ChatGPT
Create a new network (label / contact group). Args: name: Network display name (required). description: Optional description. Returns: The created network object.

delete_card

ChatGPT
Delete a business card permanently. Args: card_id: The card UUID. Returns: Confirmation.

delete_contacts

ChatGPT
Delete one or more contacts. This is irreversible. If you only have a contact's name, call find_contact first. If it returns multiple matches, ask the user which one before deleting — never guess when contacts share a name. Args: contact_ids: List of contact UUIDs to delete (from find_contact or a prior list/search call). Returns: Confirmation with count of deleted contacts.

delete_network

ChatGPT
Delete a network. Contacts in this network are moved to the default network. Args: network_id: The network UUID. Returns: Confirmation.

export_contacts_csv

ChatGPT
Export contacts as CSV. Requires ConnectMachine Premium — free accounts get a clear upgrade message instead of the export. Args: network_id: Optional — export only contacts from this network/label. Omit to export all contacts from every network. Returns: Export result with download_url and expires_at.

find_contact

ChatGPT
Resolve a contact's name to a contact_id before calling update_contact, delete_contacts, or any tag/network tool that takes a contact_id. ALWAYS call this before acting on a contact by name. If two or more contacts share that name, this returns status="ambiguous" with every match — STOP and ask the user which one they mean before doing anything else. Never guess based on which one looks more "recent" or "complete"; a wrong guess edits/deletes/tags the wrong person's data. Args: name: Full name to look up, e.g. "Meraj Ansari". company: Optional company to narrow an ambiguous result. Returns: status="found" with a single contact, status="ambiguous" with a matches list (ask the user to pick one, then call this tool again with company set, or use the chosen contact_id directly), or status="not_found".

get_card

ChatGPT
Get full details for a single business card. Args: card_id: The card UUID. Returns: Card object with all fields, infos, social links, and share settings.

get_contact

ChatGPT
Get full details for a single contact. Args: contact_id: The contact UUID. Returns: Contact object with infos, tags, notes, location, and meeting details.

get_contact_counts

ChatGPT
Get how many contacts you have and where they came from. Returns the all-time total plus a breakdown by source, e.g. "ai" (added through an AI tool like this one), "manual", "qr", "import", "link", "nfc", "share_back". Returns: total, onboarded, and by_source counts. When the network is larger than the scan limit, by_source covers the most recent contacts and breakdown_note says how many were scanned.

get_duplicate_contacts

ChatGPT
Find duplicate contact groups. Returns: List of duplicate groups, each containing the matching contacts.

get_enrichment_data

ChatGPT
Get auto-enrichment data for the authenticated user. Uses public data to suggest profile completions: name, company, designation, social profiles. Returns: Enrichment suggestions with confidence scores.

get_import_status

ChatGPT
Check the status of an import session. Args: import_id: The import session UUID. Returns: Session object with status (pending/in_progress/completed), records_imported, records_skipped, started_at, finished_at.

get_profile

ChatGPT
Get the authenticated user's profile. Returns: User object: id, first_name, last_name, email, phone, company, designation, bio, subscription status, profile_pic_url.

get_shared_card

ChatGPT
Fetch a business card's public details via its share link ID. This does not require authentication — used when a CRM receives a ConnectMachine share link. Args: share_id: The short share ID from a mycm.ai link. Returns: Public card details: name, company, title, contact info, social links.

get_subscription_status

ChatGPT
Get the user's current subscription status and available plans. Lists the monthly and yearly subscriptions only. One-off purchases and trial details are left out, so an assistant does not offer them as if they were plans. Returns: Subscription details: whether the account is paid, the active and previous subscriptions, and the monthly/yearly plans with prices.

get_unread_count

ChatGPT
Get the count of unread notifications. Returns: Object with unread_count field.

import_contacts_batch

ChatGPT
Import a batch of contacts into an existing import session. Each contact should have: first_name, last_name, company, job_title, and an infos array with {type, value, label} entries. Max 500 contacts per batch. Call multiple times for larger imports. Args: import_id: The import session UUID from create_import_session. contacts: Array of contact objects to import. Example: [{"first_name": "Jane", "last_name": "Doe", "company": "Acme", "infos": [{"type": "email", "value": "jane@acme.com", "label": "Work"}]}] Returns: Import progress with records_imported and records_skipped counts.

list_cards

ChatGPT
List the authenticated user's business cards. Args: include_archived: True returns every card, archived ones included. False (default) returns only active, non-archived cards. Returns: Array of card objects with id, label, first_name, last_name, company, job_title, social_links, profile_pic_url.

list_contacts

ChatGPT
List contacts with pagination, search, and filtering. Args: page: Page number (1-indexed). limit: Results per page (max 100). search: Free-text search across name, company, job title, email, phone, notes, location, meeting location, and event names. E.g. "founder" matches job titles, "WebSummit" matches events. network_id: Filter by network/label ID. network_name: Filter by network/label name (Consumer API). status: Filter by contact status (e.g. active). industry_ids: Filter by industry IDs (see list_industries). country: Filter by country name(s), comma-separated. state: Filter by state name(s), comma-separated. city: Filter by city name(s), comma-separated. sort: Sort field — created_at, first_name, last_name, company. order: Sort direction — asc or desc. Returns: Paginated list of contacts with total count.

list_events

ChatGPT
List the user's events, e.g. conferences and meetups where contacts were met. To see who you met at an event, search contacts by the event name. Returns: Array of event objects: id, name, type, created_at, updated_at.

list_import_sessions

ChatGPT
List all import sessions for the authenticated user. Returns: Array of import session objects.

list_industries

ChatGPT
List all industries (predefined + user-created) with their IDs. Use the IDs with list_contacts(industry_ids=...) to filter contacts by industry, or with create_contact/update_contact to set a contact's industry. Returns: Array of industry objects: id, name.

list_networks

ChatGPT
List all networks (labels / contact groups) with contact counts. Returns: Array of network objects: id, name, description, contactsCount, isDefault.

list_notifications

ChatGPT
List notifications for the authenticated user. Args: notification_type: Filter by type — system, card_share, connection_request, netsend. is_unread: Only return unread notifications. limit: Results per page (max 100). offset: Offset for pagination. Returns: Paginated list of notifications.

mark_all_notifications_read

ChatGPT
Mark all notifications as read, optionally filtered by source. Args: source: Optional — only mark notifications from this source as read. Returns: Confirmation with count of notifications marked.

mark_notification_read

ChatGPT
Mark a single notification as read. Args: notification_id: The notification UUID. Returns: Confirmation.

merge_contacts

ChatGPT
Merge duplicate contacts into one. Runs the required merge-preview step first (the backend builds the merge plan from it), then executes the merge with the previewed contact, optionally overridden by fields. Args: group_id: The numeric duplicate group ID from get_duplicate_contacts. contact_ids: The contact UUIDs in the group to merge (min 2). fields: Optional overrides for the merged contact, e.g. {"first_name": "Jane", "company": "Acme"}. Returns: The merged contact object.

read_card_image

ChatGPT
Extract contact information from a business card image using AI/OCR. Provide either image_base64 (the card photo) or ocr_text (pre-extracted text), or both for best accuracy. Args: image_base64: Base64-encoded card image (JPEG/PNG). ocr_text: Pre-extracted OCR text from the card. latitude: Optional — current latitude for location enrichment. longitude: Optional — current longitude for location enrichment. Returns: Extracted contact fields: first_name, last_name, company, job_title, infos (emails, phones, websites), and location.

remove_events_from_contact

ChatGPT
Detach events from a contact by name. Args: contact_id: The contact UUID. event_names: Event names to remove from the contact. Returns: Confirmation, or a no-op note if none of the names matched.

reorder_networks

ChatGPT
Set the display order of networks. Args: network_ids: Ordered list of network UUIDs (first = top). Returns: Confirmation.

search_contacts

ChatGPT
Search contacts by name, company, job title, email, phone, notes, location, meeting location, or event name. Examples: "founder" (job title), "Acme" (company), "WebSummit" (event where you met), "Berlin" (location / meeting location). This is a convenience wrapper around list_contacts with search; use list_contacts for industry or country/state/city filters. Args: query: Search text. limit: Max results to return (default 10). Returns: Matching contacts.

update_card

ChatGPT
Update a business card's fields. Only non-empty fields are updated. Args: card_id: The card UUID (required). label: New card label. first_name: New first name. last_name: New last name. company: New company. job_title: New job title. emails: Full new list of email objects, e.g. [{"value": "j@co.com", "label": "Work"}]. Replaces existing emails; other info types are preserved. phones: Full new list of phone objects, e.g. [{"value": "+1555123", "label": "Mobile"}]. Replaces existing phones; other info types are preserved. websites: Full new list of website objects, e.g. [{"value": "example.com", "label": "Website"}]. A missing scheme is normalized to https://. Replaces existing websites; other info types are preserved. social_links: Full new list of social profile objects, e.g. [{"value": "https://linkedin.com/in/jane", "label": "LinkedIn"}]. label should be the platform name (drives the web/App Clip icon); value may be a full URL or a bare handle (expanded for known platforms). Replaces existing social links; other info types are preserved. Returns: The updated card object.

update_contact

ChatGPT
Update an existing contact's fields, contact info, and events. Only provided (non-empty) fields are changed. emails/phones REPLACE the contact's existing emails/phones respectively; other contact info types (websites, socials) are preserved. If you only have the contact's name (not their ID), call find_contact first. If it returns multiple matches, ask the user which one before calling this tool — never guess when contacts share a name. Args: contact_id: The contact UUID (required — from find_contact or a prior list/search call). first_name: New first name. last_name: New last name. company: New company. job_title: New job title. notes: New notes (replaces existing). bio: New bio (replaces existing). network_id: Move contact to this network/label. industry_id: Set the contact's industry (see list_industries). emails: Full new list of email objects, e.g. [{"value": "j@co.com", "label": "Work"}]. phones: Full new list of phone objects, e.g. [{"value": "+1555123", "label": "Mobile"}]. add_events: Event names to attach, e.g. where you met (created if missing). remove_events: Event names to detach from the contact. Returns: The updated contact object.

update_network

ChatGPT
Update a network's name or description. Args: network_id: The network UUID (required). name: New name (if non-empty). description: New description (if non-empty). Returns: The updated network object.

abort_import

Claude

add_events_to_contact

Claude

assign_contacts_to_network

Claude

create_card

Claude

create_contact

Claude

create_import_session

Claude

create_network

Claude

delete_card

Claude

delete_contacts

Claude

delete_network

Claude

export_contacts_csv

Claude

find_contact

Claude

get_card

Claude

get_contact

Claude

get_contact_counts

Claude

get_duplicate_contacts

Claude

get_enrichment_data

Claude

get_import_status

Claude

get_profile

Claude

get_shared_card

Claude

get_subscription_status

Claude

get_unread_count

Claude

import_contacts_batch

Claude

list_cards

Claude

list_contacts

Claude

list_events

Claude

list_import_sessions

Claude

list_industries

Claude

list_networks

Claude

list_notifications

Claude

mark_all_notifications_read

Claude

mark_notification_read

Claude

merge_contacts

Claude

read_card_image

Claude

remove_events_from_contact

Claude

reorder_networks

Claude

search_contacts

Claude

update_card

Claude

update_contact

Claude

update_network

Claude

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

Similar Apps