By Source · Salesforce

Salesforce + Connect AI

Query Salesforce objects from any AI agent or application. Connect AI handles OAuth, SOQL translation, schema discovery, and rate-limit backoff.

Use with Claude · Use with OpenAI

Common objects:
Account Contact Opportunity Lead Case User Task Custom__c + 200 more
-- Ask Claude Code (or any MCP-aware agent):
--
-- "In Salesforce, list the top 25 Healthcare accounts by annual
-- revenue, with a count of their open opportunities."
--
-- Claude generates and runs this SQL via the queryData MCP tool.
-- Standard SQL -- translated to SOQL transparently.

SELECT
  a.Name,
  a.AnnualRevenue,
  COUNT(o.Id) AS open_opps
FROM [Salesforce].[Salesforce].[Account] a
LEFT JOIN [Salesforce].[Salesforce].[Opportunity] o
  ON o.AccountId = a.Id
  AND o.StageName != 'Closed Won'
WHERE a.Industry = 'Healthcare'
GROUP BY a.Name, a.AnnualRevenue
ORDER BY a.AnnualRevenue DESC
LIMIT 25

Tutorials by AI surface

Working integrations for Salesforce + every supported AI surface.

Salesforce + Claude Agent SDK Build a stateful Python agent that researches accounts and drafts outreach grounded in pipeline data.
30 min · Python · MCP
Salesforce + OpenAI SDK OpenAI Python SDK data assistant for CRM queries, pipeline summaries, and outreach drafting.
20 min · Python
Salesforce + LangGraph Customer-health-scoring graph that pulls from Salesforce + product usage data.
60 min · OSS
Salesforce + CrewAI Multi-agent crew for account research, with one agent per data dimension.
60 min
Salesforce + LlamaIndex RAG patterns that combine Salesforce records with unstructured knowledge bases.
45 min

Known quirks

Things that are easy to miss the first time you connect Salesforce to an agent.

Bulk vs. REST

Queries returning more than 2,000 rows automatically route through the Bulk API, which is asynchronous. Agent prompts that expect immediate results need to either chunk queries with LIMIT or handle the async polling pattern explicitly.

Custom objects

Custom objects appear as Salesforce.YourObject__c. Connect AI auto-discovers them on each connection, but newly added custom objects may take up to 10 minutes to appear in getCatalogs output.

Identity passthrough

For row-level security, configure per-user OAuth on the Connect AI connection. Without it, the agent runs under the connection-owner’s identity and may surface records the requesting user shouldn’t see.

Field-level permissions

Salesforce field-level security is honored by Connect AI. If an agent queries a field the connection identity can’t read, the field is returned as NULL rather than raising, which can silently degrade agent reasoning. Log query results during development.

Existing tutorials

Long-form recipes from the CData Knowledge Base.

View tutorials
Connect AI documentation

Full API reference, authentication guides, and configuration details.

View docs