Integrations

Salesforce data enrichment with Leadsets

Leadsets works with Salesforce through free, open-source skills and its REST API, listed on its integrations page as Skills + API. An AI agent or workflow can backfill verified work emails, refresh titles and seniority, enrich companies and flag stale contacts, with each field showing its source and last-checked date. Plans are flat monthly prices from $29, with 1,000 free records to start.

Salesforce is a customer relationship management (CRM) platform. Leadsets does not replace it: Leadsets is a B2B data API and remote MCP server that feeds people and company data into the tools you already run. The Leadsets integrations page lists Salesforce as Skills + API, meaning the connection runs through free SKILL.md playbooks and the REST API rather than a separately documented Salesforce app.

What Leadsets can do for Salesforce records

According to Leadsets, an agent using its skills and API can backfill missing emails, enrich companies and flag stale records in Salesforce, HubSpot, Pipedrive and Attio. Six of the 50 free skills list Salesforce as a connection. These include:

  • Salesforce title refresh: refreshes titles and seniority on Salesforce contacts and logs every change. Uses enrich_person.
  • Stale record audit: flags contacts whose title or company is out of date before reps waste a sequence on them. Uses enrich_person.
  • Contacts at target accounts: turns an account list into ranked contacts per account, with optional enrichment. Uses search_people and enrich_person.
  • Account tiering: scores an account list against your ICP and sorts it into tiers with reasons. Uses enrich_company and scrape_company.

Every record comes back as structured JSON with match reasons, a verification status for emails, a confidence score and the date each field was last checked, so the agent can decide what is safe to write back. The full list is in the skills library.

How to connect it

The Leadsets docs do not give setup steps specific to Salesforce. What follows is the generic MCP and REST setup the docs describe. How your agent or workflow reads from and writes to Salesforce depends on the access you already give it; Leadsets supplies the data side.

  1. Get a key. Create a free account and copy your API key from the dashboard. Keys start with ls_live_ and should be kept server-side.
  2. Connect an agent over MCP. The server is https://mcp.leadsets.ai, with nothing to install. In Claude on the web or desktop: Customize, Connectors, + Add, Add custom connector, name it Leadsets, paste the URL, click Continue, choose Sign in now, click Add and sign in. It uses OAuth, so there is no key to paste. In Claude Code run claude mcp add --transport http leadsets https://mcp.leadsets.ai. In Cursor, add a server named leadsets with the URL and an Authorization: Bearer ls_live_… header in ~/.cursor/mcp.json. Full steps are in the MCP docs.
  3. Check the connection. Ask the agent "What's my Leadsets usage?" If it calls get_usage and returns your remaining balance, it is connected.
  4. Or call the REST API. Send requests to https://api.leadsets.ai/v1 with your key as a bearer token, from your own code, an n8n HTTP node or a Make HTTP module. TypeScript and Python SDKs are available with npm i @leadsets/sdk and pip install leadsets.
  5. Add a skill. Download a skill folder and upload it in Claude under Settings, Skills, or clone the library with git clone github.com/leadsets/leadsets-skills.
  6. Use CSV when that is simpler. Leadsets supports CSV import and export, and the Bulk enrich a CSV skill enriches a whole file as an async job, checking your limits before each batch. You can then load the results into Salesforce the way your team normally does.

A REST call to find people at an account already in your CRM might look like this:

curl https://api.leadsets.ai/v1/people/search \
 -H "Authorization: Bearer $LEADSETS_KEY" \
 -d '{ "company_domain": ["northwind.co"],
       "seniority": ["vp", "head"],
       "has_verified_email": true,
       "limit": 25 }'

Example: refreshing contacts at Northwind Analytics

Maya Chen runs revenue operations at Northwind Analytics (northwind.co). Her team has about 4,000 Salesforce contacts, and reps keep sequencing people who have changed jobs. She connects Leadsets to Claude, installs the Salesforce title refresh and Stale record audit skills, and asks: "Refresh titles on our Salesforce contacts, flag anyone who changed company, and find verified work emails for contacts with none."

The agent calls get_usage first to plan the run. It then calls enrich_person for each contact, compares the current role and company with what is stored, logs every title change and flags people who moved. For contacts missing an email, enrich_person returns a verified work email when one exists, already checked with no second bill. Catch-all and unknown addresses are kept in a separate list rather than written back as if confirmed.

Plan size matters here. On Solo ($29 a month) the enrichment limit is 1,000 records per five hours and 5,000 per week, so 4,000 contacts would run across at least four windows within the week. On Pro ($99 a month) the limit is 15,000 per five hours, so the same job fits in one window. Details are on the pricing page.

What to watch for

  • Records and requests. A record counts only when data comes back, so an empty result uses none. Every call counts as a request, and the request limit is five times the record allowance. See limits and costs.
  • Windows and weekly limits. Over a five-hour or weekly limit, the API returns 429 with a Retry-After time and the blocked call counts against nothing. Split large backfills or submit an async job.
  • Safe retries. Send an Idempotency-Key on paid calls so a retry never counts records twice.
  • Verification labels. Emails are labelled verified, catch-all, unknown or invalid. Leadsets suggests sending to catch-all at lower volume and treating unknown as unconfirmed; invalid emails are never served as contact emails. Decide which labels your workflow writes into Salesforce. More on the verification waterfall.
  • Standalone verification. Re-checking existing Salesforce emails with verify_email counts toward the enrichment limit.
  • Suppression. If Leadsets tells you a record has been suppressed after an opt-out, its terms require you to stop using it.

What it does not do

  • No phone numbers. Leadsets returns work emails, US personal emails on paid plans, roles and company data. If phone enrichment in your CRM is a priority, another provider is the better fit today.
  • Not a CRM or sending tool. Leadsets feeds Salesforce and your sequencer; it does not store pipeline or send email.
  • No documented Salesforce-specific setup. The site lists Skills + API and does not describe settings inside Salesforce.
  • No scraping on Free. Skills that use scrape_company, such as Account tiering, need scrape units, an add-on on paid plans from $9 for 1,000 units.
  • No SOC 2 report yet. SOC 2 Type I is planned, with a target of Q3 2027. Leadsets runs a GDPR-aligned program and offers a DPA with standard contractual clauses.

Questions and answers

Does Leadsets integrate with Salesforce?

Yes. Leadsets lists Salesforce as Skills + API: free, open-source skills and the REST API let an agent backfill missing emails, enrich companies and flag stale records. The Leadsets docs do not give Salesforce-specific setup steps, so you use the generic MCP or REST setup.

How do I enrich Salesforce contacts with Leadsets?

Connect Leadsets to your agent at https://mcp.leadsets.ai or call the REST API with your key, then use a skill such as Salesforce title refresh or Stale record audit. The agent calls enrich_person for each contact and returns current role, company and a verified work email when one exists. You can also enrich a CSV file and load the results back.

Which Leadsets skills work with Salesforce?

Six of the 50 free skills list Salesforce as a connection, including Salesforce title refresh, Stale record audit, Contacts at target accounts and Account tiering. All skills are MIT licensed and work on the free key, though skills that scrape websites need paid scrape units.

Are emails verified before they go into Salesforce?

Every email Leadsets returns from enrich_person is already verified and labelled verified, catch-all, unknown or invalid with a confidence score. Invalid emails are never served as contact emails. Your workflow decides which labels to write back to Salesforce.

Can Leadsets add phone numbers to Salesforce records?

No. Leadsets does not offer phone numbers yet and will only add them once sourcing rights and costs are clear. It returns work emails, US personal emails on paid plans, roles and company data.

How much does Salesforce enrichment with Leadsets cost?

Leadsets has a free plan with 1,000 records, one time, with no card. Paid plans are flat monthly prices in USD with no credits: Solo $29, Pro $99, Team $399 and Max $999, each with fair-use limits per five hours and per week.

Connect your agent in two minutes.

1,000 free records. No card. First useful result in minutes.

Get a free API key