[project] name = "mcp-brasil" version = "0.14.0" description = "MCP servers para APIs públicas brasileiras" readme = "README.md" license = "MIT" requires-python = ">=3.10" authors = [{ name = "mcp-brasil contributors" }] keywords = [ "mcp", "brasil", "brazil", "government", "api", "fastmcp", "ai", "llm", "claude", "opendata", "dados-abertos", "ibge", "bacen", "transparencia", "legislacao", "model-context-protocol", "agent", "async", ] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Natural Language :: Portuguese (Brazilian)", "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 :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Scientific/Engineering :: Information Analysis", "Typing :: Typed", ] dependencies = [ "fastmcp[code-mode]>=3.2.3", "httpx>=0.27", "pydantic>=2.0", "python-dotenv>=1.0", "anthropic>=0.40", "beautifulsoup4>=4.12", "lxml>=5.0", "duckdb>=1.1", "openpyxl>=3.1.5", ] [project.optional-dependencies] llm = ["anthropic>=0.40"] code-mode = ["fastmcp[code-mode]"] [dependency-groups] dev = [ "pytest>=8.0", "pytest-asyncio>=0.24", "respx>=0.22", "ruff>=0.8", "mypy>=1.13", "diagrams>=0.24", "playwright>=1.58.0", ] foundry = [ "azure-ai-projects>=2.0.0", "azure-identity>=1.17.0", "openai>=1.0.0", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["src/mcp_brasil"] [tool.ruff] target-version = "py310" line-length = 99 [tool.ruff.lint] select = ["E", "F", "I", "UP", "B", "SIM", "RUF"] [tool.mypy] python_version = "3.10" strict = true warn_return_any = true warn_unused_configs = true [tool.pytest.ini_options] testpaths = ["tests"] asyncio_mode = "auto" # --- Release --- [tool.semantic_release] version_toml = ["pyproject.toml:project.version"] commit_parser = "conventional" allow_zero_version = true major_on_zero = false tag_format = "v{version}" build_command = "uv build" [tool.semantic_release.changelog] changelog_file = "CHANGELOG.md" [tool.semantic_release.remote] type = "github" [tool.semantic_release.remote.token] env = "GH_TOKEN" [tool.semantic_release.publish] upload_to_vcs_release = true dist_glob_patterns = ["dist/*"]