mcpField
C
Capital.com MCP Server

Capital.com MCP Server

ローカル
github.com金融データ016 週間前に更新

Capital.com MCP Server について

Capital.com MCP Serverは、Capital.comの市場データと取引操作をMCPクライアントに提供するセルフホスト可能なPythonサーバーです。取引はプレビューと確認の二段階で、デフォルトでは無効化され、許可リストや上限で制御できます。

主な機能

  1. 01市場データと口座ツール
  2. 02二段階の取引実行
  3. 03許可リストと取引規模の制限
  4. 04ウォッチリストとリアルタイム配信ツール
  5. 05リソースとガイド付きプロンプト

活用シーン

  1. 01銘柄の価格や市場情報の確認
  2. 02デモ口座での取引のプレビューと確認
  3. 03ウォッチリスト、価格、ポートフォリオ状況の監視

MCP 対応

stdioまたはHTTP経由で、MCPクライアントに42のツール、4つのリソース、7つのプロンプトを提供します。変更操作には確認が必要で、取引はプレビュー後に実行する方式です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"simontarara62-capitalcom": {
"command": "uvx",
"args": [
"capitalcom-mcp"
],
"env": {
"CAP_ENV_FILE": "<CAP_ENV_FILE>",
"CAP_API_KEY": "<CAP_API_KEY>",
"CAP_IDENTIFIER": "<CAP_IDENTIFIER>",
"CAP_API_PASSWORD": "<CAP_API_PASSWORD>",
"CAP_ENV": "<CAP_ENV>",
"CAP_ALLOW_TRADING": "<CAP_ALLOW_TRADING>",
"CAP_ALLOWED_EPICS": "<CAP_ALLOWED_EPICS>"
}
}
}
}
起動コマンドuvx capitalcom-mcp
設定が必要な環境変数
CAP_ENV_FILEPath to a .env file holding credentials (alternative to inline secrets).
CAP_API_KEYシークレットCapital.com API key (use a DEMO key first).
CAP_IDENTIFIERシークレットCapital.com account identifier (email).
CAP_API_PASSWORDシークレットCapital.com API password.
CAP_ENVEnvironment: demo or live (default: demo).
CAP_ALLOW_TRADINGSet true to enable order execution (off by default).
CAP_ALLOWED_EPICSComma-separated EPIC allowlist for trading, or ALL.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypicapitalcom-mcp0.3.4

ツール

42

掲載時のツール一覧 · 3 週間前に更新

このツールにパラメーターはありません。

詳細

Capital.com MCP サーバー

FastMCP 上で Python を使って構築された、Capital.com Open API 向けのセルフホスト可能な Model Context Protocol(MCP) サーバーです。stdio または HTTP 経由で、あらゆる MCP クライアントに 安全性を考慮した、ガード機能付きの取引・市場データ用ツールを42個 提供します。二段階の実行、許可リスト、デモ優先に対応しています。テスト済みの capitalcom-cli ブローカーエンジン(SDK)を基盤としています。

対応クライアント:Claude Desktop · Claude Code · Cursor · VS Code(Copilot)· Windsurf · ChatGPT — あらゆる MCP クライアント。

PyPI version Python versions CI License: Apache-2.0 MCP Registry Glama quality score PyPI downloads

⚠️ 非公式・教育目的です。 Capital.com とは提携していません。取引にはリスクが伴い、これは金融アドバイスではありません。取引はデフォルトで無効になっています。すべての取引は、許可リストとサイズ・レート制限を備えた二段階方式(プレビュー → 確認 → 実行)です。まずはデモ口座でお試しください。Apache-2.0 ライセンスです。

インストール

リポジトリのクローンは不要です。uvx が隔離された使い捨て環境で実行し、テスト済みの最新リリースを常に取得します。

uvx capitalcom-mcp --help        # smoke test

または、pipx で永続的なコマンドをインストールします。

pipx install capitalcom-mcp
本番環境/実資金利用向けのバージョン固定

uvx capitalcom-mcp は常に公開済みの最新リリースを実行します。お試しには問題ありませんが、本番環境や実資金で利用する場合は、予期しないアップデートでツールの動作が変わらないよう、正確なバージョンを固定してください。

{
  "mcpServers": {
    "capitalcom": {
      "command": "uvx",
      "args": ["capitalcom-mcp==0.3.4"],
      "env": { "CAP_ENV_FILE": "/Users/you/.config/capital-mcp/.env" }
    }
  }
}

CLI 形式は uvx capitalcom-mcp==0.3.4 run … です。確認済みのバージョンに固定し、変更履歴を読んだうえで、意図的にバージョンを上げてください。

1. 認証情報を追加する(一度だけ)

Capital.com アプリで API キーを取得します。Settings → API integrations を開き、まずデモキーを作成してください。その後、ウィザードを実行します。ウィザードは 0600 のファイルを書き込み、クライアント設定用の正確なスニペットを表示します。

uvx capitalcom-mcp init

~/.config/capital-mcp/.env に書き込まれます。いつでも確認できます(シークレットは表示されません)。

uvx capitalcom-mcp doctor

有効な設定全体を(値を伏せてオフラインで)確認するか、認証情報で実際に認証できることを確認できます。

uvx capitalcom-mcp config          # effective settings + credential source
uvx capitalcom-mcp doctor --login  # verify authentication against the API

シークレットマネージャーを使う場合は、CAP_API_KEY_CMD/CAP_IDENTIFIER_CMD/ CAP_API_PASSWORD_CMD に、シークレットを出力するコマンド(例: op read op://vault/...、pass ...)を設定します。シークレットは起動時に取得され、ディスクにもクライアント設定にも書き込まれません。

2. サーバーをクライアントに追加する

すべてのクライアントで、同じ command/args/env の形式を使用します。"CAP_ENV_FILE": "<path from init>" を貼り付けると、シークレットをクライアント設定ファイルに含めずに済みます。または、CAP_API_KEY/CAP_IDENTIFIER/CAP_API_PASSWORD を env に直接設定します。

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS)/ %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "capitalcom": {
      "command": "uvx",
      "args": ["capitalcom-mcp"],
      "env": { "CAP_ENV_FILE": "/Users/you/.config/capital-mcp/.env" }
    }
  }
}
Claude Code
claude mcp add --transport stdio \
  --env CAP_ENV_FILE=/Users/you/.config/capital-mcp/.env \
  capitalcom -- uvx capitalcom-mcp
Cursor

~/.cursor/mcp.json(グローバル)または .cursor/mcp.json(プロジェクト):

{
  "mcpServers": {
    "capitalcom": {
      "command": "uvx",
      "args": ["capitalcom-mcp"],
      "env": { "CAP_ENV_FILE": "/Users/you/.config/capital-mcp/.env" }
    }
  }
}
VS Code (Copilot)

.vscode/mcp.json — ルートキーは servers で、type: "stdio" である点に注意してください。

{
  "servers": {
    "capitalcom": {
      "type": "stdio",
      "command": "uvx",
      "args": ["capitalcom-mcp"],
      "env": { "CAP_ENV_FILE": "/Users/you/.config/capital-mcp/.env" }
    }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "capitalcom": {
      "command": "uvx",
      "args": ["capitalcom-mcp"],
      "env": { "CAP_ENV_FILE": "/Users/you/.config/capital-mcp/.env" }
    }
  }
}
ChatGPT

ChatGPT では リモートサーバーが必要です(stdio はサポートされていません)。詳しくは リモート/VPS ホスティングを参照してください。サーバーに HTTPS 経由でアクセスできるようになったら、 開発者モード(Settings → Connectors → Advanced)を有効にし、末尾が /mcp のサーバー URL を追加します。ChatGPT の Deep Research コネクターは、このサーバーが実装する読み取り専用ツール search と fetch を呼び出します。すべてのカスタムツールを使用するには、開発者モードが必要です。

リモート/VPS ホスティング

stdio の代わりに streamable-HTTP を使用して実行します。

CAP_ENV_FILE=/home/you/.config/capital-mcp/.env \
  capitalcom-mcp run --transport http --host 0.0.0.0 --port 8000
# endpoint: http://<host>:8000/mcp

または、環境変数を使用します(systemd で便利です):CAP_MCP_TRANSPORT=http、CAP_MCP_HOST、CAP_MCP_PORT。一般公開する場合は、TLS を終端するリバースプロキシの背後に配置してください。

内容 — ツール、リソース、プロンプト

このサーバーは 42 個のツール、4 個のリソース、7 個のガイド付きプロンプトを公開します。ChatGPT Deep Research 用の 2 つのアダプター(search、fetch)を除き、すべてのツール名には cap_ が付いています。変更を伴うツールには confirm=true が必要です。取引は 2 段階で実行されます。すべての機能は安定した契約として提供されています。詳しくはAPI の安定性を参照してください。

セッションとアカウント
ツール内容
cap_session_status現在のログイン/セッション状態。
cap_session_login認証します(force=true を指定することもできます)。
cap_session_pingキープアライブ/生存確認。
cap_session_logoutセッションを終了します。
cap_session_switch_accountアクティブな取引アカウントを切り替えます。
cap_account_listアカウントとアクティブなアカウント ID の一覧。
cap_account_preferences_getアカウント設定を読み取ります(例:ヘッジモード)。
cap_account_preferences_set設定を更新します(confirm が必要です)。
cap_account_history_activityアカウントのアクティビティ履歴。
cap_account_history_transactions取引履歴。
cap_account_demo_topupデモ残高を追加します(confirm が必要です)。
マーケットデータ
ツール内容
cap_market_search用語から金融商品を検索します。
cap_market_getEPIC の詳細なマーケット情報とスナップショット。
cap_market_navigation_rootマーケットナビゲーションの最上位ノード。
cap_market_navigation_nodeナビゲーションノードを掘り下げます。
cap_market_prices過去の OHLC ローソク足。
cap_market_sentimentクライアントのロング/ショートポジション比率。
取引(読み取り → プレビュー → 実行 → 管理)
ツール内容
cap_trade_positions_listオープンポジション。
cap_trade_positions_getdeal ID で指定した 1 件のポジション。
cap_trade_orders_list有効な(未約定の)注文。
cap_trade_confirm_get参照情報から取引確認を取得します。
cap_trade_confirm_wait取引が確定する(またはタイムアウトする)までポーリングします。
cap_trade_preview_positionフェーズ 1:成行ポジションを検証します(実行はしません)。
cap_trade_preview_working_orderフェーズ 1:有効注文を検証します。
cap_trade_execute_positionフェーズ 2:プレビュー済みのポジションを実行します(confirm)。
cap_trade_execute_working_orderフェーズ 2:プレビュー済みの有効注文を発注します(confirm)。
cap_trade_positions_closeポジションを決済します(confirm)。
cap_trade_orders_cancel有効注文をキャンセルします(confirm)。
cap_trade_positions_amendポジションのストップ/リミットを変更します(confirm)。
cap_trade_orders_amend有効注文を変更します(confirm)。
ウォッチリスト
ツール内容
cap_watchlists_listウォッチリストの一覧。
cap_watchlists_get1 つのウォッチリストに含まれるマーケットを取得します。
cap_watchlists_createウォッチリストを作成します(confirm)。
cap_watchlists_add_marketEPIC を追加します(confirm)。
cap_watchlists_remove_marketEPIC を削除します(confirm)。
cap_watchlists_deleteウォッチリストを削除します(confirm)。
ストリーミング(WebSocket。CAP_WS_ENABLED=true が必要)
ツール内容
cap_stream_pricesEPIC のリアルタイムの買値/売値更新。
cap_stream_candlesOHLC ローソク足のリアルタイム更新。
cap_stream_alerts価格のしきい値アラート。
cap_stream_portfolioポジション/損益のリアルタイム更新。
ChatGPT Deep Research アダプター
ツール機能
search読み取り専用の商品検索(ChatGPT コネクターの仕様)。
fetchID を指定した読み取り専用の商品取得(ChatGPT コネクターの仕様)。
リソース
URI返される内容
cap://statusセッション/接続のステータススナップショット。
cap://risk-policy有効なリスクポリシー(取引フラグ、上限)。
cap://allowed-epics取引可能な EPIC の許可リスト。
cap://market-cache/{epic}EPIC のキャッシュ済み市場スナップショット。
ガイド付きプロンプト

プロンプトは、クライアントが名前で起動できる再利用可能なワークフローです。上記のツールを連携させる手順ごとのガイダンスを出力しますが、単独で取引を行うことはありません。

プロンプト目的
market_scanウォッチリストをスキャンして機会を探します(価格+センチメント)。
trade_proposalリスクに応じた取引を設計し、プレビューで検証します。
execute_trade事前にプレビューした取引を安全に実行します。
position_reviewオープンポジションと有効な注文を確認します。
live_price_monitor価格をストリーミングし、しきい値を超える動きを検出します。
real_time_alertsライブ価格アラートを設定して監視します。
live_portfolio_monitorしきい値を設定して、ポートフォリオの損益をライブでストリーミングします。

安全性モデル

  • CAP_ALLOW_TRADING=true かつ EPIC が CAP_ALLOWED_EPICS(または ALL)に含まれていない限り、取引は無効です。
  • 2 段階の実行方式です。変更操作には confirm=true が必要です。
  • サイズ、オープンポジション、1 日あたりの注文数に上限があります。CAP_DRY_RUN=true の場合、すべての実行がブロックされます。TIMEOUT の確認結果は不確定です。状態を照合し、むやみに再試行しないでください。

開発

make install   # editable MCP + capitalcom-cli SDK from PyPI
make check     # ruff + mypy + pytest (offline; no network/credentials)

エンドツーエンドテストでは、MCP を介してすべてのツールをデモ API で実行します(読み取り、ウォッチリスト、アカウント切り替え、プレビュー/実行/変更/クローズ/キャンセル、ストリーミング)。 実際のデモ注文を行い、後処理も行うため、取引とストリーミングを有効にしたデモ用 .env を使用してください。

# demo .env: CAP_ALLOW_TRADING=true, CAP_ALLOWED_EPICS=GOLD, CAP_WS_ENABLED=true
CAP_MCP_E2E=1 pytest -m e2e -v

貢献

貢献を歓迎します。これはコミュニティプロジェクトです。まずは CONTRIBUTING.md を確認し、 good first issues をご覧ください。今後の方向性については roadmap をご確認ください。アーキテクチャと「ツールを追加する」手順の実例は docs/extending.md にあります。

ライセンス

Apache-2.0。LICENSE と NOTICE をご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。