SDK ReferencePython SDK

Tools

Markdown

Methods

get_raw_composio_tool_by_slug()

Returns schema for the given tool slug.

def get_raw_composio_tool_by_slug(slug: str) -> Tool

Parameters

NameType
slugstr

Returns

Tool


get_raw_composio_tools()

Get a list of tool schemas based on the provided filters.

def get_raw_composio_tools(tools: list[str | None] = ..., search: str | None = ..., toolkits: list[str | None] = ..., scopes: List[str | None] = ..., limit: int | None = ...) -> list[Tool]

Parameters

NameType
tools?list[str | None]
search?str | None
toolkits?list[str | None]
scopes?List[str | None]
limit?int | None

Returns

list[Tool]


get_raw_tool_router_meta_tools()

Fetches the meta tools for a tool router session. This method fetches the meta tools from the Composio API and transforms them to the expected format. It provides access to the underlying meta tool data without provider-specific wrapping.

def get_raw_tool_router_meta_tools(session_id: str, modifiers: 'Modifiers' | None = ...) -> list[Tool]

Parameters

NameType
session_idstr
modifiers?'Modifiers' | None

Returns

list[Tool] — The list of meta tools

Example

```python
    from composio import Composio

    composio = Composio()
    tools_model = composio.tools

    # Get meta tools for a session
    meta_tools = tools_model.get_raw_tool_router_meta_tools("session_123")
    print(meta_tools)

    # Get meta tools with schema modifiers
    from composio.core.models import schema_modifier

    @schema_modifier
    def modify_schema(tool: str, toolkit: str, schema):
        # Customize the schema
        schema.description = f"Modified: {schema.description}"
        return schema

    meta_tools = tools_model.get_raw_tool_router_meta_tools(
        "session_123",
        modifiers=[modify_schema]
    )

---

### get()

Get a tool or list of tools based on the provided arguments.

```python
def get(user_id: str, slug: str | None = ..., tools: list[str | None] = ..., search: str | None = ..., toolkits: list[str | None] = ..., scopes: List[str | None] = ..., modifiers: Modifiers | None = ..., limit: int | None = ...)

Parameters

NameType
user_idstr
slug?str | None
tools?list[str | None]
search?str | None
toolkits?list[str | None]
scopes?List[str | None]
modifiers?Modifiers | None
limit?int | None

execute()

Execute a tool with the provided parameters. This method calls the Composio API or a custom tool handler to execute the tool and returns the response. It automatically determines whether to use a custom tool or a Composio API tool based on the slug.

def execute(slug: str, arguments: Dict, connected_account_id: str | None = ..., custom_auth_params: tool_execute_params.CustomAuthParams | None = ..., custom_connection_data: tool_execute_params.CustomConnectionData | None = ..., user_id: str | None = ..., text: str | None = ..., version: str | None = ..., dangerously_skip_version_check: bool | None = ..., modifiers: Modifiers | None = ...) -> ToolExecutionResponse

Parameters

NameType
slugstr
argumentsDict
connected_account_id?str | None
custom_auth_params?tool_execute_params.CustomAuthParams | None
custom_connection_data?tool_execute_params.CustomConnectionData | None
user_id?str | None
text?str | None
version?str | None
dangerously_skip_version_check?bool | None
modifiers?Modifiers | None

Returns

ToolExecutionResponse — The response from the tool.


proxy()

Proxy a tool call to the Composio API

def proxy(endpoint: str, method: Literal['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD'], body: object | None = ..., connected_account_id: str | None = ..., parameters: List[tool_proxy_params.Parameter | None] = ..., custom_connection_data: tool_proxy_params.CustomConnectionData | None = ...) -> tool_proxy_response.ToolProxyResponse

Parameters

NameType
endpointstr
methodLiteral['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']
body?object | None
connected_account_id?str | None
parameters?List[tool_proxy_params.Parameter | None]
custom_connection_data?tool_proxy_params.CustomConnectionData | None

Returns

tool_proxy_response.ToolProxyResponse


View source