Skip to main content

Framework-agnostic tool SDK for GLLM Core, LangChain, and ADK

Project description

GL Connectors Tool SDK

Framework-agnostic tool SDK for building tools that work with GLLM Core, LangChain, and Google ADK.

Installation

(Alternative to uv add would be pip install)

# Core SDK only
uv add gl-connectors-tools

# With GLLM Core support
uv add gl-connectors-tools[gllm]

# With LangChain support
uv add gl-connectors-tools[langchain]

# With Google ADK Support
uv add gl-connectors-tools[adk]

# With all frameworks
uv add gl-connectors-tools[all]

Quick Start

Creating a Tool

from pydantic import BaseModel, Field
from gl_connectors_tools.tools import BaseTool


class SearchInput(BaseModel):
    query: str = Field(description="Search query")
    max_results: int = Field(default=10, description="Maximum results to return")


class SearchTool(BaseTool):
    name = "search"
    description = "Searches for information"
    input_schema = SearchInput

    def run(self, query: str, max_results: int = 10) -> str:
        # Your implementation here
        return f"Found {max_results} results for: {query}"

Using with Different Frameworks

from gl_connectors_tools.adapters import (
    to_gllm_tool,      # GLLM Core
    to_langchain_tool,  # LangChain
    to_adk_function,    # Google ADK
)

tool = SearchTool()

# Convert to GLLM Core Tool
gllm_tool = to_gllm_tool(tool)

# Convert to LangChain StructuredTool
lc_tool = to_langchain_tool(tool)

# Convert to ADK FunctionDeclaration
func_decl, callable_fn = to_adk_function(tool)

Migrating from LangChain (Zero-Change!)

Just change the import. The SDK accepts LangChain naming conventions out of the box:

- from langchain_core.tools import BaseTool
+ from gl_connectors_tools.tools import BaseTool

  class MyTool(BaseTool):
      name = "my_tool"
      description = "..."
      args_schema = MyInput      # ✅ Works as-is!

      def _run(self, **kwargs):  # ✅ Works as-is!
          # implementation unchanged

The SDK supports both naming conventions:

LangChain Style SDK Style
args_schema input_schema
_run() run()
_arun() arun()

Alternative: Wrapper for Existing Instances

If you have existing LangChain tool instances you can't modify:

from gl_connectors_tools.adapters.langchain import LangChainToolWrapper

# Existing LangChain tool instance
from my_app.tools import MyLangChainTool

# Wrap it
sdk_tool = LangChainToolWrapper(MyLangChainTool())

# Now use it with any adapter
gllm_tool = to_gllm_tool(sdk_tool)

Predefined Tools

from gl_connectors_tools.predefined import TimeTool

tool = TimeTool()
result = tool.run(timezone="Asia/Jakarta")

Architecture

┌─────────────────────────────────────────────────┐
│               Your SDK Tools                     │
│         (inherit from BaseTool)                  │
└─────────────────────────────────────────────────┘
                      │
        ┌─────────────┼─────────────┐
        ▼             ▼             ▼
   ┌─────────┐  ┌─────────┐  ┌─────────┐
   │  GLLM   │  │LangChain│  │   ADK   │
   │ Adapter │  │ Adapter │  │ Adapter │
   └─────────┘  └─────────┘  └─────────┘

The SDK owns the tool interface. Frameworks become output adapters, not the source of truth.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

gl_connectors_tools_binary-0.0.9-cp313-cp313-win_amd64.whl (465.0 kB view details)

Uploaded CPython 3.13Windows x86-64

gl_connectors_tools_binary-0.0.9-cp313-cp313-manylinux_2_31_x86_64.whl (690.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.31+ x86-64

gl_connectors_tools_binary-0.0.9-cp313-cp313-macosx_13_0_arm64.whl (440.6 kB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

gl_connectors_tools_binary-0.0.9-cp312-cp312-win_amd64.whl (467.1 kB view details)

Uploaded CPython 3.12Windows x86-64

gl_connectors_tools_binary-0.0.9-cp312-cp312-manylinux_2_31_x86_64.whl (692.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.31+ x86-64

gl_connectors_tools_binary-0.0.9-cp312-cp312-macosx_13_0_arm64.whl (439.6 kB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

gl_connectors_tools_binary-0.0.9-cp311-cp311-win_amd64.whl (473.4 kB view details)

Uploaded CPython 3.11Windows x86-64

gl_connectors_tools_binary-0.0.9-cp311-cp311-manylinux_2_31_x86_64.whl (631.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.31+ x86-64

gl_connectors_tools_binary-0.0.9-cp311-cp311-macosx_13_0_arm64.whl (432.4 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 343e90c42e2deceb998ca9e9287569a301737d52b5a1f0d5cdc6ce6d30b46b37
MD5 51518712247dc8f91a9910a575adcbd6
BLAKE2b-256 24588f8f1b9d12f3e57e56942cae2b2d80cbefcb6b1477ce140843ac046d6786

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.9-cp313-cp313-win_amd64.whl:

Publisher: build-binary.yml on GDP-ADMIN/gl-connectors-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp313-cp313-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp313-cp313-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 c3c7cbdcff7b045167f1ed92342131482b06abb5442925d211cec6475f589656
MD5 d1f2dbe23674d79775666b064103397c
BLAKE2b-256 91f8b24ee45fcd10ca2e6268c2b8fa4a8b0054c4e95803fd70af07ee3bbc8301

See more details on using hashes here.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f2f7d77062bc079e68dfd767db3d7f6697d73aa76a45a420d0f7bc99182d42a5
MD5 c67a1690d3ac1e82e7e34393ceb3548a
BLAKE2b-256 115f68bdd768f66682b1ebee488b582855237de075753f66292663706f0ce7e7

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.9-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: build-binary.yml on GDP-ADMIN/gl-connectors-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 db9612ea1c785753a15848ab718aa65f6e9c1fea53906f2c761009fe722f619f
MD5 6b44599615f581bd63b50227b71ae562
BLAKE2b-256 7e49a56c1e70d0a0fa744672965f4b9b38f427c6bf163a5a16b1fb94001430d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.9-cp312-cp312-win_amd64.whl:

Publisher: build-binary.yml on GDP-ADMIN/gl-connectors-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp312-cp312-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp312-cp312-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 5d17f5a333cab7c694417cf294f47ddbaca9e14b74e1673973360b8f4bdb7373
MD5 6880bcdef8773f956301cf0b3d596b26
BLAKE2b-256 c601bf56ac2dcbfaae32854aba4ed571d6cc74b62dd9d961430262d0cd66354d

See more details on using hashes here.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8442cea0e12e86d74d1c63a0b60c48867ea6ba4156443174eafdeac20f6739f1
MD5 7e5e6ddba65c34d6a69487270c4c914b
BLAKE2b-256 d3c069270ffcbb9f3d17a4e40d518dc1a261c77eca73b5fbb4f2b8d4d90e9de2

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.9-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: build-binary.yml on GDP-ADMIN/gl-connectors-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 26778692368bfce789509d428a7c0c25b668d8c0f5410b76229b92f8a54387d7
MD5 7a47064d8635a1bc9a8e864fd2a9ff36
BLAKE2b-256 1dd2bbfc970e2bb98d275216e91b1da9dbd8f4743e78f8e135b9f50226d0e7e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.9-cp311-cp311-win_amd64.whl:

Publisher: build-binary.yml on GDP-ADMIN/gl-connectors-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp311-cp311-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp311-cp311-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 a8feb7686636fefcb3815a56fce77f04a423b259368b2e6cfb452d591cf16ac8
MD5 139cf306addaaf090be48d5dc8503ed4
BLAKE2b-256 3bf1ed6aa2dd99c6bdf4de6bc6569f07da420939fcd6ea8869f4bd9f8eb78adb

See more details on using hashes here.

File details

Details for the file gl_connectors_tools_binary-0.0.9-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.9-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 3bbfd5f4246c64cdf06259d33d457d1fa2af4a693a336953d6b28ba0d1c24954
MD5 c091f700d082b8b5f092b40319cc1e60
BLAKE2b-256 2996da464c913df1e0b8d77d1606e943b99ee0e9ea05d510b6420fc248a30f59

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.9-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: build-binary.yml on GDP-ADMIN/gl-connectors-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page