12.1 Integrate a Fabric Data Agent
Key Takeaways
- A Microsoft Fabric data agent is a conversational analytics agent that answers natural-language questions over governed OneLake data—lakehouses, warehouses, Power BI semantic models, KQL databases, mirrored databases, and ontologies—using NL2SQL, NL2DAX, and NL2KQL under the user's permissions.
- In Copilot Studio you connect a published Fabric data agent as an external multi-agent collaborator (Agents → Add → Microsoft Fabric), not as a simple file knowledge upload; rich descriptions and generative orchestration control when the parent agent delegates.
- Fabric data agents are read-only: they generate query-style reads, never create/update/delete DML/DDL, and do not answer unstructured PDFs or loose lakehouse files that are not exposed as tables.
- Microsoft Purview policies (DLP, access restrictions, sensitivity, audit) and Fabric permissions continue to apply when the data agent is invoked from Copilot Studio; same-tenant access and authentication mode (user vs agent author) matter for security trimming.
- ALM for data agents includes Git integration, Fabric deployment pipelines, diagnostics, and operational review of instructions/examples—so analytics agent config can promote safely across environments.
12.1 Integrate a Fabric Data Agent
Quick Answer: Build and publish a Microsoft Fabric data agent over OneLake-backed sources (lakehouse, warehouse, semantic model, KQL, and related types), then in Copilot Studio open Agents → Add an agent → Microsoft Fabric, select the connection and published agent, refine the description, choose user or agent author authentication, enable generative orchestration, and test so the parent agent delegates analytics questions while remaining read-only and Purview-governed.
Domain 2 multi-agent collaboration expects you to extend a Copilot Studio agent with specialized peers. One of those peers is the Fabric data agent—Microsoft’s purpose-built conversational analytics component for enterprise data in Fabric. It is not “add a CSV knowledge file.” It is a connected agent that translates natural language into validated queries against governed Fabric data.
What a Fabric data agent is
A Fabric data agent lets business users ask plain-English questions about data stored in Fabric OneLake and related analytics artifacts. Under the covers it uses large language models (via Azure OpenAI Assistant–style agent patterns) to:
- Parse and validate the question against security, responsible AI, and user permissions.
- Identify the best configured data source.
- Invoke the right tool: NL2SQL (lakehouse/warehouse), NL2DAX (Power BI semantic models), NL2KQL (KQL / Eventhouse databases), or Graph-oriented patterns where supported.
- Validate the generated query, execute it read-only, and return human-readable results (often tables, summaries, or key metrics).
| Concept | Exam-ready meaning |
|---|---|
| Role in architecture | Conversational analytics over governed Fabric data |
| Typical sources | Lakehouse tables, warehouse tables, Power BI semantic models, KQL databases (including Eventhouse), mirrored databases, ontologies, Microsoft Graph in Fabric |
| Query styles | NL2SQL, NL2DAX, NL2KQL |
| Access posture | Read-only; least privilege via the requesting user’s credentials |
| Customization | Data agent instructions, example queries, selected tables, up to five data sources per agent |
| Not for | Unstructured .pdf/.docx knowledge, write transactions, triggering notebooks or anomaly jobs |
Exam trap: Do not pick a Fabric data agent when the stem requires create order, update case, or upload policy PDF grounding. Use tools for writes and knowledge sources for document RAG. Use Fabric data agents when the value is live governed metrics and tabular analytics in natural language.
How it differs from Fabric copilots and Copilot Studio knowledge
| Surface | Flexibility | Primary job |
|---|---|---|
| Fabric copilots (in-product) | Preconfigured; limited custom instructions | Help inside Fabric experiences (notebooks, warehouse UI, etc.) |
| Fabric data agent | Highly configurable standalone artifact | Published Q&A system over selected OneLake/semantic sources |
| Copilot Studio knowledge (SharePoint, connectors, Azure AI Search) | Ground generative answers on documents/indexes | RAG-style grounding and citations |
| Fabric data agent connected to Copilot Studio | Multi-agent collaboration | Parent agent delegates analytics tasks to Fabric specialist |
Connecting the data agent to Copilot Studio means the orchestrating agent can combine chat automation, tools, and topics with secure enterprise numbers from Fabric—without rebuilding NL2SQL yourself.
Prerequisites makers and architects must know
Microsoft documents capacity and tenant prerequisites that show up in design scenarios:
- Paid F2+ Fabric capacity (or eligible Premium capacity with Fabric enabled).
- Tenant settings for cross-geo processing/storing for AI when geography requires it.
- At least one populated supported data source with read access for the maker.
- If Purview governs the tenant/workspace, agents must operate inside those policies.
Prerequisites specifically for Copilot Studio consumption
Before the Fabric agent appears in Copilot Studio:
- Validate the data agent answers correctly inside Fabric.
- Publish it with a rich, detailed description (this metadata drives orchestration).
- Keep Fabric and Copilot Studio on the same tenant.
- Sign in to both with an account that can access the data agent.
- Hold read (or better) on the data agent, permission to edit the Copilot Studio agent, and access to underlying sources.
If the list is empty after Add, troubleshoot publish status, tenant, signed-in account, and workspace permissions—not “regenerate the LLM.”
Connect in Copilot Studio (leaf skill steps)
Aligned with Microsoft Learn for connecting a Fabric Data agent:
- Open the main agent in Copilot Studio.
- Go to Agents and select Add an agent.
- Under Connect to an external agent, choose Microsoft Fabric.
- Select an existing Fabric connection or create a new connection.
- Select the published Fabric data agent you can access.
- Adjust the description so the parent agent knows when to call it—especially if descriptions overlap with other tools or agents.
- Confirm the agent appears under connected agents.
- Optionally set authentication to User authentication or Agent author authentication. User auth requires end users to have rights on the data agent and sources.
- Enable generative orchestration so the parent can decide to invoke the connected agent.
- Test, then publish and choose channels. Microsoft notes that a custom agent with a connected Fabric data agent is validated for Microsoft Teams; Microsoft 365 Copilot channel support for this pattern has been limited—know the channel caveat for scenario stems.
Maker responsibility note (Microsoft): When you connect agents outside Copilot Studio, you own reviewing data flow appropriateness, quality/security, permissions/approvals, and observability/human oversight for the composite solution.
Configuring quality inside Fabric (what the specialist agent needs)
Copilot Studio integration only works well if the Fabric side is designed carefully:
| Configuration lever | Why it matters |
|---|---|
| Up to five sources in any combination | Scope the agent to a coherent domain (for example finance models + one warehouse) |
| Select relevant tables only | Reduces wrong-source selection and noisy schemas |
| Lakehouse tables vs files | Agent queries tables, not free-floating CSV/JSON files unless ingested/exposed as tables |
| Data agent instructions | Route “financial metrics” to a semantic model, “raw exploration” to lakehouse, “log analysis” to KQL |
| Example queries | Teach NL→query patterns (sample pairs not currently supported the same way for semantic models) |
| English-first | Non-English is a documented limitation for optimal performance |
Governance intent layers (highest precedence first) keep the agent honest:
- Organizational Purview/tenant policies.
- Role-based workspace and permission boundaries.
- Developer instructions and examples.
- User prompts.
Higher layers override lower ones. Instructions cannot lawfully “bypass read-only” or out-of-scope sources.
Security, Purview, and identity
| Control | Behavior |
|---|---|
| User credentials | Queries run with least privilege for the requester |
| Semantic model access | Read on the model is sufficient for agent queries; Build not required; RLS/CLS still apply |
| Purview DLP (warehouse) | Can detect/restrict sensitive warehouse data |
| Access restriction policies | Can block agent access to sensitive KQL/SQL/warehouse assets |
| Risk, audit, eDiscovery | Agent prompts/responses may be discoverable for compliance teams |
| Outbound access protection | Workspace settings can constrain external endpoints |
| Same-region capacity note | Documented limitation when source workspace capacity region differs from the data agent’s capacity region |
Exam trap: “Publish the agent so everyone can see all rows regardless of RLS” is never correct. Fabric data agents are designed to honor source security and Purview constraints; blocked or truncated answers can be policy working as intended.
ALM and operations for data agents
Fabric data agents support lifecycle practices AB-620 candidates should map to broader Power Platform ALM thinking:
- Diagnostics — inspect question processing and source selection when answers go wrong.
- Git integration — version instructions, examples, and source selections with the Fabric workspace.
- Deployment pipelines — promote agents across development, test, and production workspaces.
- Operational oversight — logging/audit review, human-in-the-loop escalation for high-impact asks, periodic instruction refresh as schemas change.
When the Fabric specialist improves in DEV and is promoted, re-test the Copilot Studio connection and description so orchestration still routes correctly in each environment.
Limitations that power distractors
Memorize these Microsoft-documented boundaries:
- Read-only SQL/DAX/KQL only—no create/update/delete generation.
- No unstructured document Q&A as a primary design.
- Response caps (for example chat outputs summarized/limited—documented row/column caps) make the agent better for insights than dumping full datasets.
- Conversation history may not always persist across service upgrades.
- Cannot change the underlying LLM of the Fabric data agent.
- Sharing a Copilot Studio agent still requires recipients to have read on the Fabric data agent and underlying sources when user authentication is used.
End-to-end scenario
Contoso wants a Teams sales coach agent that can say “What was North America attach rate last quarter?” using the enterprise semantic model, explore raw order lines in a lakehouse, and open a Dynamics opportunity for follow-up. Architects publish a Fabric data agent with the semantic model + lakehouse tables, strong instructions for metric definitions, and example queries for attach rate. In Copilot Studio they add the Fabric agent under Microsoft Fabric, keep user authentication, enable generative orchestration, and attach a Dynamics tool for the write path. The parent agent’s description says it coaches sellers; the connected Fabric agent’s description says it answers published sales metrics and order analytics. AB-620 wants that split: Fabric for governed analytics, tools for transactions, not one overloaded knowledge upload.
Pitfalls checklist
- Treating Fabric data agent as SharePoint/PDF knowledge.
- Expecting writes or notebook triggers.
- Missing publish/description → parent never delegates.
- Cross-tenant or wrong account → empty agent list.
- Ignoring Purview/RLS when answers look “incomplete.”
- Channel assumptions—remember Teams validation guidance and M365 Copilot limitations for this connected pattern.
- Same-region capacity mismatches between sources and the data agent.
Success checklist
- Explain NL2SQL / NL2DAX / NL2KQL read-only analytics.
- Walk Add Microsoft Fabric connection and description hygiene.
- Choose user vs author auth with permission consequences.
- Map Purview + RLS to agent answers.
- Outline Fabric ALM (Git, pipelines, diagnostics).
- Design multi-agent solutions where Fabric owns numbers and Copilot Studio owns conversation + actions.
Master this leaf and you can integrate enterprise conversational analytics into AB-620 multi-agent solutions without confusing Fabric data agents for generic RAG or for write tools.
A Contoso Copilot Studio agent must answer natural-language questions about metrics in a Power BI semantic model and lakehouse tables stored in Fabric. Which multi-agent integration best matches Microsoft guidance?
Which statement correctly describes Fabric data agent query behavior?
A maker cannot see a Fabric data agent when adding Microsoft Fabric in Copilot Studio. What should they verify first?