MCP ツールリファレンス
TwexAPI MCP ツール:エンドポイントの検索、読み取り専用の X データ呼び出し、投稿、ワークフローの引き渡し、安全なエージェント実行。
https://api.twexapi.io/mcp の TwexAPI API MCP サーバーは、explore、twexapi_request、twexapi_write の 3 つのツールを提供します。サインインまたは API キー で接続してください。
エージェントはまず explore でエンドポイントを探し、explore がそのエンドポイントに指定したツールを呼び出します。読み取りと書き込みは別のツールに分かれているため、Claude などのクライアントは読み取りを自由に実行し、書き込みのたびに確認を求められます。
ツール
| ツール | 用途 | アノテーション | 表示される条件 |
|---|---|---|---|
explore |
エンドポイントカタログを検索:メソッド、パス、カテゴリ、パラメーター、例、呼び出すツール。 | 読み取り専用、冪等 | 常に |
twexapi_request |
相対パスで読み取り専用のエンドポイントを呼び出します。 | 読み取り専用 | 常に |
twexapi_write |
書き込みエンドポイントを呼び出します(ツイートまたはリプライの投稿)。 | 破壊的、非冪等 | 書き込みを許可した場合のみ |
ユーザーが読み取り専用(スコープ mcp:read)でサインインした場合や、サーバーで書き込み操作が無効になっている場合、twexapi_write は表示されません。
explore
エンドポイントカタログを検索します。X/Twitter へのリクエストは行わず、クレジットも消費しないため、アカウントのクレジットが残っていなくても使えます。ただし、サインインまたは API キーは必要です。
入力
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
query |
string | いいえ | エンドポイント名、パス、説明をキーワードで検索します。 |
category |
string | いいえ | trending、search、users、write などのカテゴリで完全一致フィルターをかけます。エンドポイントのカテゴリ を参照。 |
include_writes |
boolean | いいえ | 書き込みエンドポイントも返します。接続に書き込み権限がある場合のみ返されます。 |
結果は最大 50 件です。
カタログの項目
interface EndpointInfo {
name: string;
method: string;
path: string; // may contain {placeholders}; replace them before calling
category: string;
description: string;
read_only: boolean;
tool: "twexapi_request" | "twexapi_write"; // the tool that calls this endpoint
cursor_paginated: boolean;
parameters_schema: Record<string, unknown>; // JSON Schema of method, path, query, body
example: { method: string; path: string; query?: Record<string, unknown>; body?: unknown };
mpp_eligible: boolean; // accepts pay-per-call on /mcp/pay
}
例
{ "category": "trending" }
{ "query": "advanced search" }
{ "query": "create tweet", "include_writes": true }
twexapi_request
読み取り専用のエンドポイントを呼び出します。認証は MCP 接続から自動で付与されるため、エージェントはメソッド、相対パス、任意の query と body だけを渡します。
入力
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
method |
string | はい | explore が返した HTTP メソッド(GET、POST など)。 |
path |
string | はい | explore が返した相対パス。プレースホルダーは実際の値に置き換えます。絶対 URL は拒否されます。 |
query |
object | いいえ | クエリパラメーター。 |
body |
object、array、またはスカラー | いいえ | GET 以外のリクエストの JSON ボディ。 |
レスポンス
ツールは MCP のメタデータと REST のレスポンスを返します:
{
"status_code": 200,
"endpoint": "list_global_trending_countries",
"method": "GET",
"path": "/twitter/global-trending/countries",
"result": {
"code": 200,
"msg": "success",
"data": []
}
}
status_code が 2xx 以外の場合、ツールの結果はエラーとして扱われます。result に含まれる ID、カーソル、タスク ID、クレジットのフィールドは保持してください。ページに has_more と next_cursor がある場合は、explore が返した次のエンドポイントにカーソルを渡します。
twexapi_write
書き込みエンドポイントを呼び出します。入力とレスポンスの形は twexapi_request と同じです。現在 MCP カタログにある書き込みエンドポイントは、ツイートまたはリプライを投稿する POST /twitter/tweets/create の 1 つだけです。
{
"method": "POST",
"path": "/twitter/tweets/create",
"body": {
"tweet_content": "Hello from TwexAPI MCP",
"cookie": "auth_token=...; ct0=...",
"reply_tweet_id": null,
"media_url": null
}
}
| ボディのフィールド | 必須 | 説明 |
|---|---|---|
tweet_content |
はい | ツイートまたはリプライの本文。 |
cookie |
はい | 投稿するアカウントの X の Cookie または auth_token。 |
reply_tweet_id |
いいえ | リプライ先のツイート ID。 |
media_url |
いいえ | 添付する公開メディアの URL。 |
schedule |
いいえ | 予約投稿の ISO 時刻。 |
community_name |
いいえ | 投稿先のコミュニティ名または ID。 |
delegated_account_username |
いいえ | 代理で投稿するアカウント。 |
proxy |
いいえ | リクエストに使うプロキシ URL。 |
twexapi_write の呼び出しには、メソッド、パス、ボディから生成した Idempotency-Key が付きます。クライアントがタイムアウト後などに 10 分以内にまったく同じ呼び出しを繰り返すと、2 件目を投稿せず最初の結果を返します。詳しくは 投稿を安全に再試行する を参照してください。
いいね、リツイート、フォロー、ブックマーク、削除、DM、記事の公開など、その他の書き込み操作は REST API でのみ利用できます。
書き込みエンドポイントを twexapi_request で、読み取りエンドポイントを twexapi_write で呼び出すと失敗し、正しいツール名を示すメッセージが返ります。
ワークフローの例
以下は、エージェントが組み立てるべきリクエストの例です。実際に使うときは、まず explore を実行して最新のスキーマを確認させてください。
ツイートを検索する
{
"method": "POST",
"path": "/twitter/advanced_search/page",
"body": {
"searchTerms": ["from:openai AI agents"],
"maxItems": 20,
"sortBy": "Latest"
}
}
エージェントには、コンパクトな引き渡し用オブジェクトを返させます:
{
"source": "twexapi_mcp",
"job": "tweet_search",
"route_used": "/twitter/advanced_search/page",
"query": "from:openai AI agents",
"rows": [
{
"tweet_id": "2104354931595423762",
"text": "...",
"author_username": "openai",
"created_at": "..."
}
],
"has_more": false,
"next_cursor": null
}
トレンドツイートを取得する
{
"method": "GET",
"path": "/twitter/global-trending/tweets",
"query": {
"country": "united-states",
"topic": "technology",
"content": "AI",
"count": 20
}
}
フォロワーをエクスポートする
{
"method": "GET",
"path": "/twitter/followers/openai/50"
}
大量にエクスポートする場合は、カーソル付きの POST /twitter/followers/page、または explore が返すタスクのエンドポイント(/twitter/followers/task/{task_id}/status と /next)を使ってください。
X の記事を Markdown で読む
{
"method": "GET",
"path": "/x/article/2104354931595423762/markdown"
}
エンドポイントのカテゴリ
カタログには読み取り専用のエンドポイントが 54 個、書き込みエンドポイントが 1 個あります。
| カテゴリ | エンドポイント |
|---|---|
trending |
トレンドの国、トピック、コンテンツタグ、トレンドツイート、国別トレンド。 |
search |
高度な検索(単発とページネーション)、ハッシュタグ、キャッシュタグ。 |
users |
ID によるユーザー取得、ユーザー検索、認証バッジと組織の確認、アカウントの状態。 |
tweets |
ツイートの取得、スレッド、類似ツイート、リプライ(件数指定とページネーション)。 |
followers |
フォロワーとフォロー中:最新、件数指定、ページネーション、長時間タスク。 |
engagement |
リツイートしたユーザー、いいねしたユーザー、引用ツイート。 |
communities |
コミュニティの詳細、検索、メンバー、ツイート。 |
lists |
リストの検索、ツイート、メンバー、購読者。 |
timeline |
ユーザーのタイムライン、ツイートとリプライのページ。 |
articles |
ID による X の記事の取得と Markdown での取得。 |
accounts |
アカウントの所在地と「このアカウントについて」の情報。 |
dm |
ユーザーへの DM の到達可否(読み取り専用)。 |
write |
ツイートまたはリプライの投稿。 |
エラー処理
接続が認可されていない場合、ツールは実行されず、クライアントには HTTP 401 または 403 の JSON-RPC エラーが返ります:
{
"jsonrpc": "2.0",
"id": null,
"error": {
"code": 401,
"message": "Sign in through your MCP client, or send your TwexAPI API key in the Authorization header. For pay-per-call without an API key, use /mcp/pay."
}
}
| エラー | 意味 |
|---|---|
401 “Sign in through your MCP client…” |
認証情報がありません。サインインに対応したクライアントはこの応答からサインインを始めます。 |
401 “Invalid or unavailable MCP API token” |
API キーが無効です。 |
401 “Access token is invalid or expired” |
サインインが期限切れか取り消されています。再度サインインしてください。 |
403 “This TwexAPI API key is disabled…” |
ダッシュボードでキーを再度有効にしてください。 |
403 “No usable API key on this account…” |
サインインしたアカウントに有効な API キーがありません。ダッシュボードで作成してください。 |
アカウントのクレジットがなくなっても接続は維持されます。explore は結果を返し、その他のツール呼び出しは API を呼ばずにエラー結果を返します:
{
"error": "No credits left on this TwexAPI account. Top up at https://twexapi.io/dashboard and try again."
}
ツールが実行され、REST API が 2xx 以外を返した場合は、MCP のメタデータと API のエラーを保持してください:
{
"status_code": 429,
"endpoint": "get_global_trending_tweets",
"method": "GET",
"path": "/twitter/global-trending/tweets",
"result": {
"code": 429,
"msg": "Rate limit exceeded. QPS limit: 2 requests per second",
"data": []
}
}
| ステータス | 意味 |
|---|---|
4xx |
パラメーターが無効、リソースが存在しない、または操作が許可されていません。リクエストを修正してから再試行してください。 |
429 |
レート制限を超えました。制限時間が過ぎてから再試行してください。 |
5xx |
サーバー側の障害、または上流の X/Twitter の取得に問題があります。しばらくしてから再試行してください。 |