[project] name = "ticket-ai-mcp" version = "0.1.1" description = "MCP server and CLI that learns what a good ticket looks like in your tracker, then measures new tickets against it. GitLab, Jira, GitHub." readme = "README.md" requires-python = ">=3.12" license = "MIT" keywords = [ "mcp", "mcp-server", "model-context-protocol", "gitlab", "jira", "github", "issue-tracker", "issues", "backlog", "triage", "ticket-quality", "project-management", "claude", "ai", "llm", "developer-tools", ] classifiers = [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Developers", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Software Development :: Quality Assurance", "Typing :: Typed", ] dependencies = [ "mcp[cli]>=2.1.1", "httpx>=0.28", ] [project.scripts] ticket-ai = "ticket_ai_mcp.cli:main" ticket-ai-mcp = "ticket_ai_mcp.server:main" [build-system] requires = ["uv_build>=0.12.3,<0.13.0"] build-backend = "uv_build" [dependency-groups] dev = [ "pytest>=9.1.1", "pytest-cov>=7.1.0", "ruff>=0.16.6", ] [tool.pytest.ini_options] testpaths = ["tests"] addopts = "-q --strict-markers" [tool.ruff] line-length = 100 target-version = "py312" [tool.ruff.lint] select = ["E", "F", "W", "I", "UP", "B", "C4", "RET", "RUF"] ignore = ["E501"]