Power BI MCP服务器
通过模型上下文协议 (MCP) 实时集成 Power BI Desktop 解决方案
描述
此 MCP 服务器允许 Claude Code Assistant 自主使用 Power BI Desktop项目 实时实时使用TOM(表对象模型)技术,可以创建DAX测量,计算列,表关系和直接在打开的.pbix文件中管理模型结构。
函数
🎯 实时桌面集成工具
- connect_to_desktoprealtime() 通过 TOM 连接到 Power BI Desktop
- create_measure_realtime() - 直接在模型中创建DAX测量
- 创建_计算_列_实时() -Sukurti计算柱实时
- create_rerelationship_realtime() -Sukurti表关系实时
- get_desktop_model_info() - 获取模型元数据和结构
- execute_dax_desktoprealtime() 在桌面模型中运行 DAX 查询
- discover_desktop_instances() -Aptikti Power BI桌面程序与XMLA端点
🔗 Power BI服务API工具
- connect_to_powerbi() 连接到 Power BI 服务
- execute_dax_query_tool() - 通过REST API运行DAX查询
- refresh_dataset_tool() 更新数据集
- connectxmla_端点() 连接到 XMLA 端点
- execute_xmla_query_tool() 执行 XMLA 查询
- list_workspace_content() 获取工作空间内容
🧮 DAX优化工具
- optimize_daxformula() - 优化DAX公式
- generate_timeintelligence_measures() 生成时间智能测量集
📊 资源(Resources)
- powerbi://status - 完整的MCP服务器和桌面集成状态
- powerbi://workspaces 所有 Power BI 工作区列表
- powerbi://datasets - 数据集列表
- powerbi://reports 报告列表
📝 提示(萨布拉奈)
- 分析业务需求() 业务需求分析和 Power BI 架构建议
- create_dax_best_pactics() DAX最佳实践指南
🚀 安装
1.知识库kloniranje
git clone https://github.com/roqusanalytics/power-bi-mcp.git
cd power-bi-mcp2. 建立依赖性
# Pagrindinės priklausomybės (visos platformos)
pip install -r requirements.txt
# Arba naudojant uv
uv sync3. 安装Windows特殊依赖关系(TOM集成)
# Windows aplinkoje (reikalinga real-time Desktop integration)
pip install pythonnet>=3.0.1 pywin32>=306 comtypes>=1.2.0
# Arba su uv
uv sync --extra windows4. 环境配置
# Nukopijuoti .env failą
cp .env.example .env
# Redaguoti .env failą su savo Azure AD kredencialais
nano .env💻 使用
1. 服务器启动
# Tiesioginis paleidimas
python src/power_bi_mcp/server.py
# Arba su uv
uv run python src/power_bi_mcp/server.py2.MCP检查员testavimas
# Testuoti serverio veikimą su MCP Inspector
npx @modelcontextprotocol/inspector python src/power_bi_mcp/server.py3. Claude 桌面配置
添加到 claude_desktop_config.json:
{
"mcpServers": {
"power-bi": {
"command": "python",
"args": [
"path/to/power-bi-mcp/src/power_bi_mcp/server.py"
],
"cwd": "path/to/power-bi-mcp",
"env": {
"PYTHONPATH": "path/to/power-bi-mcp/src"
}
}
}
}📋 使用范例
🎯 实时桌面集成
// Prisijungti prie Power BI Desktop
Prisijunk prie Power BI Desktop real-time modelio valdymui
// Sukurti DAX measure real-time
Sukurk DAX measure "Total Sales" lentelėje "Sales" su formule SUM(Sales[Amount])
// Sukurti calculated column
Sukurk calculated column "Profit Margin" lentelėje Sales su formule DIVIDE([Profit], [Revenue], 0)
// Sukurti table relationship
Sukurk ryšį tarp Sales[CustomerID] ir Customers[CustomerID] stulpelių
// Gauti modelio informaciją
Parodyk Power BI Desktop modelio metadata ir struktūrą🔗 Power BI服务集成
// Prisijungti prie Power BI Service
Prisijunk prie Power BI Service su Azure AD
// Vykdyti DAX užklausą
Vykdyk DAX užklausą: EVALUATE SUMMARIZE(Sales, Products[Category], "Total", SUM(Sales[Amount]))
// Atnaujinti dataset
Atnaujink duomenų rinkinį su ID: abc123-def456-ghi789🧮 DAX优化
// Optimizuoti DAX formulę
Optimizuok šią DAX formulę: SUMX(FILTER(Sales, Sales[Year] = 2024), Sales[Amount])
// Generuoti Time Intelligence measures
Sugeneruok time intelligence measures rinkinį "Revenue" measure su prefiksu "Sales"🖥️ 支持的平台
Windows(推荐)
- ✅ 全功能 su Power BI桌面TOM集成
- ✅ 实时模型修改 每。NET分析服务
- ✅ XMLA端点发现 红外自动连接
- ✅ 外部工具注册 Power BI桌面功能区
- ✅ 过程检测 红外端口扫描
Linux/WSL
- ✅ 电力BI服务API 整合
- ✅ DAX优化工具
- ✅ 业务分析 红外报告
- ❌ 实时桌面集成 (仅限Windows)
- ⚠️ 模拟模式 测试 和 开发
🔧 技术
TOM(表格对象模型)集成
- pythonnet - .NET CLR集成Python应用程序
- 微软。分析服务。表格 -API实时模型操作
- XMLA发现 -自动Power BI桌面进程红外端口检测
- 跨平台兼容性 -当仅Windows功能不可用时,优雅的回退
电力BI服务API
- Azure身份 -Azure AD身份验证su服务主体
- REST API -Power BI服务端点集成
- XMLA端点 -高级工作区连接
- DAX查询执行 -两者都支持桌面服务
🎯 主要成就
✅ 实时Power BI桌面集成 根据TOM API\ ✅ 自动进程发现 ir XMLA端点检测\ ✅ 跨平台兼容性 su优雅的Windows/Linux回退\ ✅ 全面的DAX工具 优化ir最佳实践\ ✅ Power BI服务API集成 su Azure AD身份验证\ ✅ 外部工具支持 Power BI桌面功能区集成\ ✅ 业务需求分析 ir架构建议
📝 许可证
Sukurta Claude代码助理项目。模型上下文协议(MCP)集成。
🤝 支持
- MCP文件: https://modelcontextprotocol.io
- Power BI REST API: https://docs.microsoft.com/power-bi/developer/
- 分析服务文档: https://docs.microsoft.com/analysis-services/
- 问题: GitHub存储库问题部分
