Conversational BI
Using MCP Servers
Stewart Hunter · SQLBits 2026 · ICC Wales
About Me
  • BI Lead At Arnold Clark — UK's Largest Automotive Dealership
  • 10 years there building the BI Platform
  • Data / Analytics / BI Professional
Today's Presentation
  • MCP Servers — what are they?
  • Why use them?
  • How can they integrate with Fabric / Power BI / your estate?
  • Getting started
The Evolution of BI / Self Serve Tools
Excel1985
OLAP (SSAS)1998
Reporting Services2004
Power BI2015
AI / LLMs2023
  • New BI tools appear periodically
  • These have all helped us develop, as well as self serve
  • We have a new tool: AI (you may have heard)
Self Serve
  • Bridging the gap between questions and answers
  • Giving users new options for exploration
The
Self-Service Idea
  • The business has lots of questions
  • Self-service lets them answer questions themselves
The
Reality
  • Complex models are difficult for non-technical users
  • Unable to ask a direct question and get an answer
  • Requests to the Data / BI / Analytics team
  • Report sprawl
Conversational BI For Self Serve
  • New possibilities with AI
  • Users can ask natural language questions to their data
  • They can ask for data, reports, how reports work, etc.
  • What are our options for getting there?
Current Options
  • Microsoft have already given us some great options for "speaking to our data"
Copilot
  • Can talk to your data
  • Can ask questions about Reports, Datasets, Workspaces
  • Set up Q&As, create synonyms, etc.
Data Agents
  • Customisable — define what the agent does
  • Still not as customisable as MCPs
Microsoft's Options
It just works.
Pros
  • Microsoft have set up the infrastructure
  • Things are easily plugged in
  • Security works (Dataset Security, RLS)
  • Data is secure
  • IT kept happy
  • Quick to get started
Cons
  • Extendable to the point MS allows you to configure
  • Safety guardrails installed
  • Designed for predictability over flexibility
  • Responses can feel structured and predictable rather than conversational
Demos
Example Model — Star Autos
Fictional Car Sales Company
15
dealers across the UK
75
Product Consultants
Synthetically generated data: Sales, Complaints, Stock
Demo 1
  • Copilot with Data Agents
  • Asking some standard questions and exploring capabilities
Demo screenshot: Data Agent example
Other Options?
  • Can we build this functionality using other tools?
MCP:
Model
Context
Protocol
MCP Servers — Another Option
  • What do MCP Servers give us?
  • More options for extending
Conceptually
  • AI / LLMs has its own "world"
  • Can't know about your data, your report catalogue, etc.
  • Can't talk to you about those things
  • We need a bridge: MCP
  • Connects AI to tools
Background
  • Originally Created by Anthropic
  • Open Source
  • Community Driven
  • LLM Agnostic
  • Adopted by Microsoft, OpenAI, Google,…
AI / LLM "Knowledge"
⟷
MCP
⟷
Extra Context
Demo 2
  • Using Claude as our AI via an MCP
What Happened Here?
Question (Claude Desktop)
↓
Can I answer this with my existing knowledge?
↓
Do I have an MCP that can help answer this?
↕
Power BI MCP
Answer (Claude Desktop)
↕
Power BI (Service / Online)
MCP Tools For This Scenario
  • list_workspaces—what workspaces tell me about Star Autos?
  • list_datasets—what datasets can I use to answer this?
  • get_model_definition—what is in this dataset?
  • execute_dax_query—run the query that gives me the answer
What Made This Possible
  • Fabric CLI changes
Demo 3 — What else can we do?
  • Electric Vehicles Conversation
Demo screenshot: Electric Vehicles conversation
The End Of Reports and Dashboards?
  • Of course not
  • It's enrichment, not replacement
Users Still Need
Dashboards & Reports
  • Familiar curated views
  • Data in 3 seconds
  • Defined scorecards, targets, etc.
  • Deep dive analysis — e.g. individual orders
When to Use AI
  • Quick "random" questions
  • Exploratory analysis for non-technical users
  • If we want to use data outside of our model
  • Navigation and discoverability
Potential Business User Flow

How might users actually use this?

01User Question
→
02Conversational Answer
→
03More Conversation
→
04Link To Report / Details etc
Potential Business User Flow

How might users actually use this?

01Report Request via AI
→
02Report & Conversational Answer
→
03More Conversation
→
04Link To Report / Details etc
Other Scenarios / Uses
Creating Reports — Self Serve In Action
Demo 4 — Vibe Report Creation
  • Task: Create a Balanced Scorecard containing specific metrics and make it changeable
Demo screenshot: Balanced Scorecard
Demo
Demo 5 — Saving Reports
  • What if we want to come back to reports or analytics we've done?
MCP Setup
Setup
  • Fabric Connection Exists
  • Lakehouse Is Available
  • Save "Analytics Store" entries to Fabric
AI / LLM
→
MCP
→
Semantic Model
→
Lakehouse
The Analytics Store
Saving Reports
  • Options to save different types of things: high-level DAX, rendering spec, description
  • Full Report in HTML format
  • DAX queries for filters, etc. saved
  • Uses MSAL Authentication — queries quickly
  • Investigation: higher level combination of text and visuals
Some Report Examples..
Orders Against Weather
  • Task: Does a change in weather make a difference to orders created?
  • Get weather data (external)
  • Ask for a comparison of Weather Data vs Sales Data
Demo screenshot: Orders against weather
Demo screenshot: Orders against weather
Map — Dark Mode
  • Make a report — ambitious snazzy dark map
  • On branch filter: zooms in on the location
  • PC list animates in with "spy movie" character-by-character text effect
  • Table overlaid on map, branch dot positions left of map
Demo screenshot: dark mode map
Demo screenshot: dark mode map
Demo screenshot: dark mode map
Artifacts In Claude
More Vibing
New Claude Cowork Capabilities
  • As of this week
  • Create a report as an artifact in Cowork in Claude
  • HTML styled report
  • Live connection to the Power BI Semantic Model
  • Use profiler to see the queries running live
Demo screenshot: Cowork artifact
Demo screenshot: profiler queries
What about Power BI?
Back To Reality Vibing
Demo 6 — Power BI AI Generated Reports
  • Taking the HTML reports as designs for Power BI
  • Creating Power BI versions with a Power BI Report Creation MCP
Demo screenshot: Power BI AI generated report
Demo screenshot: Power BI AI generated report
Demo screenshot: Power BI AI generated report
Report Creation — New Ways Of Working
  • New method for creating reports: text prompts
  • Chity-Chatty Typey-Talky Data Analysis
  • Part of the evolution of the OS
How do we build MCPs?
What We Need
  • VS Code as a development environment
  • The server is made up of Python files — various packages used
  • We set up the MCP in natural language in a JSON file
  • Similar to Data Agents — you don't need to be a developer
VS Code Demo

We need:

  • A Server File — Python file defining the server (server.py)
  • A JSON file — tells VS Code what the server is (mcp.json)
Files Required
  • server.py — defines the server tools and logic
  • mcp.json — registers the server with VS Code
Demo screenshot: VS Code MCP server
Demo screenshot: VS Code MCP server
MCP Other Scenarios / Uses
Options for other extensions using MCPs
Development Tools
  • Create / edit notebooks
  • Edit Semantic Models (see Microsoft's MCP tool)
  • Change measure used in reports (.pbir files)
  • SQL related tasks
Business Uses
  • Report documentation — conversational documentation
  • Defining priorities
  • Jira / ticketing updates
  • Creating reports
Our Context
What does this mean for us?
User Expectations
  • AI is here
  • Conversational experiences becoming the norm
  • Data and Analytics is no different
  • How does it fit in? Dashboards & reports remain; Conversational BI a new tool
Changes for us
  • AI is not coming for our jobs
  • Our jobs are changing
  • Centrally defined measures and semantic models are essential for this to work well
  • Documentation, clean well labelled semantic models are more important than ever
  • A new mindset
Where are we
  • Still early(ish) days
  • Enterprise adoption needs a lot of plumbing / security
  • Microsoft will most likely have a lot of these options available… sometime
For our roles / work
  • Will this become part of the job?
  • A new role altogether?
  • A specialism in data?
If you haven't already.. Get Started
  • Try out the Microsoft Power BI MCP — query a model (beware where your data is going)
  • You can do this in VS Code
  • Build a simple MCP that's useful for you
  • Change a measure in a .pbir file
  • Set up an MCP that analyses CSV files
  • Great YouTube series from Kurt Buhler to get started
  • Using the MS Docs MCP helped a lot here as well
  • Have fun with it!