[project] name = "mcp-garmin-connect" version = "0.4.0" description = "LLM-agnostic MCP server for Garmin Connect data, with optional provider demo agents." readme = "README.md" requires-python = ">=3.11" license = { text = "MIT" } authors = [{ name = "kavakoss" }] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: End Users/Desktop", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Internet", "Topic :: Software Development :: Libraries", ] keywords = [ "garmin", "mcp", "model-context-protocol", "deepseek", "openai", "claude", "openrouter", "gemini", "fitness", ] dependencies = [ "curl-cffi>=0.7,<1", "garminconnect>=0.3,<1", "httpx>=0.27,<1", "mcp>=1.2,<2", "pydantic>=2,<3", "python-dotenv>=1.0,<2", ] [project.urls] Homepage = "https://github.com/kavakoss/mcp-garmin-connect" Repository = "https://github.com/kavakoss/mcp-garmin-connect" Issues = "https://github.com/kavakoss/mcp-garmin-connect/issues" Changelog = "https://github.com/kavakoss/mcp-garmin-connect/releases" [project.scripts] garmin-mcp = "mcp_garmin_connect.cli:main" mcp-garmin-connect = "mcp_garmin_connect.cli:main" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.uv] package = true [dependency-groups] dev = [ "pytest>=8.0,<9", "pytest-cov>=5.0,<6", "ruff>=0.6,<1", ] [tool.ruff] line-length = 100 target-version = "py311" [tool.ruff.lint] select = ["E", "F", "I", "UP", "B"] [tool.pytest.ini_options] testpaths = ["tests"] addopts = "-q"