eToro Trading MCP について
eToro Trading MCPは、eToro APIの操作をエージェント用ツールとして設定するローカルサーバーです。細分化されたツールセットを備え、実資金を動かす操作には別途明示的な安全設定が必要です。
主な機能
- 01生成された197個のAPIツール
- 02選択可能な27のツールセット
- 03デモと実資金操作の個別ゲート
- 04環境変数とファイルによる設定
- 05API変更を毎日確認するレビューPR
活用シーン
- 01エージェントでマーケットデータツールを有効化
- 02デモ取引の操作を設定
- 03利用可能なツールの確認と設定検証
MCP 対応
stdio経由で、選択したeToro API操作をMCPツールとして提供します。ツールセットは初期状態で無効で、実資金を動かす操作には追加の明示的な許可が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y etoro-trading-mcpETORO_API_KEYシークレットeToro application public key (x-api-key); pair with ETORO_USER_KEYETORO_USER_KEYシークレットeToro generated user key (x-user-key); pair with ETORO_API_KEYETORO_ACCESS_TOKENシークレットOAuth bearer token; alternative to the key pair, never bothETORO_ENABLED_TOOLSETSComma-separated toolsets to enable; every toolset is off by defaultETORO_ALLOW_REAL_MONEYSet true to permit real-money mutations in addition to enabling their toolsローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
eToro Trading MCP
eToro の公開 Swagger UI API 用のローカル Model Context Protocol サーバーです。主な目的はAI エージェント向けの設定です。MCP クライアントに一度登録し、エージェントが必要とするツールセットだけを有効にします。コマンドラインはローカルでの確認(tools list、config validate)専用であり、日常的な利用には使いません。
この MCP は eToro API の更新を毎日チェックしています。自動化された日次ジョブが eToro の最新の OpenAPI ドキュメントをダウンロードして、上流の変更を検出し、ツールをすべて再生成して検証したうえでプルリクエストを作成します。自動的にマージまたは公開されることはありません。
AI エージェントと一緒にインストールする
コーディングエージェントまたはデスクトップエージェントに、次の指示を渡してください。
Install and configure this MCP server by following https://github.com/n-kostadinov/etoro-trading-mcp/blob/main/INSTALL.md
エージェント向けガイドはraw Markdownでも利用できます。
内容
- 197 個の細分化された MCP ツール。eToro Swagger UI から生成され、REST 操作ごとに 1 つのツールが用意されています。
- 27 個のツールセットはすべてデフォルトで無効です。設定でツールセットまたはツールを一覧表示する方法だけが、それらを有効にする方法です。ツールセットを有効にすると、その中のすべてのツールが有効になります。
- デモで安全に使える設定例:
ETORO_ENABLED_TOOLSETS=market-data,trading-demoによって 28 個のツール(market-data ツール 11 個と、現在の demo-trading ツール 17 個)が有効になり、実際の資金には触れません。 - 実資金を扱う変更操作は、対象のツールを有効にし、さらに
ETORO_ALLOW_REAL_MONEY=trueを設定しない限り非表示のままです。 - レガシー操作は、明示的に
includeDeprecatedを指定した場合にのみ利用できます。 - TypeScript、Node.js 22 以降、stdio トランスポート、1 つの npx コマンドで利用でき、グローバルインストールは不要です。
- リクエスト ID の自動付与、共有レート制限の追跡、保守的な再試行、構造化された HTTP レスポンス、認証情報のマスキングに対応しています。
簡単な例:エージェントを設定する
すべてのツールセットはデフォルトで無効です。一般的で、デモで安全に使える MCP クライアントの設定例:
{
"mcpServers": {
"etoro": {
"command": "npx",
"args": ["-y", "[email protected]"],
"env": {
"ETORO_API_KEY": "<user-supplied-application-key>",
"ETORO_USER_KEY": "<user-supplied-user-key>",
"ETORO_ENABLED_TOOLSETS": "market-data,trading-demo",
"ETORO_ALLOW_REAL_MONEY": "false"
}
}
}
}
認証情報は環境変数のみで設定します。API キーペアとユーザーキー、または OAuth ベアラートークンを使用できます。両方を同時に使用したり、ポータルのパスワードを使用したりすることはできません。
x-api-key と x-user-key の確認方法
キーペアは eToro のAPI Key Managementページで取得します。注釈付きのスクリーンショットを開くと、それぞれの値を正確に確認できます。
x-api-key— ページ上部に表示されるPublic Keyです。アプリケーションを識別するもので、このサーバーにはETORO_API_KEYとして設定します。x-user-key— Create Your API Keyから作成するキーのうちの 1 つです。Generated Keysの一覧に表示され、eToro ユーザーを識別するもので、ETORO_USER_KEYとして設定します。
認証が必要なリクエストでは、毎回この 2 つのヘッダーを一緒に送信します。まずは読み取りと書き込みの権限を持つデモキーを使用してください。詳しい手順はINSTALL.mdを参照してください。
ツールを有効にする方法
| 目的 | 環境変数 | JSON ファイルのプロパティ |
|---|---|---|
| ツールセットを有効にする(各ツールセット内のすべてのツール) | ETORO_ENABLED_TOOLSETS=market-data,trading-demo | "enabledToolsets": ["market-data", "trading-demo"] |
| 個別のツールを有効にする | ETORO_ENABLED_TOOLS=getRates,getMe | "enabledTools": ["getRates", "getMe"] |
| レガシーツールを許可する | ETORO_INCLUDE_DEPRECATED=true | "includeDeprecated": true |
| 実資金の変更操作を許可する | ETORO_ALLOW_REAL_MONEY=true | "allowRealMoney": true |
環境変数のリストはカンマ区切りです。JSON プロパティには配列を指定します。優先順位は、組み込みのデフォルト値 < JSON ファイル(ETORO_CONFIG)< 環境変数 < CLI フラグです。上位の設定はリストを結合せず、置き換えます。同じ例を明示的な JSON ファイルとして指定する場合(ETORO_CONFIG=/absolute/path/to/etoro-mcp.config.json):
{
"$schema": "https://raw.githubusercontent.com/n-kostadinov/etoro-trading-mcp/main/schemas/config.schema.json",
"enabledToolsets": ["market-data", "trading-demo"],
"includeDeprecated": false,
"allowRealMoney": false
}
すべての設定については、Configuration を参照してください。
選択とは別に、2 つの安全ゲートがあります。レガシーツールを使うには、追加で includeDeprecated が必要です。また、実資金の変更操作を使うには、追加で allowRealMoney が必要です。実資金の変更操作は、trading-real、copy-trading、transfer、sub-accounts-etoro-trading の 4 つのツールセットに含まれています。そのため、これらのツールセットを有効にしても、2 つ目のゲートも設定されていない限り、実資金を扱う操作は公開されません。
利用可能なツールセット(27)
| ツールセット | 現行 | レガシー | ツールセット | 現行 | レガシー | |
|---|---|---|---|---|---|---|
agent-portfolios | 7 | 3 | rankings | 7 | 0 | |
app-data | 1 | 0 | social-feeds | 37 | 4 | |
balances | 6 | 0 | sso-applications | 5 | 0 | |
cash-accounts | 1 | 0 | sso-scopes | 1 | 0 | |
clubs | 1 | 0 | sub-accounts | 2 | 0 | |
copy-trading ⚠️ | 5 | 0 | sub-accounts-etoro-trading ⚠️ | 6 | 0 | |
copy-trading-demo | 5 | 0 | top-assets | 1 | 0 | |
data | 4 | 0 | trading-demo | 17 | 6 | |
identity | 1 | 0 | trading-real ⚠️ | 17 | 6 | |
market-data | 11 | 0 | transfer ⚠️ | 7 | 0 | |
notifications | 2 | 0 | user-stats | 4 | 0 | |
pi-data | 1 | 0 | users-info | 6 | 0 | |
portfolio-search | 1 | 0 | watchlists | 18 | 0 | |
price-alerts | 4 | 0 |
⚠️ は、実資金の変更操作を含むツールセットを示します(選択にかかわらず、allowRealMoney による制限が適用されます)。「現行」ツールはツールセットを有効にすると使えます。「レガシー」ツールを使うには、追加で includeDeprecated が必要です。すべての操作 ID はツールリファレンスに、ツールセットの内訳はツールセットに記載されています。
ローカルでの確認(補足)
これらのコマンドで CLI が eToro に接続することはなく、認証情報なしで実行できます。
npx -y [email protected] tools list --all # every operation and its state
npx -y [email protected] config validate # effective settings and warnings
ドキュメント
- インストール — エージェントの完全なセットアップガイドと手動セットアップガイド
- 設定 — ファイル/環境変数/CLI の優先順位とすべての設定項目
- ツールセット — 27 種類すべてのツールセットとその件数
- ツールリファレンス — 生成されるすべてのツール、リクエスト、スコープの代替手段、および置き換え
- トレーディング — デモ取引と実資金での取引、スコープ、非同期注文、安全性
- セキュリティ — 認証情報、ローカルファイル、診断、信頼できないコンテンツ
- トラブルシューティング — 起動、認証、制限、設定に関する問題
安全性とプロジェクトの状況
これは独立した非公式プロジェクトです。eToro との提携、承認、スポンサー関係はありません。eToro の名称および商標は eToro に帰属します。このリポジトリの内容は投資助言ではありません。デモ取引では仮想資金を使用します。実取引では実際に損失が発生する可能性があり、明示的なオプトインが 2 回必要です。
現在のリリース:1.0.1。eToro Swagger UI v1.400.0 から生成されています。eToro が公開する API に変更があると、日次の自動処理でレビュー用プルリクエストが作成されます。自動でマージ、タグ付け、公開されることはありません。
貢献
MIT ライセンスです。開発、リリース履歴、報告方法については、CONTRIBUTING.md、CHANGELOG.md、SECURITY.md をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。