[build-system] requires = ["hatchling"] build-backend = "hatchling.build" [project] name = "cygnus-ssh-mcp" version = "1.5.1" description = "MCP server for SSH remote server management" readme = "README.md" license = "GPL-3.0-or-later" requires-python = ">=3.10" authors = [{ name = "Cygnus Systems" }] keywords = ["mcp", "ssh", "claude", "anthropic", "remote", "server", "automation"] classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Topic :: System :: Systems Administration", "Topic :: System :: Networking", ] dependencies = [ "fastmcp>=2.0.0,<4.0.0", "paramiko>=3.5.0,<4.0.0", "tomlkit>=0.12.0", "pydantic>=2.0.0", ] [project.optional-dependencies] dev = [ "pytest>=8.0.0", "pytest-asyncio>=0.23.0", "python-dotenv>=1.0.0", ] [project.scripts] cygnus-ssh-mcp = "cygnus_ssh_mcp.server:main" [project.urls] Homepage = "https://github.com/cygnussystems/cygnus-ssh-mcp" Repository = "https://github.com/cygnussystems/cygnus-ssh-mcp" Documentation = "https://github.com/cygnussystems/cygnus-ssh-mcp/tree/main/docs" Issues = "https://github.com/cygnussystems/cygnus-ssh-mcp/issues" [tool.hatch.build.targets.wheel] packages = ["src/cygnus_ssh_mcp"] [tool.hatch.build.targets.sdist] include = [ "src/cygnus_ssh_mcp/", "docs/", "README.md", "LICENSE", "pyproject.toml", ] exclude = [ "testing/", "testing_mcp/", "planning/", ".aider*", "CLAUDE.md", "ssh_hosts.toml", ] [tool.pytest.ini_options] asyncio_mode = "auto" asyncio_default_fixture_loop_scope = "function"