[build-system] requires = ["setuptools>=68.0", "wheel"] build-backend = "setuptools.build_meta" [project] name = "pbi-cli" version = "0.1.0" description = "CLI for Power BI semantic models - wraps the Power BI MCP server for token-efficient AI agent usage" readme = "README.md" license = {text = "MIT"} requires-python = ">=3.10" authors = [ {name = "pbi-cli contributors"}, ] keywords = ["power-bi", "cli", "mcp", "semantic-model", "dax", "claude-code"] classifiers = [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Database", "Topic :: Software Development :: Libraries", ] dependencies = [ "click>=8.0.0", "mcp>=1.20.0", "rich>=13.0.0", "httpx>=0.24.0", "prompt-toolkit>=3.0.0", ] [project.scripts] pbi = "pbi_cli.main:cli" [project.urls] Homepage = "https://github.com/pbi-cli/pbi-cli" Repository = "https://github.com/pbi-cli/pbi-cli" Issues = "https://github.com/pbi-cli/pbi-cli/issues" [project.optional-dependencies] dev = [ "pytest>=7.0", "pytest-cov>=4.0", "pytest-asyncio>=0.21", "ruff>=0.4.0", "mypy>=1.10", ] [tool.setuptools.packages.find] where = ["src"] [tool.ruff] target-version = "py310" line-length = 100 [tool.ruff.lint] select = ["E", "F", "I", "N", "W", "UP"] [tool.pytest.ini_options] testpaths = ["tests"] markers = [ "e2e: end-to-end tests requiring real Power BI binary", ] [tool.mypy] python_version = "3.10" strict = true