Connections

Integrations your users link once, everything else reuses.

Each user links their accounts with OAuth or an API key. The kit keeps the credentials and exposes the accounts as two tools, over a central API and MCP, to agents, workflows, Brain and your own systems.

Providers, and the doors around them.

Embed it, or run it once for everything.

Inside the agent serverOne option on the module you already run.
PilotooModule.forRoot({
  connections: {
    providers: [githubProvider(), myProvider],
    tools: true,      // connections_search, connections_execute
    publicApi: true,  // /api/tools/* and /mcp
  },
});
In your own NestJS appControllers and providers, without the agent server.
@Module({
  controllers: [...connectionControllers],
  providers: [
    ...connectionProviders(
      { providers: [githubProvider(), gmailProvider()], publicApi: true },
      { env: 'ENV', postgres: DatabaseService, toolRegistry: 'TOOL_REGISTRY' },
    ),
  ],
})
export class AppModule {}
As one central serviceMany servers, desktops and MCP clients share the same accounts.
CONNECTIONS_REMOTE_URL=https://connect.example.com
CONNECTIONS_REMOTE_TOKEN=<access token>

Built so a credential never leaks into a prompt.

Who calls the accounts.

Turn on a block to see how it uses the connections.

WebDesktopMobileYour systems · HTTPAny MCP client

Link the first account.