[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "webscraper" dynamic = ["version"] description = "MCP server for web scraping: fetch pages, extract links/tables, sitemap parsing" readme = "README.md" requires-python = ">=3.11" license = "MIT" authors = [{name = "Patrick Plate", email = "patrickplate@gmx.de"}] dependencies = [ "fastmcp>=0.1.0", "httpx>=0.28.0", "beautifulsoup4>=4.14.0", "lxml>=6.0.0", "html2text>=2025.4.15", ] [project.optional-dependencies] test = [ "pytest>=7.0", "pytest-mock>=3.0", "pytest-cov>=4.0", ] [tool.hatch.version] path = "src/__init__.py" [tool.hatch.build.targets.sdist] include = ["/src", "/tests"] [tool.hatch.build.targets.wheel] include = ["/src", "/tests"] packages = ["src/webscraper"] [tool.pytest.ini_options] testpaths = ["tests"] python_files = "test_*.py" python_classes = "Test*" python_functions = "test_*" addopts = "--cov=src --cov-report=term-missing --cov-report=xml"