Skip to main content
Glama
649,985 tools. Updated 2026-10-10 15:32

"A method for finding people on LinkedIn based on company name" matching MCP tools:

  • Default tool for finding people on LinkedIn from criteria (company, role, department). With a ready search URL use search_linkedin_navigator; for one known profile URL use upsert_linkedin_contact. Search LinkedIn people. RECOMMENDED FOR PROSPECTING: set decisionMakers:true, provide company, departments and limit 20-30. Salesbot resolves the company, performs ONE company-scoped provider search (Sales Navigator also applies seniority), then ranks the returned senior employees locally by department. This is broader and safer than retrying exact titles. Use title/titles only when an exact role is required. EXISTING CONNECTIONS reads only the local cache and consumes zero search quota. The workspace setting selects Standard/Classic or Sales Navigator automatically. Respect retry_after; never immediately retry a protected or timed-out request. On LINKEDIN_PROVIDER_TIMEOUT use search_google_xray, then retry LinkedIn only after the stated delay.
    ConnectorAPI key
  • Find people on stage across every event: name, title, company, LinkedIn, talk, role. Filter by company (name or domain), title, persona, sector, country, dates.
    ConnectorNo auth
  • Searches the text of LinkedIn posts. Useful for finding posts on a specific topic. Works on the personal profile by default; pass `organization` to target a company page (see list_organizations).
    ConnectorOAuth
  • Get available criteria and their supported values (names and IDs) for target group creation/updates. USE FOR: "what targeting criteria are available?", "what options for [criteria type]?", "supported values for industries/seniority/job functions", "how to search job titles/interests/member groups?", validate criteria before creating target group, get valid IDs for create_target_group. CRITERIA TYPES: 1. LIST-BASED (returns predefined options): - age-ranges: Age range options - company-categories: Company classifications - company-growth-rates: Growth rate ranges - revenues: Revenue ranges - employees: Employee count ranges - industry-taxonomy: Industry codes/names - jobFunctions: Job function categories - seniority: Seniority levels - followed-companies: Company follow options - locations: Geographic data (MANDATORY as FIRST criteria for LinkedIn) - use search_terms for filtering 2. SEARCH-BASED (use search_terms): - job-title: Search job titles (reference_type: LINKEDIN_JOB_TITLES) - member-groups: Search LinkedIn groups (reference_type: LINKEDIN_MEMBER_GROUPS) - member-skills: Search professional skills - interests: Search interests (reference_type: LINKEDIN_INTERESTS) - traits: Search behaviors (reference_type: LINKEDIN_TRAITS) 3. NUMERIC: years-of-experience (0-12, not retrieved via this tool) OPERATION MODES: - List: search_target_group_criteria(channel="LINKEDIN", criteria_type="seniority") - Search: search_target_group_criteria(channel="LINKEDIN", criteria_type="job-title", search_terms=["engineer"], exact_match=false) - Direct: search_target_group_criteria(channel="LINKEDIN", reference_type="LINKEDIN_JOB_TITLES", search_terms=["engineer"]) RESPONSE: Array of {externalId, name}. Use externalId in target group config, show name to users. CHANNEL: Only LINKEDIN supported.
    ConnectorAPI key
  • Find people on LinkedIn by keywords and filters. The right tool when you have a name, role, or 'who is the X at Y' question without a profile URL. Pass keywords (free text: name, title, or both) and any of first_name, last_name, title, school, current_company, past_company. If keywords is omitted it is derived from the name or title filters; school or company filters alone are rejected with INVALID_INPUT, so include keywords with those. Company filters accept a company name, slug, numeric id, or URN. current_company names are matched by LinkedIn's own company search: typo-tolerant and fuzzy, so results can include people whose headline merely mentions the company; when you need exact filtering, pass the numeric id or URN (linkedin_get_company returns both). past_company names are resolved to an id for you. Costs 10 credits including the first 10 results; each further 10 results add 1 credit (limit max 30; trial keys max 10). A cursor page is a NEW call priced the same way by its own limit, so one limit=30 call is much cheaper than three limit=10 pages; prefer a larger limit over paginating. Do NOT combine a past_company NAME or a company-URL filter with limit=30: resolving those spends one of the call's three internal fetches, so that combination is rejected; keep limit<=20 with them or pass the numeric id. current_company names never spend a fetch, so they combine with any limit. Returns name, position, location, urn, public_identifier per result, a cursor for the next page, and total_matches. Results with is_anonymous=true are private profiles; do not pass them to linkedin_get_profile. For one known person with a URL/slug, call linkedin_get_profile directly instead.
    ConnectorOAuth
  • Merge a duplicate CRM company into another one (e.g. 'Škoda JS' into 'Škoda Group'). All people move to keep_crm_company_id, empty details are filled from the duplicate, account notes are joined, the duplicate's name is remembered as an alias so future leads with that name land in the kept company, and the duplicate is deleted. Cannot be undone — only merge when both records are clearly the same organisation (check with get_crm_company), and confirm with the user when unsure. Prefer keeping the company imported from LinkedIn.
    Connector
    Destructive
    API key

Matching MCP Servers

  • A
    license
    C
    quality
    C
    maintenance
    Provides an MCP server that tracks open loops (pending decisions or replies) across email, agent sessions, and other channels, enabling agents to query what is waiting on whom.
    14
    MIT

Matching MCP Connectors

  • Find personalized puzzle books by first name from a 100,000+ title Shopify catalog.

  • ship-on-friday MCP — wraps StupidAPIs (keyless — no credential needed)

  • Finds people by current company, title, country (ISO-2) or location and returns name, title, company and profile link, up to 25 results. Use to identify who to contact at a company. Work emails are not included: call apione_email_find for each person you want. Give at least one filter. Set count to cap spend. Not for details on one named person (use apione_people_enrich). Cost: 3 credits per result returned, so a full page of 25 results costs 75. No results, no charge.
    ConnectorNo auth
  • Identify what a LinkedIn URL points at before fetching it. Give any LinkedIn profile, company, or post URL (utm params, www/m subdomains, trailing slashes are fine); get back {type: person|company|post, id, handle, canonical_url}. For profile URLs, id is the stable person URN; for company URLs, id is the stable company URN; for post URLs, id is the activity URN extracted from the URL. For people, use the returned handle or id with linkedin_get_profile or linkedin_get_posts. For companies, use the returned HANDLE with linkedin_get_company or linkedin_get_posts; the company URN/id is a linkedin_search_people filter input, not a fetch identifier. Costs 2 credits. Skip this tool when you already have a slug, URN, or clean URL: linkedin_get_profile and linkedin_get_company accept those directly, so resolving first would waste 2 credits. Not for non-LinkedIn URLs; it returns INVALID_INPUT for those.
    ConnectorOAuth
  • Use for general web research (company info, news, job portals). For LinkedIn profiles use search_linkedin_people; to read one company's own site use read_company_website. General-purpose Google search — returns organic results for any query. Unlike search_google_xray (LinkedIn-only), this searches the entire web. Useful for finding job postings on portals (jobs.cz, prace.cz, profesia.sk, indeed.com), company info, news, or any other web content. Results are NOT saved to contacts — use this for research and discovery. Capped at 4 calls per minute to protect the Serper/Google budget.
    ConnectorAPI key
  • List the LinkedIn conversion actions (Insight Tag conversions) available on the connected LinkedIn ad account, with id, name, type and whether each is enabled. Use it to pick the ids for update_linkedin_channel_settings.conversion_action_ids (which conversions a campaign optimizes toward and reports on), and to answer "which LinkedIn conversions do we track?" or "is the /pricing page conversion set up?". KEYWORDS: linkedin, conversions, conversion actions, conversion tracking, insight tag, website visit conversion, lead gen form conversion, url conversion, page visit, pixel Requires a connected LinkedIn channel (check get_integrations_status). Conversion actions are created in LinkedIn Campaign Manager, not here: when the one the user needs (for example a URL rule for /pricing) is missing, say so and point them at Campaign Manager instead of inventing an id. RESPONSE: {success, count, conversions:[{id, name, type, enabled, last_received_at}]} `enabled: false` conversions cannot be attached to a campaign (launch validation rejects them). `last_received_at` is when LinkedIn last recorded a hit; null means the conversion has never fired.
    ConnectorAPI key
  • List the LinkedIn engagement source types and their triggers. STEP 1 of building a LinkedIn Engagement Retargeting audience. WHAT THIS AUDIENCE TYPE IS: An audience of people who ALREADY interacted with this advertiser on LinkedIn or on their website: watched a video ad, opened a lead form, clicked a document ad, visited the company page, or hit specific URLs. It is warm-traffic retargeting, built from first-party engagement, and it needs no contact list and no CSV. NOT THE SAME AS create_retargeting_audience. That tool IMPORTS an audience that already exists inside the native ad account. This flow BUILDS a new LinkedIn DMP segment from an engagement rule you define. If the user says "import my existing LinkedIn audience", use the other tool. If they describe PEOPLE WHO DID SOMETHING ("watched", "clicked", "visited", "opened", "engaged with"), use this flow. **THE THREE-STEP FLOW:** 1. get_linkedin_engagement_source_types (this tool) — choose a source type + trigger 2. search_linkedin_engagement_sources — choose which campaigns / pages to retarget (SKIP THIS STEP for the WEBSITE source type, which uses URL rules instead) 3. create_linkedin_engagement_retargeting_audience — build it SOURCE TYPES AND WHAT EACH RETARGETS (verified live; the response is authoritative and may differ per account, so never assume a value that is not in it): - VIDEO_ADS ........... viewers of the account's video ads - SINGLE_IMAGE_ADS .... people who engaged with single-image ads - DOCUMENT_ADS ........ people who engaged with or downloaded document ads - CONVERSATION_ADS .... people who opened or clicked a conversation ad - LEAD_GEN_FORMS ...... people who opened or submitted a lead gen form - ORGANIZATION_PAGES .. visitors to the LinkedIn company page - WEBSITE ............. visitors to specific URLs on the advertiser's own site TRIGGERS DEFINE INTENT DEPTH, and each source type has its own set: - VIDEO_ADS: FIRST_QUARTILE (>=25% viewed, the default) · MIDPOINT (>=50%) · THIRD_QUARTILE (>=75%) · FULL_COMPLETE (>=97%). Deeper means smaller and warmer. - SINGLE_IMAGE_ADS / DOCUMENT_ADS: ENGAGEMENT (any interaction, default) · CLICK (chargeable clicks only). DOCUMENT_ADS adds DOWNLOAD_CLICK (downloaded it). - CONVERSATION_ADS: OPEN (default) · ANY_CTA_CLICK (clicked a call-to-action). - LEAD_GEN_FORMS: VIEW_FORM (opened it, includes submitters, default) · LEAD_FORM_SUBMIT (submitted only — the hottest signal available). - ORGANIZATION_PAGES: VIEW (visited the page, default) · CTA_CLICK (clicked the page header CTA). - WEBSITE: VISIT. CHOOSING FOR THE USER'S INTENT: - "warm up a broad audience" / top of funnel → a shallow trigger (ENGAGEMENT, VIEW, FIRST_QUARTILE, VIEW_FORM) and a long lookback. - "high intent" / "ready to buy" / bottom of funnel → a deep trigger (LEAD_FORM_SUBMIT, FULL_COMPLETE, DOWNLOAD_CLICK, ANY_CTA_CLICK) and a short one. - When the user does not say, prefer the trigger marked `default` — it is LinkedIn's own recommended choice for that source type. - **Only ever use a trigger from the source type you picked.** The pairing is not validated anywhere downstream, so a trigger borrowed from another source type builds a permanently empty audience with no error to warn you. LOOKBACK WINDOW is both how far back engagement counts AND how long someone stays in the audience. Longer means bigger and colder; shorter means smaller and warmer. 30 / 60 / 90 / 180 / 365 days, except WEBSITE which LinkedIn caps at 180. 90 is a reasonable default when the user does not say. WHEN TO USE: - "Create an engagement retargeting audience" - "Retarget people who watched my LinkedIn video ads" - "Build an audience of people who opened / submitted my lead gen form" - "Retarget visitors to our pricing page" (WEBSITE) - "Who visited our LinkedIn company page?" (ORGANIZATION_PAGES) - "Retarget everyone who engaged with our ads last quarter" - Any request to retarget people by something they DID, on LinkedIn or the site PARAMETERS: none. It always reports the whole catalog for the caller's account. RETURNS: - sourceTypes[]: `engagementSourceType`, a human `description`, and the `triggers` valid for it (`engagementTrigger`, `description`, `default`). Only entries LinkedIn reports as ACTIVE are returned; inactive ones are filtered out. - lookbackWindowDays: the windows the platform accepts, with WEBSITE listed separately because of its 180-day cap. - next_step: which tool to call next. IMPORTANT NOTES: - Requires a connected LinkedIn channel. With none connected this returns nothing useful, and the fix is to connect LinkedIn (connect_channel), not to retry. - The catalog is LinkedIn's own and is read live, so it can change. Treat the response as the only source of truth and never pass a value absent from it. - EVENT_PAGES is deliberately not offered. LinkedIn advertises it but returns no sources for it, so an audience cannot be built from it. - A source type may come back with `triggersError` instead of `triggers` if its trigger list could not be read. The other source types are still usable; either retry or choose one of them.
    ConnectorAPI key
  • PERMANENTLY delete one CRM company (account record with its notes and details). Its people stay in the CRM without a company link, unless delete_leads: true deletes them too. For duplicates use merge_crm_companies instead. Note: a lead whose company name is edited later can be auto-linked to a newly created company of that name again. Cannot be undone: only on the user's explicit request, show the company first (get_crm_company) and pass confirm: true after they agree.
    Connector
    Destructive
    API key
  • Saves LinkedIn post text (up to 3,000 characters) as a draft, or updates an existing unpublished post. Without id it creates a draft. With id it updates a draft or a scheduled post that has not been sent; the schedule time and destination stay as they are and nothing is sent to LinkedIn. content is required to create; an update takes content and/or media, and optionally destination, mentions, first_comment, or auto_react. first_comment and auto_react are stored on the post and applied when it is published by schedule_post or publish_now. mentions tags LinkedIn company pages named in the text; people cannot be tagged. The result includes preview_url, a link that opens the post in PostPen for the signed-in account owner; it is meant to be shown to the user whenever a draft is saved or a post is scheduled. destination selects the personal profile or a company page from list_destinations. media attaches images, a video, or a PDF. Each media item has exactly one source: { url } for a public HTTPS file, { upload_id } for a file sent through create_upload, or { data } for a small base64 file up to 4MB. PostPen checks each file and copies it into its own storage. On an update, omitting media keeps existing attachments and media: [] removes them. media_urls and LinkedIn tokens are not accepted.
    Connector
    Destructive
    OAuth
  • [Ids in: draftId: job id, from list_job_postings → jobPostings[].id. Ids out: jobId: job id.] Publish ONE job posting draft on LinkedIn. mode FREE publishes it without paying. mode PROMOTED or PROMOTED_PLUS SPENDS MONEY from the payment method on the LinkedIn account, up to the budget given (or LinkedIn's suggested budget when none is given) — state the amount to the user and get an explicit yes first. Once published the posting is public. If LinkedIn asks to verify your right to post for that company, the answer says so; send the code with solve_job_posting_checkpoint. Counts against a daily allowance (20 a day).
    Connector
    Destructive
    OAuth
  • [Ids in: companyIds (optional): company id, from search_linkedin_companies → results[].id. Ids out: leads[].linkedinUrl: profile link; leads[].providerId: Sales Navigator id; leads[].salesNavLeadUrl: Sales Navigator lead link; leads[].publicIdentifier: public identifier.] Pull LinkedIn people matching a filter set — each person returns name, current title & company, headline, location, industry, the LinkedIn profile URL, providerId (feed to get_recent_posts to personalize), salesNavLeadUrl (the InMail-ready URL — pass it, or {profileUrl, providerId}, to add message targets on an InMail campaign), openProfile (true = accepts InMail for free), connectionDegree, sharedConnectionsCount (warm-intro signal), tenureInRole/tenureInCompany (a SHORT tenure means newly in seat — a timing signal for outreach), and pendingInvitation (true = already invited, skip it). Feed the URLs to enrich linkedin urls / enrich profiles for verified emails, or create leads bulk to add them to a campaign. COSTS HeyReagent credits per person returned (0.02 each; counting is free). ALWAYS size first with count_people_sales_navigator, then call this with confirm:false to see the exact credit cost, get the user's yes, THEN confirm:true. Never pull more than the balance covers. Same filters as count_people_sales_navigator (including the company revenue band — check revenueScope.complete), plus limit (default 25, max 100). BUILD A BIG LIST: to go past 100, pass the returned nextCursor back in as `cursor` (same filters, confirm:true) to pull the next batch — repeat until hasMore is false. For a large list, set format:"csv" to get an export-ready CSV block. Present results as a compact table (name / title / company / location) and, when the set is large, offer to (a) keep paging, (b) export to CSV, or (c) pull direct dials + emails via enrich linkedin urls.
    Connector
    Destructive
    OAuth
  • [Ids in: none. Ids out: companies[].companyId: company id.] List companies that recently had a FUNDING event (recently raised) — great for timing outreach while budget is fresh. Optionally scope by industry, headquarters location, company size, and annual revenue (e.g. minRevenueMillions:10 for companies that can afford a bigger retainer). FREE (no credits). Returns each company's name, industry, location, and size. NOTE: this is the LinkedIn funding SIGNAL (a recent funding event), not an amount/date. The actionable next step is to reach people there: search_people_sales_navigator with companyIds:[the returned companyId values] plus seniorities (and changedJobs / postedOnLinkedIn for timing), or find_decision_makers for one company (those pulls cost credits). Runs on HeyReagent's shared search database — no account needed.
    ConnectorOAuth
  • Use for a single one-off invitation outside campaigns. For many people use add_contacts_to_campaign and start_campaign. Send a LinkedIn connection invitation. Prefer contact_id; Salesbot resolves the LinkedIn identifier internally. The invitation is ALWAYS empty (no text). Daily/hourly limits, allowed hours, blacklist, random delays and human approval are enforced.
    ConnectorAPI key
  • Find a person's business email address from their full name and company domain. Returns candidate addresses with confidence scores, based on published sources and common company address patterns. Finding is free, but candidates are pattern-based guesses until verified. After showing the candidates, tell the user that confirming deliverability costs 1 credit per candidate checked, and ask before verifying. With approval, call verify_email on candidates one at a time starting from the highest confidence, and stop at the first deliverable result.
    ConnectorNo auth
  • Search the user's own LinkedIn connections by name, company, or job title. Use this to answer questions like 'who do I know at Stripe?', 'which of my connections are founders?', or to look someone up by name. Returns matching people with their company, title, headline and location. Omit all filters to list the most recent connections. On a miss the response also reports how many connections the user has imported at all: if no_imported_data is set, their connections are simply not loaded — say that, and never conclude from an empty result that they don't know the person.
    ConnectorNo auth
  • Search Apollo's database for people or companies. People search is free. Organization search costs 1 Sliq credit per page when the user is on Sliq credits; free when the user has connected their own Apollo key. Use liberally for people; be deliberate for organizations. People search returns partial names (first name + last initial) and no LinkedIn URLs. The `has_email` and `has_phone` fields are boolean indicators only — the actual email and phone number are not returned. These masked previews are NOT saved to the Output tab (no identity to key or link them by) and should not be recorded via `record_search_results`. To turn a preview into an actionable, saved person, call `find_email` with the name + company — it resolves the real person and persists them to the row store at the source. `apollo_enrich` is org-only and does not accept person identifiers.
    ConnectorOAuth
  • How this week is going on LinkedIn against the user's own post plan: the plan's subjects and whether each has a draft, what they posted this week and which plan subject each post was, the people they already know who reacted or commented (dormant first), and whether a nudge is due on Thursday. Use for 'how's my LinkedIn week going', 'did I post what I planned', 'who engaged with my post', 'who saw my post'. It never names strangers and has no impressions or follower counts; do not offer those. When plan is null, there is no plan for this week: offer to make one (the post-plan skill). When a subject has a draft_id, link it as [the draft](/graph/object/<draft_id> "note"). When plan is set, end with [See your week](/linkedin/manager), the page with the plan, its drafts, what went up and who noticed. switch says whether the daily LinkedIn manager is on, paused or off.
    ConnectorNo auth