X MCP — X API
任意の MCP 対応 AI ツール(Grok Build、Cursor、Claude、VS Code など)を X API に直接接続します。モデルは、あなたの X アカウントの権限で、全アーカイブ検索、ユーザー検索、ブックマーク管理、トレンドやニュースの取得、Articles の下書き作成までを実行できます。 X API はhttps://api.x.com/mcp で Streamable HTTP 形式のホスト型 MCP サーバー(プロトコル 2025-06-18、serverInfo: xmcp)を公開しています。これにはオープンソースの xurl mcp ブリッジ経由でアクセスします。ブリッジが OAuth を処理し、呼び出しごとに最新の Bearer トークンを差し込みます。
機能の概要
仕組み
X の OAuth では あなた自身の 開発者アプリが必要です。動的クライアント登録はなく、api.x.com/mcp はネイティブの MCP OAuth ディスカバリを公開していません。そのため、クライアントを URL に直接向ける代わりに、小さなローカルブリッジを実行します。このブリッジはアプリの ID を保持し、一度きりのログインを実行して、トークンを最新の状態に保ちます。
- ブリッジは npm ランチャー(
npx)経由で動作するため、個別のインストール手順は不要 です。 - キャッシュされたトークンがない初回実行時 には、ブラウザを開いて 1 回限りの OAuth2 ログインを行い、その後はトークンをキャッシュして 自動的に更新 し続けます。
- すべての診断情報は stderr に出力され、stdout は JSON-RPC 専用のクリーンなチャネル に保たれます。
はじめに
2 つのルートのいずれかを選択します:- シンプル — App-only Bearer。 アプリの Bearer トークンを MCP クライアントの
Authorizationヘッダーに貼り付けます。ブリッジもブラウザログインも不要です。読み取り専用のエンドポイントで、ユーザーコンテキストはありません(あなたとしての操作はできません)。カスタムヘッダー付きのリモート MCP に対応するクライアントで動作します。 - フル —
xurl mcpブリッジ(OAuth 2.0 ユーザーコンテキスト)。 ローカルブリッジが OAuth 2.0 PKCE ログインを処理し、トークンを自動更新するため、モデルはあなたのアカウントのスコープで動作します。書き込み(ブックマーク、Articles)やユーザーコンテキストを使うツールには必須です。
シンプルルート(app-only Bearer)
- X 開発者ポータル で X アプリを作成 します。
- アプリの “Keys and tokens” ページから App-only Bearer トークンをコピー します。
- クライアントを
https://api.x.com/mcpに向け、トークンをAuthorizationヘッダーとして設定します — 後述の App-only(URL に直接、ブリッジなし) のスニペットを参照してください。
フルルート(xurl ブリッジ)
- OAuth 2.0 を有効にした X アプリを作成 します。
-
アプリにリダイレクト URI
http://localhost:8080/callbackを 登録 します(初回のブラウザログインに必要)。別のものを使う場合は、REDIRECT_URIを設定し、そちらを登録してください。 -
CLIENT_IDとCLIENT_SECRETをコピー します — これらをクライアント設定に記述します。xurl auth oauth2を手動で実行する場合(たとえば下記のヘッドレスフロー)は、事前にそのシェルで環境変数としてエクスポートしてください — これらがないとブラウザでのログインが失敗します。 -
Node.js がインストール済み であること(
npx用)。 -
xurl のインストール を推奨します:
初回ログインにはブラウザが必要です。 ヘッドレス / リモートマシンでは、まず
xurl auth oauth2 --headless でアウトオブバンド認証(コード貼り付け方式)を行ってください。その後はブリッジがキャッシュ済みトークンを再利用します。ヘッドレス を参照。クライアントを接続する
1. Grok Build
-e フラグはサーバーの環境変数になり、-- 以降の引数は npx に渡されます):
doctor 実行時)に X のログインのためにブラウザが開きます — 一度完了すれば設定は完了です。
2. Cursor
~/.cursor/mcp.json(グローバル、すべてのプロジェクト)または .cursor/mcp.json(このプロジェクトのみ)を作成します:
3. Claude Desktop
claude_desktop_config.json を編集します(macOS: ~/Library/Application Support/Claude/、Windows: %APPDATA%\Claude\):
4. VS Code(GitHub Copilot / Agent モード)
.vscode/mcp.json に追加します:
5. 任意の MCP クライアント
xurl ブリッジ(stdio):xurl をネイティブにインストール済みの場合は、command / args を "command": "xurl", "args": ["mcp", "https://api.x.com/mcp"] に置き換えてください。
App-only Bearer(リモート HTTP):
認証
OAuth 2.0 ユーザーコンテキスト(デフォルト)
ブリッジは あなた自身として 認証(PKCE フロー)するため、ツールはあなたのアカウントのスコープで動作します。資格情報の解決順序は次のとおりです:CLIENT_ID / CLIENT_SECRET 環境変数 → ~/.xurl のアクティブなアプリ。トークンは ~/.xurl にキャッシュされ、自動的に更新されます(401 の後の強制更新を含む)。
初回のブラウザログイン
キャッシュされたトークンがない場合、ブリッジは stderr に出力してブラウザを開きます:startup_timeout_sec が必要な理由です。
ヘッドレス / リモートマシン
ブラウザが利用できない場合は、一度アウトオブバンドで認証してからクライアントを起動します:App-only(URL に直接、ブリッジなし)
読み取り系のエンドポイントについては、ブリッジを省略し、静的な App-only Bearer トークン を使ってクライアントを URL に直接向けることもできます。カスタムヘッダーをサポートするリモート MCP 対応クライアントに便利です:複数のアプリとアカウント
OAuth ログインは、ブラウザを開いたときにログインしている X アカウント を認可します — 必ずしもアプリを所有するアカウントとは限りません。サブアカウントや bot アカウントとして投稿する場合は、ログインを完了する前にブラウザ側でそのアカウントに切り替えてください(または、以前に認可済みのユーザーを選ぶために
-u を使用してください)。args に "--app", "my-app" または "-u", "alice" を追加します。
設定リファレンス
高度な環境変数の上書き(通常は不要):
AUTH_URL、TOKEN_URL、API_BASE_URL、INFO_URL。
検証とトラブルシューティング
セキュリティとベストプラクティス
~/.xurlとアクセストークンはシークレットとして扱ってください — チャット、ログ、共有設定に貼り付けないでください。生のシークレットをコミットするよりも、環境変数を参照するプロジェクト単位の.mcp.json/.grok/config.tomlの利用を推奨します。- MCP には 専用のアプリ を使用し、必要なスコープのみを付与してください。
- 書き込みはレート制限の対象 です(ブックマーク、
article_publish)。読み取りより厳しく、時折429が発生することを想定してバックオフしてください。 - ブリッジはローカルで動作します — 認証情報がマシンを離れることはなく、Bearer トークンとして TLS 経由で
api.x.comに送信されるだけです。
Docs MCP — ドキュメント検索
X API ドキュメント用の MCP サーバーがhttps://docs.x.com/mcp でホストされています。AI ツールに接続することで、ワークフローを離れることなくドキュメントページを検索・閲覧できます。
利用可能なツール
設定
ドキュメント MCP サーバーを MCP クライアントの設定に追加します:両方のサーバーを併用する
両方の MCP サーバーを同時に接続できます。これにより、AI アシスタントはドキュメントの参照 と API の呼び出しの両方を行えるようになります。 Grok Build(~/.grok/config.toml):
mcp.json):