Icebreaker
Search across your networks
- Category
- Pending
- Primary Subcategory
- Pending
Integration details
Description
Whether you're hiring, selling, or searching, everyone knows that the best opportunities come from leveraging your existing network. With Icebreaker, you can finally search across your own extended network, directly from your favorite AI tools. Turn cold leads into warm referrals and amplify your conversion rates by 5-20x when you make your agents network-aware, across LinkedIn, X, GitHub, and more.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Category
- Pending
- Primary Subcategory
- Pending
- Secondary Subcategories
- None listed
- Brand
- Unknown
- Access
- Account required
- First tracked
- 2026-09-01
- Tool count
- 16
- Geography
- US
The broad Category that contains the Primary Subcategory.
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
ChatGPT Plugin Discovery Score
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Competitive lineup
16 tools agents can invoke
Trigger enrichment for a company by LinkedIn (enrich company by LinkedIn). Use when the user asks to enrich a company by LinkedIn, trigger company enrichment by LinkedIn, or send a company LinkedIn URL for enrichment. Distinct from a future enrich-company-by-domain tool. Input: Provide a LinkedIn company URL (full or partial) or company slug. - Full URL: https://www.linkedin.com/company/gambit-robotics-inc/ - Partial or slug: anthropic or linkedin.com/company/anthropic Returns success with the normalized URL that was submitted, or an error. Enrichment runs asynchronously; after processing, use search_network to find people by the company's domain (e.g. credentialnames:Verified: companydomain.com).
enrich_company_by_linkedin_tool
Trigger enrichment for a person by LinkedIn URL. Use when the user asks to "enrich person [name]", "enrich [LinkedIn URL]", "enrich [name]", "get contact info for [person]", or similar. Input: Provide a LinkedIn URL (full or partial) or a LinkedIn username. - Full URL: https://www.linkedin.com/in/kbieg/ - Partial or username: kbieg or linkedin.com/in/kbieg - If the user gives only a person's name (e.g. "Kyle Bieg"), use search_network or another method to find their LinkedIn profile URL first, then call this tool with that URL. Returns success with the normalized LinkedIn URL submitted, or an error. Enrichment is asynchronous. After a short delay (e.g. 30–60 seconds), call get_enrichment_result(linkedin_url) with the same LinkedIn URL to retrieve emails and phone numbers.
enrich_person_tool
Read one contact list by ID with a paginated slice of member social paths (up to 1000 per page from the API). The lists API returns `page`, `total_pages`, and `total_members` on each response when supported; the MCP forwards that page of `social_paths` without re-slicing. Older responses that omit pagination metadata are paginated client-side for compatibility. Paths use supported prefixes only (linkedin/, github/, twitter/, farcaster/, profile/). Profile enrichment is up to the caller. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint. List GET requests always send your pkid as `owner` and `viewer`. Pass `team_domain` to scope to a team; when omitted, the server resolves team mode from your viewer context.
get_list_tool
Check enrichment status or retrieve result for a person by social path or LinkedIn URL. Calls the Icebreaker app socialPathEnrichments API with socialPath only. Use after calling enrich_person: enrichment is asynchronous; call this after a short delay (e.g. 30–60 seconds) to get emails, phones, fullName, jobTitle, etc. Input: Either a social path (e.g. linkedin/johndoe, twitter/handle) or a LinkedIn URL/username (same format as enrich_person). Lookup is by socialPath so any paying user can retrieve results regardless of who requested enrichment.
get_enrichment_result_tool
Find intro path(s) from you (the viewer) to a single contact using 1st-degree connections. IMPORTANT: Use for ONE contact at a time only. If the user asks about multiple people, call this tool separately for each contact. Do not pass social paths from multiple different profiles in a single call. Use this when the user is looking at search results and wants to find someone who can introduce them to a specific profile. Pass that single target profile's social path(s) in connected_social_paths. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint. HARDWIRED PAYLOAD: - ordinality: ["1st"] (direct connections only) - connectedSocialPaths: [list of social paths from the connected_social_paths argument] (required) - sortBy: "trust_score" (results always sorted by trust score) - hideViewer: true, sources: ["all"], limit: configurable (default 50)
get_intro_path_tool
Return mutual 1st-degree connections between you (the viewer) and one or more target profiles. Use this for "what do we have in common?" or "who can vouch for me?" — same graph data as intro path, but framed as shared connections. Pass the target profile's social path(s) in connected_social_paths. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint. HARDWIRED PAYLOAD: - ordinality: ["1st"] (direct connections only) - connectedSocialPaths: [list of social paths from the connected_social_paths argument] (required) - sortBy: "trust_score" - hideViewer: true, sources: ["all"], limit: configurable (default 50)
get_mutuals_tool
Return the list of social paths for your team (Verified + collaborators). Team is defined by verified company credential members. Only paths with supported prefixes are returned: icebreaker/, profile/, linkedin/, farcaster/, github/, twitter/. Use get_team first to obtain social_paths, then pass that list as connectedSocialPaths to search_network or batch_search_network (up to 1000 paths per request) to run a team-scoped search. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint.
get_team_tool
Return team collaborators with profile info and social paths on your team (same endpoint as get_team with teamCollaborators=collaborators). get_team uses teamCollaborators=verified (verified members only); this tool lists collaborators only. Team is defined by verified company credential members. Only paths with supported prefixes are returned: icebreaker/, profile/, linkedin/, farcaster/, github/, twitter/. Pass the returned social_paths as connectedSocialPaths to search_network or batch_search_network for a collaborator-scoped search. Use collaborators[].pkid when present (only for icebreaker/{pkid} collaborators), or icebreaker/{pkid}, when queueing collaborator network syncs; omni_profile.name helps pick the right person. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint.
get_team_collaborators
Full Icebreaker network search guide: parameter rules, ordinality and globs, company-by-domain patterns, connectedSocialPaths and team flows, pagination, response shape, and profile URL rules. Same text as the server_instructions MCP prompt and resource://search-guide. Use this tool when your client lists MCP tools but does not expose prompts or resources.
get_server_instructions
List all contact lists for the viewer (GET /lists). Uses your pkid for `owner` and `viewer`, with optional `domain` for team-scoped lists. Does not return member paths — use get_list for members. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint.
list_lists_tool
Lookup the viewer's profile and all connected profiles (LinkedIn, etc.). This tool fetches comprehensive profile data for the current viewer using the search query: - socialPaths: ["icebreaker/viewer_pkid"] - sources: ["all"] - ordinality: ["Global"] - limit: 100 Returns all profiles associated with the viewer across platforms including: - Primary profile information - All connected social profiles (LinkedIn, GitHub, etc.) - Work history and experience across platforms - Contact information and social links **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint. The results are automatically cached locally in ~/.icebreaker/viewer_cache/ for future reference.
lookup_viewer_tool
Create a list or add/remove members or update name/description/share_state. Actions: create (name + social_paths required; optional team_domain for team lists), add_members, remove_members (list_id + social_paths), update (list_id + name and/or description and/or share_state). On create, owner and creator are always your pkid; team_domain is optional. System lists (creator: icebreaker) cannot be modified. **viewerPkid is ALWAYS provided** from the OAuth access token (urn:icbk-mcp:user_pkid) for this endpoint. Every POST to the lists API includes `viewer` (your pkid) in the JSON body. Create also sends owner and creator as your pkid, with optional domain for team lists. After a successful create (or any action returning an `id`), construct and surface the list URL: - Personal lists: https://app.icebreaker.xyz/lists/{id} - Team lists (when `team_domain` was provided): https://app.icebreaker.xyz/teams/{team_domain}/lists/{id}
manage_list_tool
Return the caller's plan, subscription status, and per-feature Schematiq limits.
get_entitlements_tool
Queue a social path for syncing the viewer's social graph. Use when the user wants to sync their LinkedIn, Twitter, or GitHub network. Accepts a social path in the form channel/identifier (e.g. linkedin/johndoe, twitter/handle, github/octocat). For self-queue (no collaborator_pkid), team_domain is optional: when omitted, the server resolves it automatically from the current viewer context; pass team_domain only to override. Optional collaborator_pkid queues a sync on behalf of a team collaborator. Pass collaborators[].pkid from get_team_collaborators when present (only for icebreaker/{pkid} collaborators), or icebreaker/{pkid}. When collaborator_pkid is set: - team_domain is required in the API request: pass team_domain explicitly, or rely on automatic resolution on pre-configured profile mounts. It is forwarded as teamDomain. - The API requires the caller to be a team admin on team_domain and collaborator_pkid to identify a collaborator on that same team_domain. MCP does not verify roles; unauthorized calls fail at the API. - social_path is the graph to sync and need not match the collaborator. Use get_team_collaborators(company_domain=team_domain) to list collaborators on the team.
queue_network_sync_tool
Query sync status for a social path (linkedin, twitter, github) for the viewer's graph. Companion to queue_network_sync: same social_path form (e.g. linkedin/johndoe). GET on the same base URL as the queue webhook with that path appended (URL-encoded). Pass the same collaborator_pkid and team_domain used when queueing to poll collaborator-scoped jobs. Optional collaborator_pkid queues a sync on behalf of a team collaborator. Pass collaborators[].pkid from get_team_collaborators when present (only for icebreaker/{pkid} collaborators), or icebreaker/{pkid}. When collaborator_pkid is set: - team_domain is required in the API request: pass team_domain explicitly, or rely on automatic resolution on pre-configured profile mounts. It is forwarded as teamDomain. - The API requires the caller to be a team admin on team_domain and collaborator_pkid to identify a collaborator on that same team_domain. MCP does not verify roles; unauthorized calls fail at the API. - social_path is the graph to sync and need not match the collaborator. Use get_team_collaborators(company_domain=team_domain) to list collaborators on the team. For self-queue status (no collaborator_pkid), team_domain is optional; when omitted on OAuth/header mounts it is not resolved from Neon on status polls (avoids a DB round-trip).
queue_network_sync_status_tool
Search for profiles using the Icebreaker Hypernetwork. ✅ **viewerPkid is ALWAYS provided** for this endpoint from the OAuth access token (claim urn:icbk-mcp:user_pkid). Use `ordinality: ["1st", "2nd"]` for extended network (recommended) or `["1st"]` for direct connections only. QUICK START - Common one-shot queries: - "find golang engineers in nyc": {"globs": ["golang engineer New York"], "ordinality": ["1st", "2nd"], "limit": 50, "hideViewer": true, "sources": ["all"]} - "find rust developers": {"globs": ["rust developer"], "ordinality": ["1st", "2nd"], "limit": 50, "hideViewer": true, "sources": ["all"]} - "find python engineers in san francisco": {"globs": ["python engineer San Francisco"], "ordinality": ["1st", "2nd"], "limit": 50, "hideViewer": true, "sources": ["all"]} - "look up linkedin user hoangmn": {"socialPaths": ["linkedin/hoangmn"], "ordinality": ["Global"], "limit": 50, "hideViewer": true, "sources": ["all"]} ESSENTIAL PARAMETERS (use these for most queries): - globs: Combine skills/roles AND location in one string, e.g., ["golang engineer New York"] or ["rust web3 San Francisco"] (PREFERRED - put location in globs, not in locations parameter) - ordinality: ["1st", "2nd"] (based on viewerPkid availability above) - limit: 50-100 recommended for initial searches - hideViewer: Always set to true to exclude yourself from results - sources: ["all"] to search across all platforms - locations: (DEPRECATED - prefer putting location in globs instead) - socialPaths: Look up specific profile(s) by social path/handle (same form as omni_profile.social_name), e.g. linkedin/hoangmn, github/octocat, twitter/handle, profile/{id}. Returns those exact profiles — use when you know a handle from elsewhere. NOT for searching someone's connections (use connectedSocialPaths for that). Prefixes: icebreaker/, profile/, linkedin/, farcaster/, github/, twitter/. - connectedSocialPaths: Search the network/connections of the given path(s), not the profile(s) themselves. For their full global indexed network (subject to visibility), set ordinality to ["Global"]. Up to 1000 paths per request (team: get_team → social_paths). Prefixes only: icebreaker/, profile/, linkedin/, farcaster/, github/, twitter/. - Company by domain: append globs with ["credentialnames:Verified: companydomain.com"]; includeAssociations defaults to true (anyone at company, verified or not). Set to false only for verified-members-only. Both return current and past affiliation (no current-only filter). - Examples — profile lookup by handle: {"socialPaths": ["linkedin/hoangmn"], "ordinality": ["Global"], "limit": 50, "hideViewer": true, "sources": ["all"]} | GitHub: {"socialPaths": ["github/octocat"], "ordinality": ["Global"], "limit": 50, "hideViewer": true, "sources": ["all"]}. - Examples — another person's global indexed network (connections): {"connectedSocialPaths": ["linkedin/hoangmn"], "ordinality": ["Global"], "limit": 50, "hideViewer": true, "sources": ["all"]} | GitHub: {"connectedSocialPaths": ["github/octocat"], "ordinality": ["Global"], "limit": 50, "hideViewer": true, "sources": ["all"]} | X/Twitter: {"connectedSocialPaths": ["twitter/handle"], "ordinality": ["Global"], "limit": 50, "hideViewer": true, "sources": ["all"]}. - Team network size (example): (1) get_team with your company domain → social_paths and team_profiles_count; (2) search_network with connectedSocialPaths=social_paths, ordinality as above, globs omitted or a single very broad term if needed, limit=1000, offset=0; (3) read total size from response.hits.total in the API payload when present, else use total_results and paginate with offset until a page returns fewer than limit profiles. - connectionFollowType: One of "connection" (default when undefined), "recommendations", "following", "follower". RECOMMENDED BY MY TEAM: Use connectionFollowType: "recommendations" with either (a) teamCollaborators: "verified" or "collaborators" and teamDomain: "company.com", or (b) connectedSocialPaths set to your team's social paths (from get_team). Example: {"connectionFollowType": "recommendations", "teamCollaborators": "verified", "teamDomain": "acme.com", "globs": ["engineer"], "ordinality": ["1st", "2nd"], "limit": 50, "hideViewer": true}. PAGINATION: Results are capped at 100 per call. To retrieve all results, use the offset parameter to paginate: start with offset=0, then offset=100, offset=200, etc. Stop when the number of profiles returned is less than the limit. For full dataset scans (e.g. all members of a company), always paginate until exhausted. HARDWIRED PAYLOAD (person at company): - When searching for a person at a specific company, do NOT glob the person's name + company together. Instead: (1) use `credentialnames:Verified: <companydomain.com>` as the glob to pull all associated company members, (2) paginate through ALL pages using offset until results returned < limit, (3) filter by name client-side from the full result set. - Example - Find "Benjamin" at Lazer Technologies: Step 1: search with globs=["credentialnames:Verified: lazertechnologies.com"], offset=0, limit=100 Step 2: repeat with offset=100, offset=200, etc. until profiles returned < 100 Step 3: scan all returned profiles for name match "Benjamin" - Do NOT do: globs=["Benjamin software engineer lazer technologies"] — this misses unlisted/unindexed names. DEFAULT BEHAVIOR: - This endpoint has viewerPkid provided from OAuth JWT (urn:icbk-mcp:user_pkid) - Use ordinality: ["1st", "2nd"] for extended network (recommended) or ["Global"] for all results regardless of network distance IMPORTANT! RESULT FORMAT: Use each profile's profile_url for the link; if missing, build from omni_profile.social_name (e.g. profile/xyz -> https://app.icebreaker.xyz/profiles/xyz, linkedin/abc123 -> https://app.icebreaker.xyz/linkedin/abc123). Always include the link. Display name/bio from omni_profile. For full guidance, call get_server_instructions (tool); prompts/resources may be unavailable in some clients.
search_network
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.