Note that the agency
is a key maintainer. Maintainers are a fundamental part of the key. You can read more about them on the documentation, as they are central to ensuring key uniqueness in a decentralized network where you cannot have any form of global visibility.
From what I can read, it sounds like your agents can work as the key maintainer in your app.
This thread on the forum may also contain interesting information for you.