| サーバー | できること | URL |
|---|---|---|
| X MCP | X API エンドポイントを呼び出す(ポスト検索、ユーザー検索、ブックマーク、トレンド、ニュース、Articles など) | https://api.x.com/mcp(ホスト型。xurl mcp 経由で接続) |
| Docs MCP | X API ドキュメントを検索・閲覧する | https://docs.x.com/mcp(ホスト型) |
X MCP — X API
任意の MCP 対応 AI ツール(Grok Build、Cursor、Claude、VS Code、…)を X API に直接接続し、全アーカイブ検索、ユーザー検索、ブックマーク管理、トレンドやニュースの取得、Articles の下書きまで、あなたの X アカウントの権限で実行できます。 X API はhttps://api.x.com/mcp で Streamable HTTP 形式のホスト型 MCP サーバー(プロトコル 2025-06-18、serverInfo: xmcp)を公開しています。これにはオープンソースの xurl mcp ブリッジ経由でアクセスします。ブリッジが OAuth を処理し、呼び出しごとに最新の Bearer トークンを差し込みます。
機能の概要
| カテゴリ | モデルが実行できること |
|---|---|
| Posts | ポストの取得、いいねした人/リポストした人/引用した人の取得、直近のカウント |
| Search | 全アーカイブのポスト検索、ユーザー検索、ニュース検索 |
| Users | 現在のユーザーの解決、id/ハンドルからの検索、ユーザーのポスト、タイムライン、メンションの読み取り |
| Bookmarks | ブックマークの一覧/追加/削除、ブックマークフォルダの管理 |
| News & Trends | ニュース記事の取得、ロケーション(WOEID)のトレンドの取得 |
| Articles | Articles の下書き作成と公開 |
仕組み
X の OAuth では あなた自身の 開発者アプリが必要です(動的クライアント登録はなく、api.x.com/mcp はネイティブの MCP OAuth ディスカバリを公開していません)。そのため、クライアントを URL に直接向ける代わりに、小さなローカルブリッジを実行します。このブリッジはアプリの ID を保持し、一度きりのログインを実行して、トークンを最新の状態に保ちます。
- ブリッジは npm ランチャー(
npx)経由で動作するため、個別のインストール手順は不要です。 - キャッシュされたトークンがない初回実行時には、ブラウザを開いて 1 回限りの OAuth2 ログインを行い、その後はトークンをキャッシュして 自動的に更新 し続けます。
- すべての診断情報は stderr に出力され、stdout は JSON-RPC 専用のクリーンなチャネル に保たれます。
開始する前に
- X 開発者ポータル で OAuth 2.0 を有効にした X アプリを作成 します。
-
アプリにリダイレクト URI
http://localhost:8080/callbackを 登録 します(初回のブラウザログインに必要)。別のものを使う場合は、REDIRECT_URIを設定し、そちらを登録してください。 -
CLIENT_IDとCLIENT_SECRETをコピー します — これらをクライアント設定に記述します。 -
Node.js がインストール済み であること(
npx用)。 -
xurl のインストール を推奨します:
初回ログインにはブラウザが必要です。 ヘッドレス/リモートマシンでは、まず
xurl auth oauth2 --headless でアウトオブバンド認証(コード貼り付け方式)を行ってください。その後はブリッジがキャッシュ済みトークンを再利用します。ヘッドレス を参照。クライアントを接続する
1. Grok Build
1 つのコマンドでサーバーを追加します(-e フラグはサーバーの環境変数になり、-- 以降の引数は npx に渡されます):
~/.grok/config.toml に以下を書き込みます(直接編集することもできます):
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 クライアント
汎用の stdio 設定は以下のとおりです:| フィールド | 値 |
|---|---|
command | npx |
args | ["-y", "@xdevplatform/xurl", "mcp", "https://api.x.com/mcp"] |
env | CLIENT_ID, CLIENT_SECRET |
| 起動タイムアウト | 300 秒以上(初回ログインが完了できるように) |
xurl をネイティブにインストール済みの場合は、command/args を "command": "xurl", "args": ["mcp", "https://api.x.com/mcp"] に置き換えてください。
認証
OAuth 2.0 ユーザーコンテキスト(デフォルト)
ブリッジは あなた自身として 認証(PKCE フロー)するため、ツールはあなたのアカウントのスコープで動作します。資格情報の解決順序は:CLIENT_ID/CLIENT_SECRET 環境変数 → ~/.xurl のアクティブなアプリ。トークンは ~/.xurl にキャッシュされ、自動的に更新されます(401 の後の強制更新を含む)。
初回のブラウザログイン
キャッシュされたトークンがない場合、ブリッジは stderr に出力してブラウザを開きます:startup_timeout_sec が必要な理由です。
ヘッドレス / リモートマシン
ブラウザが利用できない場合は、一度アウトオブバンドで認証してからクライアントを起動します:App-only(URL に直接、ブリッジなし)
読み取り系のエンドポイントについては、ブリッジを省略し、静的な App-only Bearer トークン を使ってクライアントを URL に直接向けることもできます — カスタムヘッダーをサポートするリモート MCP 対応クライアントに便利です:複数のアプリとアカウント
args に "--app", "my-app" または "-u", "alice" を追加します。
設定リファレンス
| 設定 | 場所 | 注記 |
|---|---|---|
CLIENT_ID / CLIENT_SECRET | env | X アプリの資格情報(または ~/.xurl に登録されたアプリを使用) |
REDIRECT_URI | env | コールバックを上書きします。アプリに登録されている必要があります。デフォルトは http://localhost:8080/callback |
startup_timeout_sec | クライアント設定 | 初回ログインを完了できるよう 300 以上 に設定 |
[URL] 位置引数 | args | デフォルトは https://api.x.com/mcp |
--app NAME | args | 特定の登録済みアプリを使用 |
-u, --username | args | 特定の OAuth2 ユーザーとして動作 |
AUTH_URL、TOKEN_URL、API_BASE_URL、INFO_URL。
検証とトラブルシューティング
| 症状 | 原因と対処 |
|---|---|
| クライアントが起動時にタイムアウトする | startup_timeout_sec を 300 以上に上げる。ブリッジはブラウザログインを待っています |
| ブラウザが開かない | ディスプレイがない(ヘッドレス) → まず xurl auth oauth2 --headless を実行。npx が解決できることを確認 |
401 / token refresh failed | アプリの資格情報が誤っているか、リフレッシュトークンが失効 → ログインを再実行(xurl auth oauth2 [--app NAME]) |
| ブラウザでリダイレクト/コールバックエラー | http://localhost:8080/callback がアプリに登録されていない(または REDIRECT_URI が不一致) |
ログイン後に client-not-enrolled | アプリが適切な X パッケージ/環境にない → ポータルで Pay-per-use + Production に移動 |
npx が古いバージョンを取得する | プライベートレジストリミラーがデフォルトになっている → args に --registry=https://registry.npmjs.org/ を固定する |
| 出力が空または文字化けする | クライアントを --verbose で実行しないこと。stdout は JSON-RPC 専用のクリーンなチャネルである必要があります |
セキュリティとベストプラクティス
~/.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 ツールに接続することで、ワークフローを離れることなくドキュメントページを検索・閲覧できます。
利用可能なツール
| ツール | 説明 |
|---|---|
search_x | X ドキュメント全体から関連情報、コード例、API リファレンス、ガイドを検索 |
get_page_x | パスを指定してドキュメントページの完全なコンテンツを取得 |
設定
ドキュメント MCP サーバーを MCP クライアントの設定に追加します:両方のサーバーを併用する
両方の MCP サーバーを同時に接続できます。これにより、AI アシスタントはドキュメントの参照 と API の呼び出しの両方を行えるようになります。 Grok Build(~/.grok/config.toml):
mcp.json):
OpenAPI 仕様
X API v2 のすべてのエンドポイントに対する機械可読な API 仕様です。| リソース | URL |
|---|---|
| OpenAPI Spec (JSON) | https://api.x.com/2/openapi.json |