Skip to content
Scalekit Docs
Talk to an EngineerDashboard

Tool calling

List raw tool schemas for custom adapters

scalekit.tools returns raw tool schemas so you can build custom agent adapters instead of using scalekit.actions.executeTool directly.

Use this client when you need tool definitions (name, parameters, connector) for frameworks or your own executor. For connect + execute flows, prefer Connected accounts. See Error handling for exceptions.

classToolsClienthttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/tools.ts
#asynclistTools

Lists tools available in your workspace with optional filtering and pagination.

paramoptionsobject

Optional fields: filter, pageSize, pageToken.

filter, pageSize, pageToken
returnsListToolsResponse

Paginated tools.

const res = await scalekit.tools.listTools({
pageSize: 50,
filter: { query: 'calendar' },
});
// res.tools, res.nextPageToken
classToolsClienthttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/tools.ts
#asynclistScopedTools

Lists tools that are scoped to a specific connected account identifier.

paramidentifierstring

Connected account identifier to scope the tools list.

paramoptionsobject

Optional fields: filter, pageSize, pageToken.

filter, pageSize, pageToken
returnsListScopedToolsResponse

Paginated results.

// options.filter is required
const res = await scalekit.tools.listScopedTools('user@example.com', {
filter: {
// providers, toolNames, connectionNames as needed
},
pageSize: 50,
});
classToolsClienthttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/tools.ts
#asynclistAvailableTools

Lists tools that are available for a specific connected account identifier.

paramidentifierstring

Connected account identifier to scope the available tools.

paramoptionsobject

Optional fields: pageSize, pageToken.

pageSize, pageToken
returnsListAvailableToolsResponse

Paginated results.

const res = await scalekit.tools.listAvailableTools('user@example.com', {
pageSize: 50,
});
classToolsClienthttps://github.com/scalekit-inc/scalekit-sdk-node/blob/main/src/tools.ts
#asyncexecuteTool

Executes a tool using credentials from a connected account.

paramparamsobject

Tool execution options.

toolName, identifier, params, connectedAccountId, connector, organizationId, userId
returnsExecuteToolResponse

Tool result and execution ID.

// Low-level tools client (params, not toolInput)
await scalekit.tools.executeTool({
toolName: 'slack.chat.postMessage',
identifier: 'T0123456',
params: { channel: 'C0123', text: 'hi' },
});