🚀 Zerodha Trading Agent (MCP x Bun.js) について
Bun.js製のMCPサーバーで、ClaudeエージェントからZerodha Kite Connect経由で売買注文を出せます。Kite認証に対応し、アクセストークンを定期的に更新します。
主な機能
- 01買い注文と売り注文の実行
- 02Kite Connectによる認証
- 03アクセストークンの定期更新
- 04Bun.jsでのMCPサーバー実行
活用シーン
- 01Claudeエージェントから株式注文を出す
- 02サーバー稼働中のKiteアクセストークン更新
MCP 対応
MCPサーバーはClaudeエージェントに取引機能を公開し、株式の購入・売却要求を受け付けます。注文はKite Connectを通じて送信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
🚀 Zerodha トレーディングエージェント(MCP x Bun.js)
以下を使用して構築されたインテリジェントな株式取引エージェントです。
- Bun.js(高速な JavaScript ランタイム)
- Zerodha Kite Connect API
- Claude MCP サーバー統合
このエージェントでは、取引の注文や、トリガーに基づく株式の自動売買ができます。また、将来的には過去のデータとリアルタイムのニュースを使用して、株価のトレンドを予測する予定です。
📋 機能
- 🔥 MCP エージェントを介して買い注文と売り注文を自動で発注
- 🛡️ Kite Connect を使用して安全に認証
- 🔄 アクセストークンを定期的に自動更新
- 🎯 (近日公開) GTT のようなスマートウォッチリストに基づく売買
- 🧠 (近日公開) チャートとニュース分析を使った株価の将来予測
- ⚡ 超高速ランタイムを実現するBun.jsで構築
- 🎯 Claude ツールチェーン/MCP エージェントに完全対応
📂 プロジェクト構成
zerodha-trade/
├── index.ts # MCP Server setup, defines trading tools
├── trade.ts # Trading logic: place order, generate session
├── refreshToken.ts # Refreshes access token using request_token
├── login.ts # (One time) Generate new access token
├── tokenStore.json # Stores API key, secret, access token
├── watchlist.json # (Coming soon) GTT trigger rules
├── README.md # Project documentation
⚙️ セットアップ手順
1. 依存関係のインストール
bun install
(Bun.js がインストールされていることを確認してください:)
curl -fsSL https://bun.sh/install | bash
2. API 認証情報の設定
tokenStore.json を以下の内容で更新します。
{
"apiKey": "YOUR_KITE_API_KEY",
"apiSecret": "YOUR_KITE_API_SECRET",
"accessToken": "YOUR_ACCESS_TOKEN"
}
まだ accessToken を取得していない場合は、次を実行します。
bun login.ts
これにより、手動で生成できます。
3. エージェントサーバーの起動
bun index.ts
✅ これにより、以下が実行されます。
- 24 時間ごとにアクセストークンを自動更新
- MCP サーバーを介して Claude エージェントに取引機能を公開
http://localhost:3000でサーバーを起動
4. ローカルでの HTTPS の使用(ngrok 経由)
Kite Connect では HTTPS URL が必要なため、ngrok を使ってローカルサーバーを安全にトンネリングできます。
brew install ngrok # Install ngrok (if not already installed)
ngrok http 3000 # Expose port 3000 via HTTPS
実行すると、https://abc1234.ngrok.io のような公開 HTTPS URL が取得できます。Kite Connect アプリの作成時に、この URL をリダイレクト URLとして使用してください。
5. Kite Connect アプリの作成(API キー/シークレットの取得)
- Kite Developer Console にアクセスします
- Create New App をクリックします
- 次の情報を入力します。
- App Name:(任意の分かりやすい名前)
- Redirect URL:(
https://xyz.ngrok.ioの URL を貼り付けます) - Postback URL:(同じ、または別の ngrok HTTPS URL)
- Products: Kite Connect
- Exchange: NSE、BSE など
- 作成後、API Key と API Secret が取得できます
tokenStore.jsonを適切に更新します
🚀 MCP サーバーの設定例
{
"mcpServers": {
"zerodha-trade": {
"command": "/Users/vamsi/.bun/bin/bun",
"args": [
"--directory",
"/Users/vamsi/Projects/zerodha-trade",
"index.ts"
]
}
}
}
🛠️ 今後の拡張(ロードマップ)
- 🔔 スマート GTT トリガーシステム:価格が目標値を超えたときに売買
- 📈 株価の将来予測エージェント(過去の価格とリアルタイムのニュースを使用)
- 📊 Nifty50 などの ETF 向け自動 SIP ボット
- 📬 注文の正常な執行時に Telegram/Slack で通知
- 📉 ポートフォリオ保有銘柄のストップロスを自動化
🤖 仕組み(概要)
- MCP エージェントが
buyStock(symbol, quantity)またはsellStock(symbol, quantity)を要求します - エージェントサーバーが Kite Connect API を使って注文を発注します
- アクセストークンが毎日自動更新されます
- (近日公開) バックグラウンドサービスが価格を監視し、GTT のような注文を自動的にトリガーします
- (近日公開) ニュースとチャートの分析によって株価のトレンドを予測します
✨ クレジット
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。