SDK ReferencePython SDK

ToolRouterSession

Markdown

Properties

NameType
session_idstr
mcpAny
experimental'ToolRouterSessionExperimental'

Methods

tools()

Get provider-wrapped tools for execution with your AI framework. Returns tools configured for this session, wrapped in the format expected by your AI provider (OpenAI, Anthropic, LangChain, etc.). When custom tools are bound to the session, execution of COMPOSIO_MULTI_EXECUTE_TOOL is intercepted: local tools are executed in-process, remote tools are sent to the backend.

def tools(modifiers: 'Modifiers' | None = ...) -> TToolCollection

Parameters

NameType
modifiers?'Modifiers' | None

Returns

TToolCollection


authorize()

Authorize a toolkit for the user and get a connection request. Initiates the OAuth flow and returns a ConnectionRequest with redirect URL.

def authorize(toolkit: str, callback_url: str | None = ...) -> ConnectionRequest

Parameters

NameType
toolkitstr
callback_url?str | None

Returns

ConnectionRequest


toolkits()

Get toolkit connection states for the session.

def toolkits(toolkits: List[str | None] = ..., next_cursor: str | None = ..., limit: int | None = ..., is_connected: bool | None = ..., search: str | None = ...) -> ToolkitConnectionsDetails

Parameters

NameType
toolkits?List[str | None]
next_cursor?str | None
limit?int | None
is_connected?bool | None
search?str | None

Returns

ToolkitConnectionsDetails


Search for tools by semantic use case. Returns relevant tools for the given query with schemas and guidance.

def search(query: str, model: str | None = ...) -> SessionSearchResponse

Parameters

NameType
querystr
model?str | None

Returns

SessionSearchResponse


execute()

Execute a tool within the session. For custom tools, accepts the original slug (e.g. "GREP") or the full slug (e.g. "LOCAL_GREP"). Custom tools are executed in-process; remote tools are sent to the Composio backend. Both paths return a SessionExecuteResponse with data, error, and log_id attributes.

def execute(tool_slug: str, arguments: Dict[str, Any | None] = ...) -> SessionExecuteResponse

Parameters

NameType
tool_slugstr
arguments?Dict[str, Any | None]

Returns

SessionExecuteResponse


custom_tools()

List all custom tools registered in this session. Returns tools with their final slugs, schemas, and resolved toolkit.

def custom_tools(toolkit: str | None = ...) -> List[RegisteredCustomTool]

Parameters

NameType
toolkit?str | None

Returns

List[RegisteredCustomTool] — Array of registered custom tools


custom_toolkits()

List all custom toolkits registered in this session. Returns toolkits with their tools showing final slugs.

def custom_toolkits() -> List[RegisteredCustomToolkit]

Returns

List[RegisteredCustomToolkit]


proxy_execute()

Proxy an API call through Composio's auth layer.

def proxy_execute(toolkit: str, endpoint: str, method: Literal['GET', 'POST', 'PUT', 'DELETE', 'PATCH'], body: Any = ..., parameters: List[Dict[str, Any | None]] = ...) -> SessionProxyExecuteResponse

Parameters

NameType
toolkitstr
endpointstr
methodLiteral['GET', 'POST', 'PUT', 'DELETE', 'PATCH']
body?Any
parameters?List[Dict[str, Any | None]]

Returns

SessionProxyExecuteResponse — Proxied API response


View source