[build-system] requires = ["setuptools>=68", "wheel"] build-backend = "setuptools.build_meta" [project] name = "mpesa-mcp" version = "0.2.7" description = "MCP server for M-Pesa Daraja API and Africa's Talking. 23 tools including get_model_hint(). Tested with claude-sonnet-5." classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Topic :: Software Development :: Libraries :: Python Modules", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", ] readme = "README.md" license = "MIT" license-files = ["LICENSE"] authors = [ {name = "Gabriel Mahia", email = "contact@aikungfu.dev"}, ] keywords = [ "mcp", "model-context-protocol", "mpesa", "m-pesa", "safaricom", "daraja", "africastalking", "kenya", "africa", "fintech", "payments", "sms", "qr-code", "standing-orders", "bill-manager", "sim-swap", "kra", "east-africa" ] requires-python = ">=3.10" dependencies = [ "fastmcp>=2.0.0", "africastalking>=2.0.0", "requests>=2.28.0", ] [project.optional-dependencies] dev = ["pytest>=8.0", "pytest-mock>=3.12", "ruff>=0.3.0"] [project.scripts] mpesa-mcp = "mpesa_mcp.server:mcp.run" [project.urls] Homepage = "https://github.com/gabrielmahia/mpesa-mcp" Repository = "https://github.com/gabrielmahia/mpesa-mcp" "Bug Tracker" = "https://github.com/gabrielmahia/mpesa-mcp/issues" Documentation = "https://github.com/gabrielmahia/nairobi-stack" "MCP Registry" = "https://registry.modelcontextprotocol.io" Datasets = "https://huggingface.co/gmahia" Evaluation = "https://github.com/gabrielmahia/kipimo" [tool.setuptools.packages.find] where = ["src"] [tool.ruff] line-length = 100 target-version = "py310" [tool.ruff.lint] select = ["E", "F", "I"]