async def METHOD_NAME(self, *args: Any, **kwargs: Any) -> ToolOutput:
    """Async Call."""
    query_str, docs = self._parse_args(*args, **kwargs)
    index = self._index_cls.from_documents(docs, **self._index_kwargs)
    # TODO: add query kwargs
    query_engine = index.as_query_engine()
    response = await query_engine.aquery(query_str)
    return ToolOutput(
        content=str(response),
        tool_name=self.metadata.name,
        raw_input={"query": query_str},
        raw_output=response,
    )