[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "a2anet-mcp"
dynamic = ["version"]
description = "An MCP server for the Agent2Agent (A2A) protocol"
readme = "README.md"
requires-python = ">=3.13"
license = "Apache-2.0"
keywords = ["a2a", "mcp", "a2anet", "agent", "agent2agent", "multi-agent", "llm", "ai"]
authors = [
{ name = "A2A Net", email = "hello@a2anet.com" },
]
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = [
"a2a-sdk>=0.3.21",
"loguru>=0.7.3",
"mcp>=1.2.0",
"platformdirs>=4.0.0",
]
[dependency-groups]
dev = [
"mypy>=1.19.0",
"ruff>=0.14.9",
]
[project.scripts]
a2anet-mcp = "a2anet_mcp:main"
[project.urls]
Documentation = "https://github.com/A2ANet/a2a-mcp#readme"
Issues = "https://github.com/A2ANet/a2a-mcp/issues"
Source = "https://github.com/A2ANet/a2a-mcp"
[tool.hatch.version]
path = "src/a2anet_mcp/__about__.py"
[tool.hatch.envs.types]
extra-dependencies = [
"mypy>=1.0.0",
]
[tool.hatch.envs.types.scripts]
check = "mypy --install-types --non-interactive {args:src/a2anet_mcp}"
[tool.hatch.envs.lint]
extra-dependencies = [
"ruff"
]
[tool.hatch.envs.lint.scripts]
check = "ruff check {args:src/a2anet_mcp}"
format = "ruff format {args:src/a2anet_mcp}"
[tool.ruff]
target-version = "py313"
line-length = 100
[tool.mypy]
python_version = "3.13"
strict = true