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.8b1-cp313-cp313-win_amd64.whl (449.6 kB view details)

Uploaded CPython 3.13Windows x86-64

gl_connectors_tools_binary-0.0.8b1-cp313-cp313-manylinux_2_31_x86_64.whl (671.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.31+ x86-64

gl_connectors_tools_binary-0.0.8b1-cp313-cp313-macosx_13_0_arm64.whl (422.8 kB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

gl_connectors_tools_binary-0.0.8b1-cp312-cp312-win_amd64.whl (452.1 kB view details)

Uploaded CPython 3.12Windows x86-64

gl_connectors_tools_binary-0.0.8b1-cp312-cp312-manylinux_2_31_x86_64.whl (672.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.31+ x86-64

gl_connectors_tools_binary-0.0.8b1-cp312-cp312-macosx_13_0_arm64.whl (421.6 kB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

gl_connectors_tools_binary-0.0.8b1-cp311-cp311-win_amd64.whl (458.2 kB view details)

Uploaded CPython 3.11Windows x86-64

gl_connectors_tools_binary-0.0.8b1-cp311-cp311-manylinux_2_31_x86_64.whl (613.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.31+ x86-64

gl_connectors_tools_binary-0.0.8b1-cp311-cp311-macosx_13_0_arm64.whl (416.6 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

File details

Details for the file gl_connectors_tools_binary-0.0.8b1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 1651cf322dba02754e02d5255d4acadd284b04bad6340a85805217ff66749a83
MD5 239aaeeb0f559d1f9a5375921b42b361
BLAKE2b-256 c21bf69fc297ae07a186284d3ef4f6afca2c8e4a632472b5a89d61e518ba9042

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.8b1-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.8b1-cp313-cp313-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp313-cp313-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 3a78a6aa778ae97634d70d5d712ffff547666d3c1ff64ec37f6c945ecb52e8b6
MD5 d30e3a0c5e2543fc5c1c2856ec4f2220
BLAKE2b-256 01134b2c8eca2e7ed5862ddc3171682abca5e0884b1308a673535a17eabe0ebf

See more details on using hashes here.

File details

Details for the file gl_connectors_tools_binary-0.0.8b1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 8a8e0163d4db6b1d194baff3a76edafb43fbf433fc5198a4241d17b6aeec12d8
MD5 ac7cce87ac6b2d79add7fef4c927e18d
BLAKE2b-256 29b7fdfb5fb177bb1984d5908a0f996b0e8a31343d49316acaacc908e84fb4cd

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.8b1-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.8b1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 126e9f811c1d1168c3d3e7096d5c98272d995ca442615a9dfd3d02d9e5c15454
MD5 a6115f0767160be81c2243933d735844
BLAKE2b-256 be117d34cd1f9df0842d8f084e869b5298ddfb74dc2bd9fb8b1f9f5072b3833e

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.8b1-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.8b1-cp312-cp312-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp312-cp312-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 5b9d6e65e6a5f0d4bc589501b87d58915709f3f363058fea7d3a680ef5144616
MD5 ccf4c2861c7544c6df23c3d86bf665ea
BLAKE2b-256 e1bf2bb143a98b755a9769327154828fb9f1c7148c7f132b564f81d23735f681

See more details on using hashes here.

File details

Details for the file gl_connectors_tools_binary-0.0.8b1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 9b35953632e2c8e51cdf44c5e529ad6bd25eabb0d8ef79807d6621b9d8042a58
MD5 31e594a1edb86ac3677995f58de5efc1
BLAKE2b-256 18f96686d0c65bd922bd652bcd3d4c127f1dc006e4a552a3d051fbfb203d3b2c

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.8b1-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.8b1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cb625d9d83e1fd80bec03f1de3924e966aa2f036a0affd31f41080d7f4fa180b
MD5 f4b48452ef2140601934eef1c489373d
BLAKE2b-256 955fee8c31665d3ec86b8571c2bccb3bf1cb3882ee1d9f8d9d7ca9d43a228eba

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.8b1-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.8b1-cp311-cp311-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp311-cp311-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 7d5d2ac067e0fcd85dd6c347b46e1703536f7692b2600d3674903d7abc432911
MD5 df7b449ea8766110b77f4e9823f5dffc
BLAKE2b-256 3c766531f016b020f8ccf10e7a586a0bbdf08b2bf5514b501606eb92e867b2b6

See more details on using hashes here.

File details

Details for the file gl_connectors_tools_binary-0.0.8b1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for gl_connectors_tools_binary-0.0.8b1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 7982852a463f00f7ad5c1bfc788022c517a37a39c4e1adec953ad6f1f0b69c24
MD5 05cf395d7de926ff23b66547020320b0
BLAKE2b-256 674f02fbed9e6239e9d71606f8845a1b41c3b8dfa2d57091e3d7fe91abaab64d

See more details on using hashes here.

Provenance

The following attestation bundles were made for gl_connectors_tools_binary-0.0.8b1-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