Integracion con Composio
Scavio se distribuye como un toolkit personalizado para Composio, la capa de herramientas que conecta tus agentes con servicios externos en todos los frameworks principales. Construye el toolkit de Scavio, vinculalo a una sesion de Composio y cualquier agente impulsado por Composio obtiene busqueda en tiempo real en Google, YouTube, Amazon, Walmart, Reddit, TikTok e Instagram — un toolkit, una clave API. Disponible tanto para Python como para TypeScript.
Requisitos previos
- Python 3.9 o posterior, o Node.js 18 o posterior.
- Una clave API de Scavio obtenida en dashboard.scavio.dev.
- Una clave API de Composio obtenida en app.composio.dev.
Instalacion
# Python
pip install composio composio-scavio
# TypeScript
npm install @composio/core composio-scavioAmbos paquetes envuelven el SDK oficial de Scavio y exponen cada endpoint como una herramienta personalizada de Composio, agrupada bajo un unico toolkit SCAVIO.
Configura tus claves API
export SCAVIO_API_KEY=sk_live_your_key
export COMPOSIO_API_KEY=your_composio_keyEl toolkit lee SCAVIO_API_KEY del entorno. Tambien puedes pasarla de forma explicita al construir el toolkit.
Inicio rapido (Python)
from composio import Composio
from composio_scavio import build_scavio_toolkit
composio = Composio()
scavio = build_scavio_toolkit() # reads SCAVIO_API_KEY
session = composio.create(
user_id="user_1",
experimental={"custom_toolkits": [scavio]},
)
# Hand the tools to your agent, or call one directly:
result = session.execute(
"SCAVIO_GOOGLE_SEARCH",
arguments={"query": "best search API for AI agents", "light_request": True},
)
print(result)Inicio rapido (TypeScript)
import { Composio } from "@composio/core";
import { buildScavioToolkit } from "composio-scavio";
const composio = new Composio();
const scavio = buildScavioToolkit(); // reads SCAVIO_API_KEY
const session = await composio.create("user_1", {
experimental: { customToolkits: [scavio] },
});
const out = await session.execute("LOCAL_SCAVIO_GOOGLE_SEARCH", {
query: "best search API for AI agents",
light_request: true,
});
console.log(out);Habilita solo los proveedores que necesitas
Todos los proveedores estan habilitados por defecto. Cada uno se controla con un indicador, asi que puedes exponer al modelo una lista de herramientas reducida:
# Python: web-only toolkit (Google, YouTube, Reddit)
scavio = build_scavio_toolkit(
enable_google=True,
enable_youtube=True,
enable_reddit=True,
enable_amazon=False,
enable_walmart=False,
enable_tiktok=False,
enable_instagram=False,
)// TypeScript: same idea
const scavio = buildScavioToolkit({
enableGoogle: true,
enableYoutube: true,
enableReddit: true,
enableAmazon: false,
enableWalmart: false,
enableTiktok: false,
enableInstagram: false,
});Pasa all=True (Python) o { all: true } (TypeScript) para registrar todas las herramientas sin importar los indicadores individuales.
Slugs de las herramientas
Las herramientas se agrupan bajo el toolkit SCAVIO. El slug que ve el agente es el slug del toolkit mas el nombre de la herramienta. En Python el slug es SCAVIO_GOOGLE_SEARCH; en TypeScript Composio antepone su prefijo reservado LOCAL_ para las herramientas personalizadas, por lo que la misma herramienta es LOCAL_SCAVIO_GOOGLE_SEARCH. Usa la forma correspondiente cuando llames a session.execute(...).
Herramientas disponibles
Cada endpoint de Scavio se expone como una herramienta con prefijo de proveedor (32 en total). Los slugs de abajo omiten el prefijo SCAVIO_ / LOCAL_SCAVIO_ por brevedad.
| Proveedor | Herramientas |
|---|---|
GOOGLE_SEARCH | |
| Amazon | AMAZON_SEARCH, AMAZON_PRODUCT |
| Walmart | WALMART_SEARCH, WALMART_PRODUCT |
| YouTube | YOUTUBE_SEARCH, YOUTUBE_METADATA |
REDDIT_SEARCH, REDDIT_POST | |
| TikTok | TIKTOK_PROFILE, TIKTOK_USER_POSTS, TIKTOK_VIDEO, TIKTOK_VIDEO_COMMENTS, TIKTOK_COMMENT_REPLIES, TIKTOK_SEARCH_VIDEOS, TIKTOK_SEARCH_USERS, TIKTOK_HASHTAG, TIKTOK_HASHTAG_VIDEOS, TIKTOK_USER_FOLLOWERS, TIKTOK_USER_FOLLOWINGS |
INSTAGRAM_PROFILE, INSTAGRAM_USER_POSTS, INSTAGRAM_USER_REELS, INSTAGRAM_USER_TAGGED, INSTAGRAM_USER_STORIES, INSTAGRAM_POST, INSTAGRAM_POST_COMMENTS, INSTAGRAM_COMMENT_REPLIES, INSTAGRAM_SEARCH_USERS, INSTAGRAM_SEARCH_HASHTAGS, INSTAGRAM_USER_FOLLOWERS, INSTAGRAM_USER_FOLLOWINGS |
Como funciona
Cada herramienta devuelve la respuesta de Scavio como un objeto JSON que el modelo puede leer directamente. Las llamadas pasan por el SDK oficial de Scavio, que se encarga de la autenticacion, el limite de tasa y el formato de las solicitudes. Como las herramientas se ejecutan en el mismo proceso, tu proporcionas tu propia clave API de Scavio — Composio no actua como proxy de la solicitud.
Costos en creditos
La mayoria de las llamadas cuestan 1 credito. Reddit e Instagram cuestan 2 creditos, y Google cuesta 2 cuando light_request=false. Consulta la referencia de limites de tasa para los limites por plan y la referencia de errores para orientacion sobre reintentos.