AG2
Tweet araması, profiller, zaman çizelgeleri ve yetkilendirilmiş araştırma iş akışları için AG2 çoklu aracı sistemlerini TwexAPI'ye bağlayın.
AG2, çok aracılı sistemler için açık kaynaklı bir Python çerçevesidir. TwexAPI henüz yerel bir AG2 arama araç seti sunmuyor. API kimlik bilgilerini altyapınızda tutarken agent’ların explore ve twexapi_request çağırabilmesi için AG2 agent’larını TwexAPI MCP sunucusuna MCPToolkit ile bağlayın.
API’nin döndürdüğü her tweet kimliğini, kullanıcı kimliğini ve imleci koruyun.
AG2’yi neden TwexAPI ile kullanmalısınız?
AG2 size aracın kullanıma sunulması, yetki devri ve ara katman yazılımı üzerinde açık kontrol sağlar. Her REST yolunu sabit kodlamadan çok aracılı araştırma yapmak istediğinizde bunu TwexAPI MCP ile eşleştirin.
| Sınır | AG2 kontrolü | Fayda |
|---|---|---|
| Alet yapımı | MCPToolkit(...) |
“Keşfet” ve “twexapi_request” ile sınırlandırın veya daha fazla filtreleyin |
| Modeli girişi | MCP aracı şemaları | Model rotaları yalnızca keşfedilen uç noktalardan seçer |
| Çalışma zamanı kapsamı | Variable |
Yürütme sırasında kullanıcı başına veya kiracı başına başlıkları çözümleyin |
| Delegasyon | Agent.as_tool() |
Araştırmacının araç çağrısı geçmişini koordinatörün bağlamının dışında tutun |
| Taşıma | MCPServerConfig |
“x-api-key” ile “https://api.twexapi.io/mcp"yi işaretleyin |
Bu, araştırma, izleme ve raporlama temsilcilerine uygundur. Model kararları gerektirmeyen deterministik işler için Python SDK’sını veya Prefect koleksiyonunu kullanın.
Önkoşullar
- Python 3.10 veya üzeri
- Bir TwexAPI API anahtarı
- AG2 tarafından desteklenen bir LLM sağlayıcı anahtarı
Genel X okumalarının X Developer kimlik bilgilerine ihtiyacı yoktur. TwexAPI ile kimlik doğrulaması yapın.
AG2’yi yükleyin
python -m pip install "ag2>=1.0.0" python-dotenv
Model sağlayıcınızı ekstra olarak yükleyin.
python -m pip install "ag2[anthropic]>=1.0.0"
Sırları kaynak kontrolü dışında saklayın.
export TWEXAPI_API_KEY="YOUR_API_KEY"
export ANTHROPIC_API_KEY="YOUR_ANTHROPIC_KEY"
TwexAPI MCP’yi MCPToolkit’e bağlayın
Kimlik bilgilerinin altyapınızda kalması gerektiğinde istemci tarafı ’MCPToolkit’i kullanın. TwexAPI MCP, ‘explore’ ve ’twexapi_request’i ortaya çıkarır.
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())
x-api-key içeren headers gereklidir. https://api.twexapi.io/mcp adresine kimliği doğrulanmamış istekler 401 döndürür.
Araçları aracı rolüne göre kısıtla
Yalnızca keşif aracılarına “keşfet” erişimi verin. Yürütme aracılarına her iki aracı da verin.
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",
)
)
]
Çok temsilcili bir ekipte aramayı delege edin
Agent.as_tool(), bir aracıyı başka bir aracı için bir araç olarak kullanıma sunar. Koordinatör, dahili araç çağrı geçmişini değil, delegenin nihai cevabını alır.
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)
Devir kontrol listesi
MCP yanıtlarındaki dayanıklı alanları saklayın, böylece daha sonraki iş akışı adımları sohbet geçmişine bağlı kalmaz.
| Veri türü | Mağaza |
|---|---|
| Tweetler | tweet_id, text, author_username, created_at, has_more, next_cursor, original query |
| Profiller | user_id, username, name, description, followers_count, source lookup |
| Trendler | ülke, konu, içerik etiketi, tweet satırları, istenen filtreler |
| yazar | tweet_id, route name, status, confirmation record |
Kontrol listesinin tamamı için Agent MCP Handoff konusuna bakın.
Sayfalandırma
‘Keşfet’ sayfalandırılmış bir rota döndürdüğünde, belgelenen imleç alanlarını değişmeden ‘twexapi_request’ üzerinden geri geçirin. İmleçlere opak dizeler gibi davranın. “tweet_id” veya “user_id” üzerindeki satırları tekilleştirin.
checkpoint = {
"route_used": "/twitter/advanced_search/page",
"query": "AI agents",
"has_more": True,
"next_cursor": "cursor_123",
}
Dokümanlar MCP ile birleştirme
Aracıların rotaları seçmeden önce TwexAPI belgelerini araması gerektiğinde Docs MCP sunucusunu ekleyin.
tools=[
MCPToolkit(
MCPServerConfig(
server_url="https://docs.twexapi.io/mcp",
server_label="twexapi-docs",
)
),
twexapi_mcp,
]
Arızaları giderme
MCP ve REST hataları, araç setinde HTTP hataları olarak ortaya çıkar. Yeniden denemeden önce durumla ilgili şubeyi açın.
| Durum | Aksiyon |
|---|---|
400 |
İsteği düzeltin. Değiştirmeden tekrar denemeyin. |
401 |
‘x-api-key’ başlığını veya Bearer tokennu kontrol edin. |
403 |
Hesap erişimini, kredileri ve yazma izinlerini kontrol edin. |
429 |
Geri çekilin ve imleci koruyun. |
5xx |
Sınırlı geri çekilmeyle yeniden deneyin. |
Her aramada yeniden denemelere, onay kapılarına veya denetim kaydına ihtiyaç duyduğunuzda `MCPToolkit’i AG2 araç ara yazılımıyla sarın.
Sağlayıcı tarafı MCP (Yalnızca Antropik)
Anthropic’i hedeflerseniz ve sağlayıcıya kimlik bilgilerini iletmeyi kabul ederseniz, ‘MCPToolkit’ yerine ’MCPServerTool’u kullanın. Sağlayıcıdan bağımsız dağıtımlar için ve API anahtarlarının altyapınızda kalması gerektiğinde “MCPToolkit”i tercih edin.