Describe the problem you want to solve
Want to deliver a layer of authorization for integrations tool at deco.chat integration. Users will can create roles which allows/deny any tool integration connected/installed in workspace.
Propose your solution
Change the roles and permissions system to allow inline statements for custom roles. Wrap the client tool call with authorization layer, this will be implemented at a proxy like proxy(integrationId: string): AuthMCPClient . With these two changes the agents, the web API will have authorization over tools, this will require change the agent tool call flow and integration_call_tool
Implementations parts:
Describe the problem you want to solve
Want to deliver a layer of authorization for integrations tool at deco.chat integration. Users will can create roles which allows/deny any tool integration connected/installed in workspace.
Propose your solution
Change the roles and permissions system to allow inline statements for custom roles. Wrap the client tool call with authorization layer, this will be implemented at a proxy like
proxy(integrationId: string): AuthMCPClient. With these two changes the agents, the web API will have authorization over tools, this will require change the agent tool call flow andintegration_call_toolImplementations parts: