Skip to main content

Use Composio to get an array of tools with your Google AI Python Gemini model.

Project description

composio-google-adk

Adapts Composio tools to Google ADK FunctionTool objects, so your ADK agents can take action across 1000+ apps.

Installation

pip install composio composio-google-adk google-adk

Set COMPOSIO_API_KEY (from the dashboard) and GOOGLE_API_KEY in your environment.

Quickstart

from composio import Composio
from composio_google_adk import GoogleAdkProvider
from google.adk.agents import Agent
from google.adk.runners import Runner
from google.adk.sessions import InMemorySessionService
from google.genai import types

composio = Composio(provider=GoogleAdkProvider())

# Each Composio session is scoped to one of your users
composio_session = composio.create(user_id="user_123")
tools = composio_session.tools()

agent = Agent(
    name="personal_assistant",
    model="gemini-2.0-flash",
    instruction="You are a helpful assistant. Use Composio tools to take action.",
    tools=tools,
)

session_service = InMemorySessionService()
session_service.create_session_sync(
    app_name="personal_assistant",
    user_id="user_123",
    session_id="1234",
)
runner = Runner(
    agent=agent,
    app_name="personal_assistant",
    session_service=session_service,
)

events = runner.run(
    user_id="user_123",
    session_id="1234",
    new_message=types.Content(
        role="user",
        parts=[types.Part(text="Star the repository composiohq/composio on GitHub")],
    ),
)
for event in events:
    if event.is_final_response() and event.content and event.content.parts:
        print(event.content.parts[0].text)

For multi-turn use, store composio_session.session_id and reuse it with composio.use(session_id) instead of calling create() again.

How tools are wrapped

GoogleAdkProvider turns each Composio tool into a google.adk.tools.FunctionTool with a Python signature and docstring generated from the tool's schema, so ADK can pass them to Gemini as regular function declarations.

Links

Project details


Download files

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

Source Distribution

composio_google_adk-0.18.0.tar.gz (3.6 kB view details)

Uploaded Source

Built Distribution

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

composio_google_adk-0.18.0-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file composio_google_adk-0.18.0.tar.gz.

File metadata

  • Download URL: composio_google_adk-0.18.0.tar.gz
  • Upload date:
  • Size: 3.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for composio_google_adk-0.18.0.tar.gz
Algorithm Hash digest
SHA256 d751c013c41183eef81cb003c8be4590a0c4a46909a03f6b1b7ee7d5c8e6b744
MD5 f5e79ccae26efc2af573007d67d37e49
BLAKE2b-256 e7fb7fbb23a98e8c4a5219ef540b5e0cc2c4dc4157aa3786a852bde01a7c613c

See more details on using hashes here.

File details

Details for the file composio_google_adk-0.18.0-py3-none-any.whl.

File metadata

File hashes

Hashes for composio_google_adk-0.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 198d9e611b1ebbf3b027ec1b8451a23b72364d2f05cd9e5a8e8eb65d1f0e335d
MD5 6bff60a7713925ea70b2579afd446206
BLAKE2b-256 2e0d3b533d4e78dc4f6ee3d17f43e06b8e6375146f2e70f05353f9b3f6c753b0

See more details on using hashes here.

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