Yesterday I built a marketing dashboard with Claude, an MCP I created myself and the open API of a CTI platform that generates a huge volume of data every month. I like the result more, and it took less effort, than any dashboard I’ve built in Power BI. Here’s how I approached it in case it’s useful.
What I built
The core piece is my own MCP: a small server that exposes the CTI platform’s data to Claude through its open API. From there, Claude can query the information directly, with no CSV exports or intermediate models. I added the other pieces the dashboard needed to make sense: the full funnel and budget tracking, so everything could be cross-referenced in one place.
That last part matters. The dashboard is good because it has all the information it needs, not because an AI built it. Without the funnel and the budget, it would have been just another activity report.
Why it was easier than Power BI for me
In Power BI the heavy lifting happens before the chart: connecting sources, transforming, modelling relationships, writing measures. It’s a solid method, but it’s slow when the data is large and keeps changing. With the MCP, the data-access layer is built once, and then you ask for and tweak the dashboard in plain language: «show me this by channel», «cross this with the budget», «drop this metric and add that one».
This is my experience with one specific case, not a universal rule. But it changed how I think about the work: I used to spend my time preparing data, now I spend it deciding what I want to see.
How to approach it, step by step
- Start with the decisions. What will you decide with the dashboard: moving budget, pausing campaigns, reviewing lead follow-up? If a metric doesn’t change any decision, keep it off the main page.
- Check which sources have an API. If the platform offers an open API, you’re halfway there. Note what data it exposes and what you actually need.
- Build an MCP with narrow tools. A few read-only tools with clear names beat an open door to everything.
- Write your metric definitions down. What a lead is, an opportunity, a cost. Claude will calculate whatever you ask, so the definition has to be clear first.
- Cross funnel and budget. That’s where the dashboard stops being descriptive and starts helping you decide.
- Validate the numbers against the source. Check a couple of totals by hand before showing it to anyone.
Which KPIs to include
With funnel and budget in the same view, this is the baseline I’d use. You’ll need to adapt it to your business:
| KPI | Decision it informs | What to agree beforehand |
|---|---|---|
| Stage-to-stage funnel conversion | Where are leads being lost? | Definition of each stage, shared with sales |
| Cost per opportunity | Where do we invest more or less? | Which costs are included |
| Spend vs budget | Are we off track? | Period and allocation criteria |
| Contact volume and outcomes | Are we handling and converting well? | What counts as an effective contact |
What to watch out for
Your own MCP doesn’t remove the usual questions, it just moves them. I’d keep an eye on three: who has access to which data (especially if there’s personal data), how the MCP is maintained if the API changes, and how the result is shared with the rest of the team. For me it’s worth it, but go in with your eyes open.
FAQ
What is an MCP and what does it do for a dashboard?
It’s an open protocol for connecting an AI like Claude to data sources and tools. In a dashboard, it lets Claude query your platforms’ APIs directly.
Do I need to code to build an MCP?
Basic API knowledge helps. Claude can help you write it, but you should understand what data it exposes and with which permissions.
Does this replace Power BI?
In my case it was better and simpler. Every team has its own data-governance and distribution needs, so the best move is to try it on a narrow use case.
If you’ve built something similar, or your team does it differently, I’d love to hear about it in the comments or through the contact page.