.env.exampleโข2.76 kB
# Power BI MCP Server Configuration
# Copy this file to .env and fill in your actual values
# ====================
# OPTIONAL: OpenAI Configuration (for natural language features)
# ====================
# Get your API key from https://platform.openai.com/api-keys
# Leave blank to disable GPT-powered features (related endpoints hidden)
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Optional: Change model (defaults to gpt-4o-mini for cost efficiency)
# Options: gpt-4o-mini, gpt-4, gpt-3.5-turbo
OPENAI_MODEL=gpt-4o-mini
# ====================
# OPTIONAL: Default Power BI Credentials
# ====================
# These values are used if the `connect_powerbi` action does not provide
# tenant_id, client_id or client_secret. Only use for local testing.
# Azure AD Tenant ID (from Azure Portal)
DEFAULT_TENANT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
# Service Principal Application (client) ID
DEFAULT_CLIENT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
# Service Principal Client Secret
DEFAULT_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# ====================
# Logging Configuration
# ====================
# Options: DEBUG, INFO, WARNING, ERROR
LOG_LEVEL=INFO
# Optional: Log file location (defaults to current directory)
LOG_FILE=mcp-server-powerbi.log
# ====================
# Performance Settings
# ====================
# Number of tables to load initially (reduce for faster startup)
INITIAL_TABLES_LIMIT=5
# Query timeout in seconds
QUERY_TIMEOUT=30
# Maximum rows to return in sample data
MAX_SAMPLE_ROWS=10
# ====================
# Development Settings
# ====================
# Enable debug mode for verbose output
DEBUG_MODE=false
# Enable performance profiling
ENABLE_PROFILING=false
# ====================
# Integration Testing Configuration
# ====================
# These settings enable real integration tests with Power BI.
# ONLY set these if you want to run integration tests with a real Power BI dataset.
# Leave blank to skip integration tests.
# Enable integration tests (set to "true" to enable)
ENABLE_INTEGRATION_TESTS=false
# Test Power BI Dataset Configuration
TEST_XMLA_ENDPOINT=powerbi://api.powerbi.com/v1.0/myorg/[workspace-name]
TEST_TENANT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
TEST_CLIENT_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
TEST_CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TEST_INITIAL_CATALOG=YourTestDatasetName
# Expected test data configuration (used for validation)
# Table that should exist in your test dataset
TEST_EXPECTED_TABLE=Sales
# Expected column in the test table
TEST_EXPECTED_COLUMN=Amount
# Simple DAX query to test (should return at least one row)
TEST_DAX_QUERY=EVALUATE TOPN(1, Sales)
# Expected minimum number of tables in the dataset
TEST_MIN_TABLES_COUNT=1