jefeboss0/stock-screening-server
If you are the rightful owner of stock-screening-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Stock Screening Server is an MCP server that allows users to perform stock screening using SBI証券CSV through natural language commands via ChatGPT.
Stock Screening Server
SBI証券CSVを使った株式スクリーニングMCPサーバー ChatGPTから自然言語で株式スクリーニングを実行できます。
特徴
- ✅ SBI証券CSV対応: ChatGPTにCSVをアップロードして使用
- ✅ 10種類のプリセット戦略: 成長株、高配当株、割安株など
- ✅ Cloudflare Workers: サーバーレスで高速動作
- ✅ API Key認証: セキュアなアクセス
- ✅ ChatGPT統合: 自然言語でスクリーニング実行
デプロイ済みURL
https://stock-screening-server.obana.workers.dev
API仕様
OpenAPI URL
https://stock-screening-server.obana.workers.dev/openapi.yaml
CSVデータのアップロード
ローカルからアップロード
- SBI証券からCSVをダウンロード
inbox/フォルダにCSVファイルを配置- アップロードコマンドを実行:
npm run upload-csv
コマンドは自動的に inbox/ フォルダ内の最新CSVファイルをCloudflare KVにアップロードします。
利用可能なツール
1. listStrategies - 戦略一覧取得
利用可能なスクリーニング戦略の一覧を取得
レスポンス:
{
"success": true,
"strategies": [
{
"name": "growth_stocks",
"displayName": "成長株(グロース株)",
"description": "高ROE、高収益率、成長性重視の銘柄"
}
],
"count": 10
}
2. screenStocks - スクリーニング実行
指定した戦略でスクリーニングを実行
リクエスト:
{
"strategyName": "high_dividend_stocks",
"limit": 20
}
レスポンス:
{
"success": true,
"strategy": "高配当株",
"totalCount": 3200,
"filteredCount": 245,
"stocks": [...]
}
利用可能な戦略
-
growth_stocks - 成長株(グロース株)
- 高ROE、高収益率、成長性重視
-
stable_value_stocks - 業績安定株(収益バリュー)
- 低PER、低PBR、高配当、財務健全
-
high_dividend_stocks - 高配当株
- 配当利回り3.5%以上
-
deep_value_stocks - 割安株(低PER・低PBR)
- PER 10倍以下、PBR 1.0倍以下
-
net_net_stocks - ネットネット株
- PBR 0.5倍以下の超割安株
-
small_cap_growth - 小型成長株
- 時価総額小、高収益率
-
large_cap_stable - 大型安定株
- 時価総額1000億円以上の安定経営
-
quality_dividend - 優良高配当株
- 高配当+財務優良+収益性の三拍子
-
value_growth_combo - バリュー&グロース併用
- 割安かつ成長性もある銘柄
-
defensive_stocks - ディフェンシブ株
- 財務超優良+安定配当の守りの銘柄
ChatGPT統合
セットアップ
- ChatGPTのカスタムGPT編集画面を開く
- 「Configure」 タブ → 「Actions」 セクション
- 「Add Action」 をクリック(2つ目のAction)
- 「Import from URL」 を選択
OpenAPI URL:
https://stock-screening-server.obana.workers.dev/openapi.yaml
- Authentication を設定
- Auth Type: Custom
- Custom Header Name:
X-API-Key - API Key:
Cc+5hYdC6ThgnUZz976u1ey0Pk4xZ4Q2XNbAxUb5yus=
使い方
事前準備(ローカルで実行):
# 1. SBI証券からCSVをダウンロードしてinbox/に配置
# 2. アップロード
npm run upload-csv
ChatGPTでの使用例:
【ユーザー】
高配当株をスクリーニングして
【ChatGPT】
高配当株戦略(配当利回り3.5%以上)でスクリーニングします...
## 高配当株スクリーニング結果
全3,200銘柄中、245銘柄が該当しました。上位20銘柄:
1. 三菱UFJフィナンシャル・グループ (8306)
- 株価: 1,200円
- 配当利回り: 4.5%
- PER: 8.5倍
- 自己資本比率: 45%
2. ...
SBI証券CSVのダウンロード方法
SBI証券のスクリーニングでは、項目が多すぎるとその項目のデータがある銘柄のみに絞り込まれてしまうため、2回に分けてダウンロードすることを推奨します。
手順
- SBI証券にログイン
- 国内株式 > スクリーニング
- 条件なし(全銘柄表示)で検索
1回目のダウンロード(基本指標)
以下の項目を選択してCSVダウンロード:
- コード
- 銘柄名
- 市場
- 現在値
- PER(株価収益率)(倍)
- PBR(株価純資産倍率)(倍)
- 配当利回り(%)
- ROE(自己資本利益率)(%)
- ROA(総資産当期利益率)(%)
- 自己資本比率(%)
- 時価総額(百万円)
2回目のダウンロード(利益・成長指標)
以下の項目を選択してCSVダウンロード:
- コード
- 銘柄名
- 市場
- 売上高(百万円)
- 経常利益(百万円)
- 当期純利益(百万円)
- 売上高営業利益率(%)
- 売上高変化率(%)
- 経常利益変化率(%)
アップロード
両方のCSVファイルを inbox/ フォルダに配置し、以下を実行:
npm run upload-csv
システムが自動的に銘柄コードをキーにしてマージし、Cloudflare KVにアップロードします。処理済みファイルは inbox/archive/ に移動されます。
ローカル開発
# 依存関係インストール
npm install
# ローカルサーバー起動
npm run dev
# デプロイ
npm run deploy
技術スタック
- TypeScript
- Cloudflare Workers
- Cloudflare KV (データ保存)
- Hono Web Framework
ライセンス
MIT
関連プロジェクト
- - 投資記録管理サーバー
- 同じChatGPTカスタムGPTで両方使えます