ToolRouterSession
Properties
| Name | Type |
|---|---|
session_id | str |
mcp | Any |
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 = ...) -> TToolCollectionParameters
| Name | Type |
|---|---|
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 = ...) -> ConnectionRequestParameters
| Name | Type |
|---|---|
toolkit | str |
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 = ...) -> ToolkitConnectionsDetailsParameters
| Name | Type |
|---|---|
toolkits? | List[str | None] |
next_cursor? | str | None |
limit? | int | None |
is_connected? | bool | None |
search? | str | None |
Returns
ToolkitConnectionsDetails
search()
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 = ...) -> SessionSearchResponseParameters
| Name | Type |
|---|---|
query | str |
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] = ...) -> SessionExecuteResponseParameters
| Name | Type |
|---|---|
tool_slug | str |
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
| Name | Type |
|---|---|
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]] = ...) -> SessionProxyExecuteResponseParameters
| Name | Type |
|---|---|
toolkit | str |
endpoint | str |
method | Literal['GET', 'POST', 'PUT', 'DELETE', 'PATCH'] |
body? | Any |
parameters? | List[Dict[str, Any | None]] |
Returns
SessionProxyExecuteResponse — Proxied API response