ashareport について
ashareport は、中国 A 株市場データを照会する CLI と stdio MCP サーバーです。相場、履歴、ニュース、財務諸表、指標、内部取引、ローカルの取引時間情報を扱い、市場データの取得にはエンドポイント設定が必要です。
主な機能
- 01株価の履歴データ
- 02リアルタイム相場とニュース
- 03財務諸表と指標
- 04内部取引データ
- 05ローカル時刻と取引日情報
- 06データソースのフォールバック設定
活用シーン
- 01銘柄の過去価格の確認
- 02リアルタイム相場や企業ニュースの取得
- 03財務諸表と指標の確認
- 04直近の取引日の確認
MCP 対応
A 株データと時刻情報を扱う 9 種類のツールを提供します。市場データツールは `ASHAREPORT_API_URL` で設定したエンドポイントにリクエストを送り、`get_time_info` はローカルで動作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
9掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| adjust | string | いいえ | 価格調整モード。qfq(前方調整)、hfq(後方調整)、none など。 |
| source | string | いいえ | 照会するデータソース。yahoo、sina、eastmoney など。 |
| symbol | string | はい | 株式ティッカーシンボル。例:AAPL。 |
| end_date | string | いいえ | 履歴データ範囲の終了日(YYYY-MM-DD 形式)。 |
| fallback | boolean | いいえ | true の場合、選択したデータソースが失敗すると、別のデータソースに切り替えます。 |
| interval | string | いいえ | ローソク足の間隔単位。day、week、month など。 |
| recent_n | number | いいえ | 最新の N 本のバーのみを返します。 |
| start_date | string | いいえ | 履歴範囲の開始日。形式は YYYY-MM-DD です。 |
| indicators_list | array | いいえ | バーと併せて計算するテクニカル指標。例:SMA、RSI。 |
| interval_multiplier | number | いいえ | インターバルの倍率。たとえば interval が minute の場合、5 は 5 分足を表します。 |
詳細
ashareport
ashareport は、中国本土の A 株に関する 9 種類の株価データツール(履歴、リアルタイム株価、ニュース、貸借対照表、損益計算書、キャッシュフロー、内部取引、財務指標)に加え、ローカル時刻ツールを、コマンドラインプログラムおよび stdio MCP サーバーとして提供します。
データツールの仕組み(最初にお読みください)
元の設計では、Python の市場データライブラリをプロセス内で実行します。この TypeScript による再構築では、代わりにエンドポイント実行方式を使用します。次を設定してください。
export ASHAREPORT_API_URL="https://your-data-endpoint.example"
各データツールは JSON {tool, source, params} を {ASHAREPORT_API_URL}/<tool> に POST し、エンドポイントからの JSON 応答を返します。変数が設定されていない場合、データツールは次のエラーを返します。
upstream data endpoint not configured: set ASHAREPORT_API_URL ...。
get_time_info は完全にローカルで動作し、エンドポイントは不要です。
ソースのフォールバックは、ドキュメントに記載された順序でローカルに実装されています。
| ドメイン | ソースの順序 |
|---|---|
| historical | eastmoney → eastmoney_direct → sina → ths |
| realtime | eastmoney_direct → eastmoney → xueqiu → ths(シンボルが指定されていない場合、xueqiu/ths はスキップ) |
| news | eastmoney → ths |
| statements / metrics | sina → eastmoney_direct |
指定されたソースを最初に試し、fallback が false でない場合はドメインの順序で試行し、最初に空でない結果が返った時点で終了します。すべてのソースで失敗した場合、エラーには各ソースとそのエラーが記載されます。
デフォルト値:interval は day、adjust は none、recent_n は履歴データで 100、その他の直近 N 件取得ツールで 10 です。
indicators_list はローカルで計算されず、そのままエンドポイントに渡されます。get_time_info は今日から土曜日と日曜日を除いてさかのぼり、最終取引日を特定します。取引所の休場日は考慮されません。
インストール
npx @reneturcios/ashareport get_time_info
docker run -i ghcr.io/cloudcorprecords/ashareport # MCP server
CLI
ashareport get_hist_data --symbol 600519 --interval day --recent-n 20
ashareport get_realtime_data --symbol 600519
ashareport get_realtime_data # market-wide, symbol optional
ashareport get_news_data --symbol 600519
ashareport get_balance_sheet --symbol 600519
ashareport get_income_statement --symbol 600519
ashareport get_cash_flow --symbol 600519
ashareport get_inner_trade_data --symbol 600519
ashareport get_financial_metrics --symbol 600519
ashareport get_time_info
ashareport --version
終了コード:0 成功、1 ツールエラー、2 使用方法エラー。
MCP サーバー
npx -y @reneturcios/ashareport mcp
{
"mcpServers": {
"ashareport": {
"command": "npx",
"args": ["-y", "@reneturcios/ashareport", "mcp"],
"env": { "ASHAREPORT_API_URL": "https://your-data-endpoint.example" }
}
}
}
ツール
| ツール | 必須 | その他のパラメーター |
|---|---|---|
get_hist_data | symbol | interval、interval_multiplier、start_date、end_date、adjust、source、fallback、indicators_list、recent_n |
get_realtime_data | —(symbol は任意) | source、fallback |
get_news_data | symbol | source、fallback、recent_n |
get_balance_sheet | symbol | source、fallback、recent_n |
get_income_statement | symbol | source、fallback、recent_n |
get_cash_flow | symbol | source、fallback、recent_n |
get_inner_trade_data | symbol | — |
get_financial_metrics | symbol | source、fallback、recent_n |
get_time_info | — | —(ローカル:ISO 時刻、Unix タイムスタンプ、最終取引日) |
開発
npm install
npm run build # tsc -> dist/
npm test # node test runner, fake-fetch only, no network
npm run dev # run the CLI from source via tsx
ライセンス
MIT — LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。