[build-system] requires = ["setuptools>=83.0.0", "wheel"] build-backend = "setuptools.build_meta" [project] name = "searxng-mcp" version = "0.2.0" description = "Fast, token-efficient MCP server for SearXNG with stdio and streamable-http transports" readme = "README.md" requires-python = ">=3.11" license = "LicenseRef-FSL-1.1-ALv2" license-files = ["LICENSE"] authors = [{ name = "88plug", email = "andrew@88plug.com" }] keywords = [ "mcp", "model-context-protocol", "searxng", "search", "uvx", "self-hosted", "docker", ] classifiers = [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "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 :: WWW/HTTP :: Dynamic Content :: Search Engine", "Topic :: Software Development :: Libraries :: Python Modules", "Typing :: Typed", ] urls = { Homepage = "https://github.com/88plug/searxng-mcp", Repository = "https://github.com/88plug/searxng-mcp", Documentation = "https://88plug.github.io/searxng-mcp", Changelog = "https://github.com/88plug/searxng-mcp/blob/main/CHANGELOG.md", Issues = "https://github.com/88plug/searxng-mcp/issues" } dependencies = [ "mcp>=1.28.0,<2", "httpx[http2]>=0.28.1", "beautifulsoup4>=4.15.0", "lxml>=6.1.1", "diskcache>=5.6.3", "orjson>=3.11.9", "pdfminer.six>=20250506", "playwright>=1.61.0", "tiktoken>=0.13.0", "uvicorn>=0.51.0", ] [project.optional-dependencies] render = [ "playwright>=1.61.0", ] [project.scripts] searxng-mcp = "searxng_mcp.__main__:main" searxng-mcp-bench = "searxng_mcp.bench:main" [tool.setuptools] package-dir = { "" = "src" } [dependency-groups] dev = [ "mkdocs>=1.6.1", "mkdocs-material>=9.5", "pytest>=9.1.1", "pytest-asyncio>=1.4.0", ] [tool.setuptools.packages.find] where = ["src"]