Skip to main content
Composio is a developer-oriented integration platform for AI agents and large language model (LLM) applications. It acts as a bridge between AI systems and real-world tools and services (like Slack, GitHub, Gmail, CRMs, and productivity apps), enabling agents to authenticate and interact across apps without building every integration yourself. This guide walks you through setting up the Composio integration with SambaNova’s LLMs to connect your AI agents to real-world tools and services.
The example in the integrations repository pins composio-crewai==0.7.19, which calls Composio’s retired v1 API. Composio now serves v3, so the example fails with HTTP 410 at the point where it connects your GitHub account, even with valid API keys. Read Troubleshooting before you install. Steps 1 through 5 below still verify your SambaNova key, model access, and environment, and the connection check in step 5 succeeds independently of Composio.

Prerequisites

Before starting, ensure you have:
  • A SambaCloud account and API key
  • A Composio account and API key
  • A SerpAPI account. The example agent calls SerpAPI for web search through Composio, and .env.example in the repository includes SERPAPI_API_KEY.
  • A GitHub account. The example connects to GitHub through Composio on first run.
  • git installed on your system
  • Python 3.10 to 3.13. The pinned crewai release does not support Python 3.9 or earlier, or Python 3.14 or later.
macOS ships with Python 3.9, which is below the required floor, and exposes it as python3 rather than python. Check your version with python3 --version. If it is below 3.10, install a supported version with pyenv, uv, or brew install python@3.12 before continuing.

Installation and setup

Follow the steps below to clone the repository, set up your environment, and run the example:
1

Clone the repository

2

Create a virtual environment

Confirm the environment uses a supported version before installing:
3

Install dependencies

requirements.txt pins every dependency, so the install is reproducible:
The crewai==0.130.0 pin is what sets the Python 3.10 to 3.13 range. crewai also supplies python-dotenv, which main.py imports to read your .env file.
4

Set environment variables

Create a .env file in the project directory:
Or export directly in your terminal:
Get your SambaNova API key from the SambaCloud portal, your Composio API key from the Composio dashboard, and your SerpAPI key from the SerpAPI dashboard.
5

Verify your SambaNova connection

Before you involve Composio, confirm that your SambaNova key and model access work. Save the following as check_sambanova.py in the project directory and run it. It uses the openai==1.91.0 client that requirements.txt already installed.
check_sambanova.py
A working key and model print a one-word answer:
If this step fails, the problem is your SambaNova key, base URL, or model ID, not Composio. See API keys and URLs and the SambaCloud models page.
6

Run the example

The example builds a CrewAI agent that uses SerpAPI to search the web for information about SambaNova and its RDU chip. It calls the model through CrewAI’s LiteLLM layer, so main.py names the model with a provider prefix:
Keep the sambanova/ prefix when you swap in another model ID from the SambaCloud models page. The prefix is what routes the request to SambaNova, and it is only used in this CrewAI form, not in the direct client call shown in the previous step.On the first run, the script prints a GitHub authorization URL and waits:
Open the URL in a browser and approve the connection. The agent then runs and prints its reasoning steps followed by the final answer.
This is the step that currently fails with HTTP 410, because the pinned composio-crewai release requests Composio’s retired v1 API. See Troubleshooting.

Troubleshooting

macOS does not provide a python executable, only python3. Use python3 -m venv .venv to create the environment. After you activate it with source .venv/bin/activate, python works as expected inside the environment.
Your Python version is outside the supported range. pip reports this as a long list of “Ignored the following versions that require a different python version” before the final error. Run python --version inside the activated environment. If it is not 3.10 to 3.13, delete .venv, install a supported Python, and recreate the environment.
The pinned composio-crewai release calls Composio’s v1 API, which has been retired. The endpoint returns This endpoint is no longer available. Please upgrade to v3 APIs. for every request, valid API key or not. The example cannot complete until the integrations repository upgrades to a Composio SDK that targets v3.
COMPOSIO_API_KEY is not set. The script reads it when it constructs the toolset, before it contacts SambaNova, so this is the first failure you hit if you skip the environment step. The traceback is long; the actionable message is the last line.

Additional resources