[project] name = "readonly-mcp-akamai" version = "0.1.1" description = "Read-only MCP server for Akamai CDN — search properties, browse EdgeWorker code, query DNS" readme = "README.md" license = {text = "MIT"} requires-python = ">=3.13" authors = [{name = "Wojciech Wentland"}] keywords = ["mcp", "akamai", "cdn", "ai-agents", "model-context-protocol"] classifiers = [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3.13", ] dependencies = [ "fastmcp>=3.0", "httpx>=0.28", "pydantic-settings>=2.0", "orjson>=3.10", "rapidfuzz>=3.0", "cachetools>=5.5", ] [project.urls] Homepage = "https://github.com/desty2k/readonly-mcp-akamai" Repository = "https://github.com/desty2k/readonly-mcp-akamai" "Blog Post" = "https://blog.wentland.io/blog/read-only-mcp-server-akamai/" "Bug Tracker" = "https://github.com/desty2k/readonly-mcp-akamai/issues" [project.optional-dependencies] dev = [ "pytest>=8.0", "pytest-cov>=6.0", "pytest-asyncio>=0.24", "ruff>=0.8", "respx>=0.22", ] [project.scripts] readonly-mcp-akamai = "mcp_akamai.__main__:main" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["src/mcp_akamai"] [tool.ruff] target-version = "py313" line-length = 120 src = ["src"] [tool.ruff.lint] select = ["E", "F", "I", "W"] [tool.pytest.ini_options] asyncio_mode = "auto" testpaths = ["tests"] pythonpath = ["tests"] [tool.coverage.run] source = ["mcp_akamai"] omit = [ "src/mcp_akamai/__main__.py", "src/mcp_akamai/__init__.py", ] [tool.coverage.report] exclude_lines = [ "pragma: no cover", "if __name__", "if TYPE_CHECKING", ]