Agentic Tools Generator

The Tools Generator dynamically creates GLLM-Tools-compatible tools by fetching connector schemas from the Connector API. This approach ensures that your tools are always up-to-date with the latest connector specifications and capabilities.

Key Features

  • Dynamic Tool Generation: Automatically generates tools based on live connector schemas

  • LangChain Integration: Produces BaseTool compatible tools for seamless integration

  • Multiple Connector Support: Supports various popular services and platforms

  • API-Driven: Fetches the latest connector specifications from GL Connectors API

Installation

pip install gl-connectors-binary

Configuration

Before using the GL Connectors Tools Generator, you need to configure your environment variables:

# Required: Your GL Connectors API key
export API_KEY="your-bosa-api-key-here"

# Optional: Custom GL Connectors API base URL (defaults to https://connector.gdplabs.id)
export API_BASE_URL="https://connector.gdplabs.id"

Usage

Basic Usage

Here's how to generate tools for a specific GL Connectors connector:

Example: Creating GitHub Tools

API Reference

BOSAConnectorToolGenerator

The main class for generating Connector integration tools.

Constructor Parameters

Parameter
Type
Description
Required

api_base_url

str

Base URL for the Connector API

No (defaults to https://connector.gdplabs.id)

api_key

str

Your Connector API Client key

Yes

app_name

str

Name of the connector module

Yes

Methods

generate_tools() -> list[BaseTool]

Generates and returns a list of LangChain-compatible tools based on the connector schema.

Returns:

  • list[BaseTool]: List of generated tools ready for use with LangChain agents

Raises:

  • ValueError: If the app_name is not supported

  • APIError: If there's an issue connecting to the Connector API

create_bosa_tools Function

A convenience function that wraps the BOSAConnectorToolGenerator with validation.

Parameters

Parameter
Type
Description

app_name

str

Name of the Connector Integration

Returns

  • list[BaseTool]: List of generated tools

Raises

  • ValueError: If app_name is not in the supported modules list

Known Limitations

Some tools generated by the Tools Generator may have limitations when dealing with file operations, particularly binary data handling. This is common with connectors that involve file uploads, downloads, or binary data processing.

Example

For support and questions for example apps you can visit our hello world example apps

Support

For support and questions:

  • Check the GL Connector API documentation

  • Contact the BOSA development team

Last updated