[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "quickbooks-mcp" version = "0.1.1" description = "MCP server connecting Claude Desktop/Code to QuickBooks Online for natural-language accounting queries" readme = "README.md" license = "MIT" requires-python = ">=3.10" authors = [ { name = "NyxTools" }, ] keywords = [ "mcp", "quickbooks", "accounting", "claude", "ai", "bookkeeping", "invoices", "expenses", ] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: End Users/Desktop", "Intended Audience :: Financial and Insurance Industry", "License :: OSI Approved :: MIT License", "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 :: Office/Business :: Financial :: Accounting", "Typing :: Typed", ] dependencies = [ "mcp>=1.0.0", "httpx>=0.25.0", "pydantic>=2.0.0", "cryptography>=41.0.0", ] [project.optional-dependencies] dev = [ "pytest>=7.0.0", "pytest-asyncio>=0.21.0", "pytest-cov>=4.0.0", "respx>=0.20.0", "ruff>=0.1.0", "mypy>=1.0.0", ] [project.scripts] quickbooks-mcp = "quickbooks_mcp.__main__:main" [project.urls] Homepage = "https://github.com/NyxToolsDev/quickbooks-mcp-server" Documentation = "https://github.com/NyxToolsDev/quickbooks-mcp-server#readme" Repository = "https://github.com/NyxToolsDev/quickbooks-mcp-server" Issues = "https://github.com/NyxToolsDev/quickbooks-mcp-server/issues" [tool.hatch.build.targets.wheel] packages = ["src/quickbooks_mcp"] [tool.pytest.ini_options] testpaths = ["tests"] asyncio_mode = "auto" [tool.ruff] target-version = "py310" line-length = 100 [tool.ruff.lint] select = ["E", "F", "W", "I", "N", "UP", "B", "SIM", "TCH"] [tool.mypy] python_version = "3.10" strict = true warn_return_any = true warn_unused_configs = true