Aller au contenu
Twexapi
Français
Esc
naviguerouvrir⌘Japerçu
Sur cette page

AG2

Connectez des systèmes multi-agents AG2 à TwexAPI pour la recherche de tweets, les profils, les timelines et les workflows de recherche délégués.

AG2 est un framework Python open source pour les systèmes multi-agents. TwexAPI ne fournit pas encore de toolkit de recherche AG2 natif. Connectez les agents AG2 au serveur MCP TwexAPI avec MCPToolkit afin qu’ils puissent appeler explore et twexapi_request tout en gardant les identifiants API dans votre infrastructure.

Conservez chaque ID de tweet, ID d’utilisateur et curseur renvoyé par l’API.

Pourquoi utiliser AG2 avec TwexAPI ?

AG2 vous donne un contrôle explicite sur l’exposition des outils, la délégation et le middleware. Associez-le au MCP TwexAPI lorsque vous voulez une recherche multi-agents sans coder chaque route REST en dur.

Limite Contrôle AG2 Avantage
Construction d’outils MCPToolkit(...) Restreindre à explore et twexapi_request, ou filtrer davantage
Entrée du modèle Schémas d’outils MCP Le modèle choisit les routes uniquement parmi les endpoints découverts
Portée runtime Variable Résoudre les en-têtes par utilisateur ou par tenant à l’exécution
Délégation Agent.as_tool() Garder l’historique d’appels d’outils du chercheur hors du contexte du coordinateur
Transport MCPServerConfig Pointer vers https://api.twexapi.io/mcp avec x-api-key

Ce modèle convient aux agents de recherche, de monitoring et de reporting. Utilisez le SDK Python ou la collection Prefect pour les tâches déterministes qui ne nécessitent pas de décisions du modèle.

Prérequis

  • Python 3.10 ou ultérieur
  • Une clé API TwexAPI
  • Une clé de fournisseur LLM prise en charge par AG2

Les lectures publiques X ne nécessitent pas d’identifiants X Developer. Authentifiez-vous avec TwexAPI.

Installer AG2

python -m pip install "ag2>=1.0.0" python-dotenv

Installez également l’extra de votre fournisseur de modèle.

python -m pip install "ag2[anthropic]>=1.0.0"

Stockez les secrets hors du contrôle de version.

export TWEXAPI_API_KEY="YOUR_API_KEY"
export ANTHROPIC_API_KEY="YOUR_ANTHROPIC_KEY"

Connecter TwexAPI MCP avec MCPToolkit

Utilisez MCPToolkit côté client lorsque les identifiants doivent rester dans votre infrastructure. TwexAPI MCP expose explore et twexapi_request.

import asyncio
import os

from ag2 import Agent
from ag2.config import AnthropicConfig
from ag2.tools import MCPToolkit, MCPServerConfig
from dotenv import load_dotenv

load_dotenv()
config = AnthropicConfig(model="claude-sonnet-4-20250514")

twexapi_mcp = MCPToolkit(
    MCPServerConfig(
        server_url="https://api.twexapi.io/mcp",
        server_label="twexapi",
        headers={"x-api-key": os.environ["TWEXAPI_API_KEY"]},
        allowed_tools=["explore", "twexapi_request"],
    )
)

agent = Agent(
    "x-researcher",
    prompt=(
        "Search X for evidence before answering. "
        "Always call explore before twexapi_request. "
        "Quote tweet text verbatim and keep every tweet ID you receive. "
        "Ask for confirmation before read_only: false actions."
    ),
    config=config,
    tools=[twexapi_mcp],
)


async def main() -> None:
    reply = await agent.ask(
        "What are developers saying about AI agents on X this week? "
        "Return tweet IDs, authors, and a 5-bullet summary."
    )
    print(reply.body)


asyncio.run(main())

L’en-tête headers avec x-api-key est requis. Les requêtes non authentifiées vers https://api.twexapi.io/mcp renvoient 401.

Restreindre les outils par rôle d’agent

Donnez aux agents de découverte uniquement l’accès à explore. Donnez aux agents d’exécution les deux outils.

catalog_agent_tools = [
    MCPToolkit(
        MCPServerConfig(
            server_url="https://api.twexapi.io/mcp",
            headers={"x-api-key": os.environ["TWEXAPI_API_KEY"]},
            allowed_tools=["explore"],
            server_label="twexapi-catalog",
        )
    )
]

execution_agent_tools = [
    MCPToolkit(
        MCPServerConfig(
            server_url="https://api.twexapi.io/mcp",
            headers={"x-api-key": os.environ["TWEXAPI_API_KEY"]},
            allowed_tools=["explore", "twexapi_request"],
            server_label="twexapi-execute",
        )
    )
]

Déléguer la recherche dans une équipe multi-agents

Agent.as_tool() expose un agent comme outil pour un autre agent. Le coordinateur reçoit la réponse finale du délégué, pas son historique interne d’appels d’outils.

searcher = Agent(
    "searcher",
    prompt=(
        "Use TwexAPI MCP to search public X posts. "
        "Call explore first. Return tweet text with IDs. Do not summarise away IDs."
    ),
    config=config,
    tools=[twexapi_mcp],
)

analyst = Agent(
    "analyst",
    prompt="Turn tweet records into a factual brief. Keep every tweet ID.",
    config=config,
)

coordinator = Agent(
    "coordinator",
    prompt="Delegate the search, then pass the tweets to the analyst.",
    config=config,
    tools=[
        searcher.as_tool(description="Search public X posts and return raw tweet records."),
        analyst.as_tool(description="Analyse tweet records. Pass them in the context parameter."),
    ],
)

reply = await coordinator.ask("Brief me on this week's discussion of AI agents on X.")
print(reply.body)

Checklist de handoff

Stockez les champs durables des réponses MCP afin que les étapes ultérieures du workflow ne dépendent pas de l’historique de chat.

Type de données Stocker
Tweets tweet_id, text, author_username, created_at, has_more, next_cursor, requête d’origine
Profils user_id, username, name, description, followers_count, source de la recherche
Tendances pays, sujet, tag de contenu, lignes de tweets, filtres demandés
Écritures tweet_id, nom de route, statut, enregistrement de confirmation

Voir Agent MCP Handoff pour la checklist complète.

Pagination

Lorsque explore renvoie une route paginée, repassez les champs de curseur documentés via twexapi_request sans modification. Traitez les curseurs comme des chaînes opaques. Dédupliquez les lignes sur tweet_id ou user_id.

checkpoint = {
    "route_used": "/twitter/advanced_search/page",
    "query": "AI agents",
    "has_more": True,
    "next_cursor": "cursor_123",
}

Combiner avec Docs MCP

Ajoutez le serveur Docs MCP lorsque les agents doivent rechercher la documentation TwexAPI avant de choisir les routes.

tools=[
    MCPToolkit(
        MCPServerConfig(
            server_url="https://docs.twexapi.io/mcp",
            server_label="twexapi-docs",
        )
    ),
    twexapi_mcp,
]

Gérer les échecs

Les erreurs MCP et REST remontent via le toolkit sous forme d’échecs HTTP. Branchez sur le statut avant de réessayer.

Statut Action
400 Corrigez la requête. Ne pas réessayer sans modification.
401 Vérifiez l’en-tête x-api-key ou le token Bearer.
403 Vérifiez l’accès au compte, les crédits et les permissions d’écriture.
429 Ralentissez et conservez le curseur.
5xx Réessayez avec un backoff borné.

Enveloppez MCPToolkit avec le middleware d’outils AG2 lorsque vous avez besoin de retries, de portes d’approbation ou de journalisation d’audit autour de chaque appel.

MCP côté fournisseur (Anthropic uniquement)

Si vous ciblez Anthropic et acceptez de transmettre les identifiants au fournisseur, utilisez MCPServerTool au lieu de MCPToolkit. Préférez MCPToolkit pour les déploiements agnostiques du fournisseur et lorsque les clés API doivent rester dans votre infrastructure.

Guides associés

Cette page vous a-t-elle été utile ?