Dependency Injection
Agent skill:
nitrostack-python-mcp-app-architecture
There are no TypeScript-style parameter decorators. Declare constructor deps explicitly:
Python
from nitrostack import injectable, module
@injectable(deps=[])
class PizzazService:
def list_shops(self):
return []
@injectable(deps=[PizzazService])
class PizzazTools:
def __init__(self, service: PizzazService):
self.service = service
Constructor args must match deps. The container instantiates controllers and providers; do not call PizzazService() inside a tool class.
DIContainer methods: register, register_value, resolve, reset, get_instance.
Feature modules list tools on controllers and services on providers (and exports if other modules inject them).