Factory Labs is one of the only CRMs that treats Databricks as a first-class data peer rather than a sync target. The integration runs in both directions: the Factory Assistant queries your Databricks lakehouse live via the Model Context Protocol (MCP), and Factory's own data is exposed back to Databricks as governed Delta tables in Unity Catalog. No Fivetran, no Airbyte, no scheduled connector.
What we support
The Factory Labs Databricks integration covers:
- Databricks SQL Warehouses. Both Serverless and Classic.
- Unity Catalog. Factory tables appear as governed objects in your catalog.
- Genie Spaces. Databricks's MCP server for AI-driven SQL on top of curated Genie spaces.
- Databricks Vector Search. Federated semantic search for CRM content + lakehouse content.
- Mosaic AI. As an MCP client, Mosaic AI can drive Factory CRM with the same guardrails as a human user.
What the integration does
Three distinct surfaces, all live, no copies:
1. Federated read via MCP (Databricks Genie β Factory Assistant)
The Factory Assistant is an MCP client. When a user asks a question that requires lakehouse data ("what is the lifetime gross margin by account in the Cleveland territory"), the Assistant calls the Databricks Genie MCP server with a generated SQL query, runs it federated, and renders the result inline in the CRM. No pre-built integration per question; the lakehouse is a generic tool.
See the MCP bridge documentation for the protocol details.
2. Outbound Delta Sharing (Factory CRM β Databricks Unity Catalog)
Factory exposes its records (Accounts, Contacts, Opportunities, Activities, Conversations, Cases) as Delta tables via the Delta Sharing protocol. The Databricks side mounts the share as a foreign catalog in Unity Catalog. Your data engineering, science, and BI teams query the CRM data with native Databricks tools as if it were any other table.
No connector to install. No schedule to operate. No per-record extraction fee.
See Delta Sharing documentation for the share configuration.
3. Federated vector search
Factory CRM content is embedded into Databricks Vector Search alongside your lakehouse content. The Assistant performs semantic search across both surfaces in a single query, returning matched chunks ranked by relevance. The vector indexes live in Databricks; Factory does not maintain a separate embedding store.
See federated vector search documentation.
4. Outbound MCP server (Databricks β Factory CRM as a tool)
The Factory CRM exposes its own MCP server, so Mosaic AI agents, Databricks Genie, or any other Databricks-hosted MCP client can drive the CRM as a tool with the same guardrails as a logged-in user. Useful for cross-team workflows where the analytics team builds a Databricks workflow that needs to write back to the CRM.
How it works
Architecturally:
- MCP outbound from Factory. The Assistant's tool catalog includes the Databricks Genie server. Queries pass through Factory's guardrail layer (column allow-list, row-filter SQL, LIMIT clamp, payload size caps) before execution.
- Delta Sharing outbound. Factory's data plane writes CRM facts to Delta tables in a per-tenant share. The Databricks side authenticates with a share-specific bearer token and mounts the catalog.
- Encryption. All Delta Sharing reads are AES-256-GCM encrypted at rest with per-tenant HKDF-derived keys. The credential the customer holds is a share-scoped token; revoking it kills access without affecting other shares.
- Vector Search. Embeddings are computed by Mosaic AI's embedding endpoint (or your choice of compatible model) and stored in your Databricks workspace, not in Factory.
How to set it up
For federated read (MCP):
- Enable Databricks Genie. Standard Databricks Genie configuration; create a Genie space pointing at the curated tables you want the Assistant to query.
- Register the Genie MCP server in Factory. Settings β Integrations β MCP β Add Server. Paste the Genie MCP endpoint and bearer token.
- Test. Use the Assistant to ask a question that requires lakehouse data; verify the SQL runs and results render.
For outbound Delta Sharing:
- Generate a share in Factory. Settings β Integrations β Lakehouse β Delta Sharing β New Share. Pick the entities to share.
- Get the share credential. Factory returns a
config.sharefile (Delta Sharing standard). - Mount the share in Databricks. Use the Delta Sharing connector (
CREATE FOREIGN CATALOG ... USING DELTA_SHARING). Or via Unity Catalog UI: Add data β Delta Sharing β upload the config. - Verify.
SELECT * FROM factorylabs_share.accounts LIMIT 10.
End to end: 30 minutes for the MCP side, 30-60 minutes for Delta Sharing depending on Databricks workspace permissions.
What this means for your team
- Sales reps ask the Assistant questions like "what is the propensity score for this account?" and get an answer pulled live from the Databricks model registry, no manual handoff.
- Data engineers stop building CRM-to-warehouse pipelines. The data appears in Unity Catalog.
- Data scientists train models on CRM data directly through Unity Catalog, no extracts.
- BI teams build Lakeview dashboards on the CRM data without operating a connector.
Pricing notes
The Databricks integration is part of Factory Labs Growth ($45/user/month) and up. There is no per-query fee, no per-row Delta Sharing fee, no per-embedding fee from Factory's side.
Databricks itself charges for the SQL Warehouse compute used by federated queries and for the Vector Search workload. Factory surfaces per-query cost estimates so teams can manage spend; per-tenant budget caps are configurable.
For comparison: a typical Fivetran-to-Snowflake-or-Databricks setup for CRM data runs $1,000-3,000/month at distributor data volumes. Factory's outbound Delta Sharing replaces that line item entirely.
Frequently asked questions
Do we need Unity Catalog? Strongly recommended but not required. Factory's Delta Sharing works against any Delta-compatible consumer (Databricks with or without UC, DuckDB, Trino, Apache Spark). Unity Catalog gives you the governance and discovery story that makes the integration genuinely useful at scale.
Does the Assistant write SQL we can audit? Yes. Every Assistant-generated query is logged with the user, the prompt, the generated SQL, the row count, and the cost estimate. The audit log is exposed via the standard Factory audit API and is itself Delta Sharing exportable.
Can the Assistant write data to Databricks? By default no; the gateway enforces single-SELECT execution and rejects INSERT / UPDATE / DELETE / DDL. Write-back is possible through a separate, explicitly-configured MCP tool with a different auth scope.
What about the Databricks SQL connector for Tableau / Looker? Independent. Factory's CRM data shows up in Unity Catalog; downstream BI tools use whatever Databricks connector you already have configured.
How does the integration handle PII? Per-tenant HKDF-derived encryption keys, column allow-list at share creation time, row-filter SQL for fine-grained access control. The Lakehouse governance docs cover the security model in detail.
Related reading
- What is a Lakehouse-Native CRM?: the definition and architecture.
- What a Lakehouse-Native CRM Actually Means: the long-form essay on the two architectural decisions.
- Lakehouse module: the product page.
- MCP bridge documentation: protocol details.
- Delta Sharing documentation: share configuration.