İçeriğe geç
Twexapi
Türkçe
Esc
gezin⌘Jönizle
Bu sayfada

Microsoft Agent Framework

TwexAPI MCP üzerinden tweet arama, profiller ve incelenen X yazma işlemleri için Python veya .NET Microsoft Agent Framework iş akışları oluşturun.

TwexAPI’nin MCP sunucusu aracılığıyla bir Microsoft Agent Framework Twitter API agent’ı oluşturun. Tweet arayın, profilleri inceleyin, trendleri okuyun ve yazma işlemlerini gözden geçirin. Tweet kimliklerini, imleçleri ve rota adlarını sohbet dökümünün dışında saklayın.

TwexAPI ile Microsoft Agent Framework’ü neden kullanmalısınız?

Framework, Python veya .NET’te araç çağırma agent’larını barındırır. TwexAPI, Streamable HTTP üzerinden explore ve twexapi_request sağlar.

Agent görevi TwexAPI rotası Bir sonraki adım için saklayın
Tweet arama POST /twitter/advanced_search/page Sorgu, tweet kimlikleri, yazarlar, created_at, imleç
Profil inceleme GET /twitter/{screen_name}/about Kullanıcı kimliği, kullanıcı adı, biyografi, takipçi sayısı
Takipçi listeleme POST /v3/twitter/users/followers Kullanıcı adı, takipçi satırları, next_cursor
Gönder veya yanıtla POST /twitter/tweets/create Tweet kimliği, rota, insan onayı, çerez onayı

Microsoft agent host’larını zaten çalıştırıyorsanız bu framework’ü kullanın. Model olmadan deterministik işler için Python SDK veya C# SDK kullanın.

Önkoşullar

  • Python 3.10 veya üzeri, ya da MCP Streamable HTTP desteğine sahip .NET 8+ host
  • Bir TwexAPI API anahtarı
  • Agent runtime için yapılandırılmış bir model Public docs focus on API-key reads.

Herkese açık X okumaları X Developer kimlik bilgileri gerektirmez. TwexAPI ile kimlik doğrulaması yapın.

Kurulum

Python:

python -m pip install "agent-framework>=0.2" mcp python-dotenv pydantic
TWEXAPI_API_KEY=YOUR_API_KEY
OPENAI_API_KEY=sk-...

TwexAPI MCP’ye bağlanın

import os

from agent_framework import MCPStreamableHTTPTool

mcp_tool = MCPStreamableHTTPTool(
    name="twexapi",
    url="https://api.twexapi.io/mcp",
    headers={"x-api-key": os.environ["TWEXAPI_API_KEY"]},
    description="TwexAPI X/Twitter tools through MCP",
)

Eşdeğer host JSON:

{
  "name": "twexapi",
  "transport": "streamable-http",
  "url": "https://api.twexapi.io/mcp",
  "headers": {
    "x-api-key": "YOUR_API_KEY"
  }
}

Kimlik doğrulamasız MCP istekleri 401 döndürür.

Tam örnek (Python)

import asyncio
import os
from pathlib import Path
from typing import Literal

from agent_framework import ChatAgent, MCPStreamableHTTPTool
from agent_framework.openai import OpenAIChatClient
from dotenv import load_dotenv
from pydantic import BaseModel


class TweetRow(BaseModel):
    tweet_id: str
    text: str
    author_username: str | None = None
    created_at: str | None = None


class TweetSearchHandoff(BaseModel):
    query: str
    route_used: str
    tweets: list[TweetRow]
    has_more: bool
    next_cursor: str | None = None
    stop_reason: Literal[
        "complete",
        "requested_limit",
        "cursor_stalled",
        "page_cap",
    ]


async def main() -> None:
    load_dotenv()

    mcp_tool = MCPStreamableHTTPTool(
        name="twexapi",
        url="https://api.twexapi.io/mcp",
        headers={"x-api-key": os.environ["TWEXAPI_API_KEY"]},
        description="TwexAPI X/Twitter tools through MCP",
    )

    async with mcp_tool:
        agent = ChatAgent(
            chat_client=OpenAIChatClient(model_id="gpt-4o"),
            name="twexapi_agent",
            instructions=(
                "Use TwexAPI MCP. Call explore before twexapi_request. "
                "Preserve exact IDs and cursors. Never invent missing fields. "
                "Ask for confirmation before read_only: false actions. "
                "Return only JSON for TweetSearchHandoff."
            ),
            tools=[mcp_tool],
        )

        response = await agent.run(
            "Search 25 recent tweets about Microsoft Agent Framework MCP. "
            "Return query, route_used, tweets, has_more, next_cursor, and stop_reason as JSON."
        )

        handoff = TweetSearchHandoff.model_validate_json(response.text)
        Path("twexapi-agent-framework-handoff.json").write_text(
            handoff.model_dump_json(indent=2),
            encoding="utf-8",
        )


asyncio.run(main())

Model JSON’u Markdown çitleriyle sarıyorsa çitleri kaldırın. Dosyayı konuşma durumunun dışında kalıcı hale getirin.

.NET host taslağı

var mcp = new McpStreamableHttpTool
{
    Name = "twexapi",
    Url = new Uri("https://api.twexapi.io/mcp"),
    Headers = { ["x-api-key"] = Environment.GetEnvironmentVariable("TWEXAPI_API_KEY")! },
};

Aynı talimatı kullanın: önce explore, imleçleri koruyun, read_only: false öncesinde durun. Tipli REST çağrıları C# SDK içinde olmalıdır.

MCP yanıt sözleşmesini koruyun

Her sayfada aynı sorgu ve filtreleri yeniden kullanın. Her imleci opak kabul edin.

İstenen toplam karşılandığında, has_more false olduğunda, next_cursor tekrarlandığında veya sayfa sınırına ulaşıldığında sayfalamayı durdurun.

Devam ettirilebilir agent devri tutun

Tweet sayfaları

tweet_id, text, author_username, created_at, has_more, next_cursor ve orijinal sorguyu saklayın.

Profil satırları

user_id, username, name, description ve takipçi sayılarını saklayın.

Takipçi sayfaları

Kaynak kullanıcı adı, takipçi satırları, next_cursor ve sayfa indeksini saklayın.

Yazma işlemleri

Rotayı, önizleme metnini ve onayı saklayın. Çerezleri devir dosyasının dışında tutun. Bkz..

Bkz. Agent MCP Handoff.

Hata işleme oluşturun

Durum Anlam Agent kararı
400 Geçersiz rota veya parametreler Yeniden denemeden önce isteği düzeltin
401 Eksik veya geçersiz API anahtarı Durdurun ve kimlik bilgisini değiştirin
403 Erişim reddedildi veya kredi Yazmaları duraklatın; Get Balance kontrol edin
429 Hız sınırına ulaşıldı Geri çekilin, ardından aynı imleçle devam edin
5xx Geçici sunucu hatası Güvenli okumalara sınırlı geri çekilme uygulayın

Zaman aşımından sonra okuma kontrolü yapmadan bir yazmayı asla yeniden denemeyin. Bkz. Error Handling ve Rate Limits.

X işlemlerinden önce onay isteyin

You have access to TwexAPI MCP tools.
Call explore before twexapi_request.
Use only relative paths returned by explore.
Return tweet_id, user_id, author_username, route_used, has_more, and next_cursor.
Ask for confirmation before read_only: false actions.
Never print cookie or auth_token values.

CLI ile --dry-run önizlemesi yapın. Onaylanan yazmaları denetimsiz agent döngüsü yerine REST veya SDK üzerinden yürütün.

Üretim rehberi

  • Ortam başına bir API anahtarı kullanın. Anahtarları prompt’lara gömmeyin.
  • MCP araç adlarını ve dönen path değerlerini günlükleyin, çerez başlıklarını değil.
  • İmleçleri ve tweet kimliklerini yalnızca ChatAgent belleğinde değil, mağazanızda saklayın.
  • Okuma araştırması ile yazma yürütmesini ayrı agent’lara veya işlere bölün.

Paket sürümleri

Paket Desteklenen aralık
Python >=3.10
agent-framework >=0.2
mcp >=1.9
pydantic >=2.7

Sonraki adımlar

Bu sayfa yardımcı oldu mu?