Integrations
Supports configuration management through .env files, allowing secure storage of API credentials and other environment variables needed for the Luno exchange integration.
Provides real-time cryptocurrency price information and trading capabilities through the Luno exchange, including market overview, account balance queries, order management, and transaction history retrieval for Bitcoin and other cryptocurrencies.
Enables version control and codebase management for the MCP server, supporting cloning of the repository during installation.
Luno MCP サーバー
Luno暗号通貨取引API用のモデルコンテキストプロトコル(MCP)サーバー。このサーバーは、AIモデルとアプリケーションが暗号通貨取引用のLuno APIと連携するための標準化されたインターフェースを提供します。
特徴
- Luno API経由のリアルタイム暗号通貨価格情報
- すべての取引ペアの市場概要
- 口座残高照会
- 注文管理(発注、キャンセル、ステータス)
- 取引履歴の取得
- 料金情報
- 標準化されたJSON-RPC 2.0インターフェース
- AIアプリケーションとのシンプルな統合
前提条件
- Python 3.8 以上 (Python 3.9 以上を推奨)
- パッケージ管理のための
uv
- APIキー付きのLunoアカウント(全機能対応)
インストール
- このリポジトリをクローンする
uv
を使って仮想環境を作成する
- 依存関係をインストールする
- Luno API 資格情報を設定します (1 つの方法を選択):
Docker サポート
Docker を使用して MCP サーバーを実行すると、さまざまなプラットフォーム間での展開が容易になり、環境の一貫性も確保できます。
Docker Compose の使用(推奨)
- サンプル環境ファイルをコピーし、資格情報を設定します。
- サーバーを起動します。
サーバーは、WebSocket モードでws://localhost:8765
で利用できるようになります。
- ログを表示:
- サーバーを停止します。
Dockerを直接使用する
イメージをビルドします。
コンテナを実行します。
AIアシスタントと併用する
Docker コンテナを起動したら、さまざまな AI アシスタントを接続して Luno MCP サーバーを使用できます。
カーソル
カーソル設定に以下を追加します。
クロードデスクトップ
Claude Desktop 設定には、MCP サーバーを構成するための 2 つのオプションがあります。
オプション 1: Docker を使用する (推奨)
この構成では、Docker コンテナ内でサーバーを起動し、WebSocket 経由で接続します。
オプション2: Pythonの直接実行を使用する
この構成では、STDIO トランスポートを使用して Python サーバーを直接実行します。
注:
/path/to/mcp-luno
リポジトリのクローンを作成した実際のパスに置き換えます。
クライン
Cline 構成ファイルに次の内容を追加します。
Docker による SSL サポート
Docker コンテナで SSL を使用するには:
- 提供されたスクリプトを使用して証明書を生成します。
- コンテナを実行するときに証明書ディレクトリをマウントします。
手動インストール
オプションA : .env
ファイルを使用する
次に、 .env
ファイルを編集して、Luno API 資格情報を追加します。
オプションB : VS Code MCP構成を使用する
.vscode/mcp.json
ファイルを編集し、 env
セクションに資格情報を追加します。
注: 有効なAPI認証情報がない場合は、パブリックエンドポイントのみ利用可能です。推奨事項: セキュリティのため、コードを共有する際は環境変数を使用することをお勧めします。
サーバーの実行
MCP サーバーは、次の 2 つの異なるトランスポート モードで実行できます。
STDIO トランスポート (デフォルト、単一クライアント)
これはデフォルトのモードで、標準入出力を介して単一のクライアント接続をサポートします。
WebSocket トランスポート (複数のクライアント)
複数のクライアント接続を同時にサポートするには、サーバーを WebSocket モードで実行します。
WebSocket サーバーは、デフォルトではws://localhost:8765
で起動します。
WebSocketサーバーのテスト
付属のテスト クライアントを使用して WebSocket サーバーをテストできます。
これにより、サーバーが WebSocket 接続を正しく処理し、要求に応答していることを確認できます。
コマンドラインオプション
--transport {stdio,websocket}
: 使用するトランスポートメカニズム (デフォルト: stdio)--host HOST
: WebSocketトランスポートを使用するときにバインドするホスト(デフォルト: localhost)--port PORT
: WebSocketトランスポートを使用するときにバインドするポート(デフォルト: 8765)
環境変数
環境変数を使用してトランスポートを構成することもできます。
MCP_TRANSPORT
: トランスポートメカニズム(「stdio」または「websocket」)MCP_HOST
: WebSocketトランスポートにバインドするホストMCP_PORT
: WebSocketトランスポートにバインドするポート
標準クライアントでのテスト
STDIO トランスポートをテストするには、付属のテスト クライアントを使用します。
MCPプロトコル統合
このサーバーはモデルコンテキストプロトコル(MCP)を実装しており、AIモデルは標準化されたJSON-RPC 2.0メッセージを介してサーバーとやり取りできます。サーバーはデフォルトでSTDIO経由で動作するため、VS Code拡張機能やその他のMCP互換クライアントとの統合が容易です。
VSコード統合
.vscode/mcp.json
ファイルは、VS Code で使用するサーバーの設定を行います。2 つのサーバー設定が用意されています。
luno-mcp-server-stdio
- STDIO トランスポートを使用します (デフォルトの MCP 動作)luno-mcp-server-websocket
- 複数のクライアントをサポートするためにWebSocketトランスポートを使用します
VSコードの構成
VS Code で WebSocket トランスポートを使用するには、 mcp.json
ファイルにプロセス タイプの構成を含めます。
WebSocket トランスポートを使用する場合、VS Code は STDIO 経由で通信するのではなく、バックグラウンド プロセスとしてサーバーを起動します。
VS Code で MCP サーバーを構成する
.vscode/mcp.json
ファイルから直接サーバーを構成できます。
この構成は、MCP プロトコルをサポートする VS Code 拡張機能によって使用され、AI モデルやその他のツールとの統合が容易になります。
利用可能な方法
方法 | 説明 | 認証が必要です |
---|---|---|
describe_capabilities | サーバーの機能に関する情報を返す | いいえ |
get_crypto_price | 特定の取引ペアの現在の価格を取得する | いいえ |
get_market_overview | 利用可能なすべての市場の概要を確認する | いいえ |
get_account_balance | すべてのアカウントの残高を取得する | はい |
place_order | 新しい注文をする | はい |
cancel_order | 既存の注文をキャンセルする | はい |
get_order_status | 注文のステータスを取得する | はい |
get_transaction_history | アカウントの取引履歴を取得する | はい |
get_fees | 取引ペアの手数料情報を取得する | はい |
リクエストの例
サーバー機能を取得します:
Bitcoin-ZARの価格を取得:
発達
プロジェクト構造
テストの実行
新機能の追加
新しい Luno API 機能を追加するには:
src/luno_mcp_server/luno_client.py
のLunoClient
クラスを新しい API メソッドで拡張します。src/luno_mcp_server/server.py
のLunoMCPServer
クラスに対応するメソッドを追加します。server.py
のMCP_METHODS
リストを更新し、_register_methods
関数でメソッドを登録します。- テストを
tests/
ディレクトリに追加する
建築
MCP サーバーはシンプルなアーキテクチャを使用します。
- 通信用のJSON-RPC 2.0
- トランスポート用の標準入出力(STDIO)
- 暗号通貨操作のためのLuno APIクライアント
トラブルシューティング
よくある問題
- API認証エラー: Luno APIキーが
.env
ファイルまたは.vscode/mcp.json
に正しく設定されていることを確認してください。 - インポートエラー: 仮想環境がアクティブ化されていることを確認してください
- レート制限: Luno API にはレート制限があります。本番環境での使用には再試行ロジックを実装してください。
構成の優先順位
サーバーを起動すると、構成値が次の優先順位で読み込まれます。
- MCP 構成を通じて渡される環境変数 (最高優先度)
.env
ファイルの値- コード内のデフォルト値(最低優先度)
つまり、MCP 構成で値を設定して、 .env
ファイル内の既存の値を上書きすることができます。
マルチクライアントサポート
このMCPサーバーは、WebSocketを介して複数のクライアントからの同時接続をサポートします。詳細については、 MULTI_CLIENT_SUPPORT.mdをご覧ください。
交通手段
サーバーは 2 つのトランスポート メカニズムをサポートしています。
- STDIO (デフォルト): 標準入出力 - 単一クライアント、VS Code MCP によって使用される
- WebSocket : ネットワークトランスポート - セキュリティ機能を備えた複数のクライアント
WebSocketトランスポートで実行
基本的な使用方法:
セキュリティ オプション付き:
SSL/TLS 暗号化の場合:
WebSocketクライアントツール
リポジトリには 2 つのクライアント ツールが含まれています。
- test_websocket_client.py : シンプルなテストクライアントCopy
- enhanced_websocket_client.py : マルチクライアントシミュレーションを備えた高度なクライアントCopy
ライセンス
MITライセンス
著作権 (c) 2025
本ソフトウェアおよび関連ドキュメント ファイルのコピーを入手するすべての人に対して、無償で許可が付与されます。
This server cannot be installed
AI モデルとアプリケーションが取引操作のために Luno 暗号通貨交換 API と対話するための標準化されたインターフェイスを提供するモデル コンテキスト プロトコル サーバー。
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that provides read-only access to Bybit's cryptocurrency exchange API, allowing users to query real-time cryptocurrency data using natural language.Last updated -95TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server implementation that enables AI assistants to interact with the Paradex perpetual futures trading platform, allowing for retrieving market data, managing trading accounts, placing orders, and monitoring positions.Last updated -284PythonMIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with the Deriv trading API, providing access to active trading symbols and account balance information.Last updated -2Python
- AsecurityFlicenseAqualityA Model Context Protocol server that provides access to CoinMarketCap's cryptocurrency data, enabling AI applications to retrieve cryptocurrency listings, quotes, and detailed information.Last updated -310Python