bitbank-mcp-server
bitbank-mcp-server lets AI agents (Claude, Cursor, Codex, etc.) analyze crypto market data from the bitbank exchange and manage private accounts/orders. Here's what it can do:
Market Data
Real-time ticker (price, 24h change, volume) for single or all JPY pairs
Order book depth (summary, pressure, statistics, or raw modes)
OHLCV candlestick data across timeframes from 1min to 1month
Recent transaction/trade history
Technical Analysis
Indicators: SMA, EMA, RSI, MACD, Bollinger Bands, Ichimoku Cloud, Stochastic Oscillator
Golden/dead cross detection, trend alignment, overbought/oversold zones
Multi-timeframe SMA confluence analysis
Support/resistance detection with touch count and strength scoring
Fibonacci retracement/extension with automatic swing detection and multi-timeframe confluence
Flow & Volatility Analysis
Flow metrics: CVD, aggressor ratio, buy/sell pressure, spike detection
Volatility: ATR, Realized Volatility, Parkinson, Garman-Klass, Rogers-Satchell
Volume profile: VWAP, POC, value area, trade size distribution
Pattern & Signal Detection
Candlestick patterns: doji, engulfing, hammer, morning star, etc.
Chart patterns: double top/bottom, head & shoulders, triangles, wedges, flags, pennants
MACD cross screening across multiple pairs
Whale/large order detection from order book + candlestick data
Currency strength ranking and composite market signal score (−100 to +100)
Backtesting
Strategies: SMA cross, RSI, MACD cross, Bollinger Band breakout
Custom or preset date ranges (1M–3Y); returns P&L, win rate, max drawdown, Sharpe Ratio, equity curve
Visualization
Prepare structured chart/depth data for client-side rendering (e.g., Claude Visualizer)
Render candlestick, line, and depth charts as SVG/PNG with optional indicator overlays
Render educational candle pattern diagrams
Data Quality & Utilities
Validate OHLCV data (completeness, duplicates, OHLCV integrity, anomaly detection)
Refresh trading pair fee cache for latest maker/taker rates
Private API (requires API key)
Account assets, order status/list/details, personal trade history
Portfolio P&L analysis and margin status/positions
Deposit/withdrawal history
Place and cancel orders via a two-step preview → execute safety mechanism
Generates visual market analysis charts, including candlestick charts and technical indicators such as Bollinger Bands and Ichimoku Kinko Hyo, in SVG format for visualization.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@bitbank-mcp-serverShow me a BTC market analysis and a chart with Bollinger Bands"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
bitbank-lab-mcp
bitbank API のデータを使った暗号資産市場分析を、Claude / Cursor / Codex / Antigravity CLI など各種 AI クライアントから簡単に実行できる MCP サーバーです。
はじめにお読みください
本ツールは開発段階(ベータ版)です。利用は自己責任でお願いします。
ご利用の前に必ず ⚠️ 免責事項 をお読みください。
本リポジトリは bitbank バグバウンティプログラムの対象範囲外 です。
Related MCP server: TradingView MCP Server
本 MCP サーバーについて
bitbank の公開 API から取得した価格・取引データを、指標計算・統合・可視化用データの整形まで行った上で LLM に渡します(必要に応じてサーバー側で SVG 描画も可能)。生データを渡すだけのサーバーとは異なり、各ツールの description に「いつ使うべきか」「他ツールとの使い分け」を明示しているため、LLM が自律的に適切なツールを選択できます。
姉妹プロジェクトとして、同じ bitbank API に対する真逆のアプローチを提供する CLI (bitbank-lab-cli) もあります。
この MCP サーバー はサーバー側で計算済みの結論を LLM に渡す
CLI は生データを高速に取得し、LLM 自身に計算させる
指標のパラメータやロジックを完全にカスタマイズしたい場合は CLI 側を、すぐに使えるテクニカル分析・可視化を求める場合は MCP サーバー側を選んでください。
概要
bitbank の公開 API から価格・板情報・約定履歴・ローソク足データを取得し、以下の分析を実行できます。
→ 全ツールの一覧と使い分けは docs/tools.md を参照。
取得できるデータ
リアルタイム価格(ティッカー)
板情報(オーダーブック)
約定履歴(売買方向・時刻)
ローソク足(1分足〜月足)
実行できる分析
テクニカル指標(SMA/RSI/ボリンジャーバンド/一目均衡表/MACD)
フロー分析(買い/売りの勢い・CVD・スパイク検出)
ボラティリティ分析(RV/ATR)
板の圧力分析(価格帯ごとの買い/売り圧力)
パターン検出(ダブルトップ/ヘッドアンドショルダーズ等)
総合スコア判定(複数指標を統合した強弱判定)
長期パターンの現在地関連検出(detect_patterns: requireCurrentInPattern/currentRelevanceDays)
視覚化
Claude.ai の Visualizer で描画するためのコンパクトな整形データを返すツール群
prepare_chart_data: ローソク足 + 指標の時系列データprepare_depth_data: 板の累積 volume 階段データ
ファイル保存・Cursor 等の非 Visualizer 環境向けに SVG/PNG 形式のチャートも生成可能
render_chart_svg/render_depth_svg/render_candle_pattern_diagram
クイックスタート
前提条件
Node.js 22 以上(24 推奨)
node -vで確認できます公式サイト からインストール
npm(Node.js に同梱されています)
対応 OS: macOS / Linux / Windows(WSL 含む)
Claude Desktop アプリを Claude 公式サイト からダウンロードしてください
本プロジェクトは npm に
bitbank-lab-mcpとして公開されています。
ソースコードのクローンは不要です(開発したい方向けの手順は末尾の開発者向けセクションを参照)。
1. Claude Desktop に登録(推奨)
Claude Desktop が最も多くの方が使う想定の MCP クライアントです。~/Library/Application Support/Claude/claude_desktop_config.json に設定を追加します。
登録方法は2通りあります。まず npx 方式を試し、動かない場合に絶対パス方式をお試しください。
npx 方式(推奨)
Node.js のバージョンアップで設定を書き換える必要がないため、こちらを推奨します。
nvm/volta などのバージョン管理ツールをお使いの方には特におすすめです。
用途に応じて A〜C の 3 段階から選びます。
A. Public データのみ:
価格・板・ローソク足などの公開市場データの取得と分析。API キー不要。
{
"mcpServers": {
"bitbank-lab": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"]
}
}
}B. Private データ参照系(要 API キー):
資産残高・約定履歴・注文照会・ポートフォリオ分析などの読み取り専用。発注はできません。
{
"mcpServers": {
"bitbank-lab": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"],
"env": {
"BITBANK_API_KEY": "your_api_key",
"BITBANK_API_SECRET": "your_api_secret"
}
}
}
}✅ bitbank API の権限は「参照」のみ設定することを推奨
C. 取引注文・注文キャンセル実行(要 API キー):
B に加えて、対応ホスト上での発注・注文キャンセルまで実行。実行前に必ず確認ステップ(preview → ユーザーの明示確認)が入ります。
{
"mcpServers": {
"bitbank-lab": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"],
"env": {
"BITBANK_API_KEY": "your_api_key",
"BITBANK_API_SECRET": "your_api_secret"
}
}
}
}✅ bitbank API の権限は「参照」および「取引」のみ設定することを推奨
※ 「出金」権限は有効化しないことを強く推奨します。本サーバーは出金系ツール未実装のため不要です。
発注・取消の実行にはユーザーの明示確認が必須です。確認トークンは content / structuredContent に載らないため、LLM が preview 応答から直接 execute することはできません。旧 BITBANK_TRUST_HOST_APPROVAL オプトイン(iframe に token を structuredContent で載せる妥協モード)はセキュリティ上撤去済みで、設定しても無視されます。
確認の経路はクライアントによって変わります。
クライアント | 実行経路 |
elicitation / MRTR 対応 | ネイティブ確認ダイアログで完結(第一選択。追加設定不要) |
MCP Apps UI 対応(Claude Desktop 等) |
|
どちらも非対応 | プレビューのみ。実行は bitbank アプリ/ウェブで |
このオプションは、確認トークンをツール結果の _meta にのみ載せて iframe へ渡し、確認カードのボタンからの実行を許可します。安全性は「ホストが _meta をモデル(LLM)に渡さない」という前提に依存します。
仕様上の保証ではありません。 MCP Apps 仕様の該当記述は "Best Practices" の箇条書きで、MUST / SHOULD を伴いません。適合要件ではなく意図の説明です
ホストのアップデートで壊れても、サーバー側では検知できません。 ホストが
_metaをモデルコンテキストに含めるようになった瞬間に前提は崩れますが、その変化はサーバーから観測できません。壊れ方は静かですこの領域は実装が流動的です(
structuredContentの喪失回帰など、関連トラッカーに 2026-05〜08 の issue が複数)
万一トークンが漏れた場合でも、被害は 「直前にプレビューした注文 1 件(一括取消ならプレビュー済みの注文 ID 集合 1 セット)が、60 秒以内に 1 回だけ実行される」 に限定されます。トークンは注文内容に HMAC で束縛されており、攻撃者が金額・数量・ペア・方向を選ぶことはできません。
以上を理解したうえで有効化してください。既定では無効です。 詳細は ADR-0007。
詳細: ADR-0007 / Private API ガイド。
B / C の API キーは bitbank 設定画面 で発行し、必要最小限の権限のみを付与、可能なら IP 制限も設定してください(最小権限の原則)。
詳細: Private API ガイド。
絶対パス方式(フォールバック)
npx 方式で「サーバーに接続できません」エラーが出る場合、Claude Desktop から npx コマンドが見つけられていない可能性があります。
その場合は、npx の絶対パスを指定してください。
まずターミナルで自分の環境の npx パスを確認します:
which npx出力例と対応するインストール方法:
| インストール方法 |
| Homebrew(Apple Silicon Mac) |
| Homebrew(Intel Mac)または公式インストーラ |
| nvm |
| volta |
which npx の結果を command に指定:
{
"mcpServers": {
"bitbank-lab": {
"command": "<which npx の出力>",
"args": ["-y", "bitbank-lab-mcp"]
}
}
}⚠️ nvm/volta ユーザーへの注意: この方式では Node.js をバージョンアップするたびに
commandのパスの書き換えが必要です(例:v24.0.0→v24.1.0)。アップデート後にwhich npxを再確認してください。
Windows の場合
Windows でも npx 方式がそのまま使えます:
{
"mcpServers": {
"bitbank-lab": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"]
}
}
}設定ファイルの場所: %APPDATA%\Claude\claude_desktop_config.json
npx が見つからない場合は where npx(Windows 版の which)で絶対パスを確認して指定してください。
表示名のカスタマイズ
Claude Desktop の UI に表示される名前は claude_desktop_config.json のキー名で決まります:
{
"mcpServers": {
"bitbank-lab-mcp": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"]
}
}
}⚠️
bitbank-lab-mcpのような ASCII(英数字)の名前を推奨します。環境によって、日本語などの非 ASCII 名だと Chat でツールが見つからない事例があります。
共通の注意事項
追加後、Claude Desktop を
Cmd+Q(Windows は完全終了)で再起動してください⚠️ macOS で
claude_desktop_config.jsonが見つからない場合は、ホームディレクトリ直下から開いてください
設定ファイルの場所:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
2. その他の MCP クライアント(手動 .json 編集)
Cursor(.cursor/mcp.json)
{
"mcpServers": {
"bitbank-lab": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"],
"env": {
"BITBANK_API_KEY": "your_api_key",
"BITBANK_API_SECRET": "your_api_secret"
}
}
}
}API キーが不要な場合は env ブロックごと削除して OK。セクション 1 の A〜C と同様に、取引実行まで使う場合は確認フローに対応したクライアントが必要です(旧 BITBANK_TRUST_HOST_APPROVAL は不要・無効です)。
Claude Code(CLI から登録する場合)
claude mcp add --transport stdio bitbank-lab -- npx -y bitbank-lab-mcp同梱 Skill も一緒に使いたい場合は、セクション 3 の plugin install が便利です。
Windsurf / その他の汎用 MCP クライアント
Cursor と同じ JSON 形式で登録できます。クライアント固有の設定ファイルパスについては各クライアントのドキュメントを参照してください。
3. (オプション)Plugin として install(同梱 Skill を使う)
通常の利用はセクション 1〜2 の登録だけで完結します。Plugin install は、Claude Code などの AI コーディングツールで、MCP サーバーに加えて同梱 Skill(skills/ 配下)も使いたい方向けのオプションです。
Plugin として install すると、MCP ツールと同時に同梱 Skill(例:
investment-onboarding)が有効化されます。今後 Skill を追加した場合も、plugin のアップデートでまとめて届きます。Skill を自作してワークフローをカスタマイズしたい方は、
skills/INDEX.mdの構成が参考になります。Claude Desktop は plugin / Skill の読み込みに未対応です。Claude Desktop で使う場合はセクション 1 の方法で登録してください(MCP ツールの機能は同じで、Skill が使えるかどうかだけの違いです)。
クライアント | manifest | API キーの渡し方 |
Claude Code |
| ✅ GUI で入力: |
Antigravity CLI(旧 Gemini CLI) |
| ✅ 対話 prompt: |
Cursor |
| ⚙️ シェル環境変数のみ: |
Codex |
| ⚙️ シェル環境変数のみ: |
いずれの manifest も npm registry の
bitbank-lab-mcpをnpx -y経由で起動します。Gemini CLI は 2026-06-18 に個人アカウント向け提供を終了し、Antigravity CLI(
agy)に移行しました。Antigravity CLI は旧 Gemini CLI 拡張(gemini-extension.json)を後方互換で読み込みます(agy plugin import geminiでネイティブ plugin へ変換も可能)。
Claude Code の例:
# 1. このリポジトリを marketplace として登録(初回のみ)
/plugin marketplace add bitbankinc/bitbank-lab-mcp
# 2. plugin を install
/plugin install bitbank-lab-mcp@bitbank-lab
# 3. plugin を有効化
/reload-pluginsbitbank-lab はこのリポが提供する marketplace 名(.claude-plugin/marketplace.json の name フィールド)、bitbank-lab-mcp は plugin 名です。
実行後、bitbank API key / API secret の入力 UI が表示されます。Public ツールだけで使う場合は両方とも空欄で OK — Private API ツールは API キーを入力したときだけ自動的に有効化されます。
API キーを後から追加・変更したい場合は
/pluginから該当 plugin の設定を開き、api_key/api_secretを更新してください。Claude Code ではsensitive: trueのため OS のキーチェーンに保管されます。
Cursor / Codex の場合(環境変数経由):
/plugin install 実行後、シェルで以下のように環境変数を設定してから Cursor / Codex を起動してください(Public ツールだけ使う場合は不要):
export BITBANK_API_KEY="your_api_key"
export BITBANK_API_SECRET="your_api_secret"macOS / Linux では ~/.zshrc や ~/.bashrc に書いておくと永続化されます。Windows は環境変数の管理画面 or setx を使用してください。
4. 使ってみる
AI クライアントにそのまま話しかけます:
BTCの今の市場状況を分析して
ビットコインは買いと売りどちらが優勢?
直近 1 週間でテクニカル的に上向きの仮想通貨を 3 つ教えて💡 何を聞けばいいかわからない場合: 用意されたプロンプト集 をご覧ください。初心者向け(🔰)から中級者向けまで、9種類の分析プロンプトを用意しています。
🌅 朝のルーティンに: 「おはようレポート」で、寝ている間の相場変動をすばやくキャッチアップできます。
Private API(取引機能)
API キーの有無でサーバーが公開する機能が自動的に切り替わります。
設定 | ツール数 | プロンプト数 | 使える機能 |
キー未設定 | 33(Public のみ) | 8 | 価格取得・テクニカル分析・チャート生成・バックテスト |
キー設定済み | 33 + 16 = 49 | 8 + 1 = 9 | 上記 + 資産確認・注文・ポートフォリオ分析 |
キー未設定時、Private ツール・プロンプトは MCP クライアントに一切表示されません(エラーではなく、そもそも登録されません)。公開データの取得・分析だけなら設定不要で、そのまま使えます。
環境変数の設定方法
ターミナルから起動する場合:
export BITBANK_API_KEY="your_api_key"
export BITBANK_API_SECRET="your_api_secret"Plugin install を使った場合 — /plugin から該当 plugin の設定を開き、api_key / api_secret を入力すれば完了です(手動編集は不要)。
Claude Desktop で手動設定している場合 — claude_desktop_config.json の env に追加(セクション 1 で設定した npx 方式/絶対パス方式のいずれかに、以下のように BITBANK_API_KEY と BITBANK_API_SECRET を追加するだけです):
{
"mcpServers": {
"bitbank-lab": {
"command": "npx",
"args": ["-y", "bitbank-lab-mcp"],
"env": {
"BITBANK_API_KEY": "your_api_key",
"BITBANK_API_SECRET": "your_api_secret"
}
}
}
}API キーは bitbank 設定画面 で発行してください。必要最小限の権限のみ付与することを強く推奨します(最小権限の原則)。
やりたいこと | 必要な権限 |
資産確認・ポートフォリオ分析(読み取り専用) | 「参照」のみ ← 最も安全、迷ったらこちら |
上記 + AI に発注・キャンセル操作も任せたい | 「参照」+「取引」 |
⚠️ 「出金」権限は絶対に有効化しないでください。本 MCP サーバーは出金系ツールを実装していないため、この権限を付ける必要は一切ありません。漏洩時の資産流出を避けるためです。
IP 制限: bitbank 側で API キーに IP 制限を設定できる場合は、可能な限り設定を推奨します。
カテゴリ | ツール | 説明 | 必要な権限 |
口座情報 |
| 保有資産一覧 | 参照 |
注文照会 |
| 注文の照会 | 参照 |
約定履歴 |
| 約定履歴の取得 | 参照 |
ポートフォリオ |
| 損益分析・パフォーマンス | 参照 |
入出金 |
| 入出金履歴 | 参照 |
信用取引 |
| 証拠金・ポジション・約定履歴 | 参照 |
発注 |
| ユーザー明示確認後に発注 | 取引 |
キャンセル |
| ユーザー明示確認後にキャンセル | 取引 |
一括キャンセル |
| ユーザー明示確認後に一括キャンセル | 取引 |
取引操作(発注・キャンセル)は preview → ユーザーの明示確認が必須です。確認トークンは content / structuredContent に載らず、create_order / cancel_order / cancel_orders を MCP tools/call から直接呼んでもサーバー側で拒否されます。
使用例(会話の型)
「今、BTC は買いですか?」→
analyze_market_signal: 総合スコア + 寄与度・根拠「直近で MACD クロスした銘柄は?」→
detect_macd_cross: スクリーニング結果「ここ 30 日のボラ推移を見たい」→
get_volatility_metrics+render_chart_svg
チャート表示(SVG)
MCP クライアント(Claude)では、アーティファクトとして
data.svgを表示するようにお願いしてください。Claude で LLM がうまくアーティファクトを出力できない場合は、以下のプロンプトを加えるのがおすすめです。
「identifier と title を追加して、アーティファクトとして表示して」
既定の描画は「ロウソク足のみ」。ボリンジャーバンド等のオーバーレイは明示指定時に追加されます(BBは
--bb-mode=default指定時に ±2σ がデフォルト)。
詳細ドキュメント
プロンプト集(初心者〜中級者向け): docs/prompts-table.md
ツール一覧と使い分け: docs/tools.md
Private API ガイド: docs/private-api.md
変更履歴: CHANGELOG.md
開発者向けガイド(型生成・CI など): CLAUDE.md
運用・監視(ログ集計/Docker起動 ほか): docs/ops.md
よくある質問(FAQ)
Q. 何を聞けばいいかわからない プロンプト集 を参照してください。初心者向け🔰から中級者向けまで9種類の分析プロンプトを用意しています。
Q. Docker は必須? いいえ。Node 18+ でローカル実行できます(最短は Claude Desktop 登録)。
Q. API キーは必要? 公開データの取得・分析には不要です。自分の資産確認や注文操作(Private API)を使う場合は Private API ガイド を参照してください。
Q. どのツールを使えばよい? まず analyze_market_signal で全体を把握 → 必要に応じて各専門ツールへ。
Q. 対応銘柄は固定? 固定ではありません。上流の公開 API が返す銘柄に自動追随します(追加/廃止も自動反映)。参考: bitbank 公開API仕様
Q. MCP Inspector でも試せる? はい。次で実行できます(npm 公開版に対する動作確認)。
npx @modelcontextprotocol/inspector -- npx -y bitbank-lab-mcpソースコードから動かす場合は npx @modelcontextprotocol/inspector -- tsx src/server.ts(開発者向け を参照)。
Q. 当日の約定(フロー)データが少ない・古い時間帯が取れない bitbank 側の仕様です。約定履歴の日付アーカイブ(/transactions/{YYYYMMDD})は UTC 暦日単位で、当該 UTC 日の完了後(日本時間 9:00 以降、さらに公開遅延あり)にのみ公開されます。進行中の UTC 日の約定は直近約 60 件(latest)しか取得できないため、get_flow_metrics 等では当日区間のカバレッジが限定的になります(結果に warning として明示されます)。ローソク足(get_candles)は進行中の UTC 日でもリアルタイムで取得できます。なお公開済みの過去区間であれば、get_flow_metrics / analyze_volume_profile の since / until(オフセット付き ISO8601、最大 7 日)でその区間の全件を集計できます(例: since=2026-08-01T00:00:00Z, until=2026-08-02T00:00:00Z で UTC 8/1 の 1 日ぶん)。件数上限による切り捨ては起きません。
トラブルシューティング
症状 | 原因・対処 |
Claude Desktop にツールが表示されない |
|
「サーバーに接続できません」エラー(npx 方式) | Claude Desktop から |
|
|
Node.js アップデート後に MCP が動かなくなった | nvm/volta の場合、Node.js バージョンが変わると絶対パスも変わる。 |
|
|
ツール実行時にタイムアウト | ネットワーク接続を確認 / bitbank API の状態を確認 |
Private API ツールが表示されない |
|
ログを確認したい |
|
Plugin install で「Marketplace not found」 |
|
開発者向け(ソースから起動)
このセクションは「自分で MCP サーバーをいじりたい」「PR を送りたい」という開発者向けです。通常の利用者はセクション 1 の npx -y bitbank-lab-mcp 方式で OK です(こちらは clone 不要)。
セットアップ
git clone https://github.com/bitbankinc/bitbank-lab-mcp.git
cd bitbank-lab-mcp
npm cipackage-lock.json 通りに依存をインストールするため、ローカル開発でも npm install ではなく npm ci を推奨します(CI も npm ci を使用)。
ビルドステップは不要です(tsx で TypeScript を直接実行します)。
STDIO モード(Claude Desktop / Claude Code 向け)
ローカルの開発版を Claude Desktop から使いたい場合、claude_desktop_config.json に絶対パス指定で登録します:
{
"mcpServers": {
"bitbank-dev": {
"command": "npx",
"args": ["tsx", "/ABS/PATH/to/src/server.ts"],
"workingDirectory": "/ABS/PATH/to/project",
"env": { "LOG_LEVEL": "debug", "NO_COLOR": "1" }
}
}
}/ABS/PATH/to/ を実際のクローン先パス(pwd で確認)に置き換えてください。npm 公開版(bitbank-lab)と区別するため、サーバー名は bitbank-dev 等にしておくと両立できます。
Inspector で動作確認する場合:
npx @modelcontextprotocol/inspector -- tsx src/server.tsWindows でローカル開発する場合
npx が PATH 解決できない環境では、node の絶対パスと tsx の CLI を直接指定します:
{
"mcpServers": {
"bitbank-dev": {
"command": "node",
"args": [
"C:\\Users\\<USERNAME>\\bitbank-lab-mcp\\node_modules\\tsx\\dist\\cli.mjs",
"C:\\Users\\<USERNAME>\\bitbank-lab-mcp\\src\\server.ts"
],
"workingDirectory": "C:\\Users\\<USERNAME>\\bitbank-lab-mcp",
"env": { "LOG_LEVEL": "debug", "NO_COLOR": "1" }
}
}
}CI / 型生成 / リンター
開発時のコマンド一覧は CLAUDE.md を参照してください(npm test / npm run lint:fix / npm run gen:types 等)。
フィードバック・バグ報告
バグ報告や機能要望は GitHub Issues からお願いします。Issue テンプレートを用意していますので、用途に合ったものを選択してください。
免責事項
開発段階について
本ツールは開発段階(ベータ版)です。バグ、不具合、誤動作、または不正確な分析結果を含む可能性があります。
AI エージェントによる処理結果について
本MCPサーバー / 本CLIツール が提供するデータを AIエージェント等が処理・生成した結果について、正確性、完全性、有用性、最新性を保証するものではありません。AI エージェント等による処理の結果、注文種別、価格、数量その他の取引条件が利用者の意図と異なる形で処理または実行される可能性があります。
金融商品取引法上の位置づけ
本MCPサーバーは情報提供のみを目的として提供されるものであり、投資助言・代理業、投資勧誘、その他金融商品取引法上の行為を目的とするものではありません。
外部サービスへの依拠
本MCPサーバーは外部API、LLM、第三者サービス等に依拠して提供するものであり、これらの仕様変更、停止、不具合等が生じた場合には、本MCPサーバーが正常に動作しない可能性があります。
安全対策の補助性
本MCPサーバーに実装されている最終注文確認機能、バリデーションその他の安全対策は、誤操作または誤発注等を防止するための補助機能であり、その完全な防止を保証するものではありません。
利用者の責任
利用者は、本MCPサーバーにより提供・生成された情報および注文内容等を自身で十分に確認の上、自己の判断と責任において本MCPサーバーを利用し、投資判断、注文実行および取引を行うものとします。
損害の免責
当社は、本MCPサーバーの利用もしくは利用不能、または本MCPサーバーにより提供・生成された情報、AI エージェント等による処理結果もしくは取引操作に基づく投資判断・注文・取引等に関連して生じたいかなる損害についても、当社の故意または重過失による場合を除き、一切責任を負いません。
APIキー・認証情報の管理
APIキーおよび取引に必要なパスワード等は利用者自身の責任において適切に管理してください。チャット欄や公開リポジトリその他第三者が閲覧可能な環境等へ APIキーや取引パスワード等の認証情報等を入力・掲載しないよう十分ご注意ください。
利用者による認証情報等の管理不備、誤入力、漏えい、第三者利用等により生じたいかなる損害についても、当社の故意または重過失による場合を除き、当社は一切責任を負いません。
Available Tools
32 toolsanalyze_bb_snapshotA
[Bollinger Bands / BB / Squeeze] ボリンジャーバンド(BB / squeeze / bandwidth / zScore)の数値スナップショット。軽量・BB特化。
mode=default: ±2σ帯の基本情報 / mode=extended: ±1σ/±2σ/±3σの詳細分析。
⚠️ 最新値のみ。時系列チャート描画 → prepare_chart_data(indicators: ["BB"])。
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | default | |
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that only the latest value is returned and explains the two modes. It implies a safe read operation without destructive effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, using bullet points for clarity. Every sentence adds value (purpose, mode explanation, alternative usage). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the absence of an output schema, the description covers the essential aspects: what it returns, modes, the limitation of latest value only, and a pointer for charting. It could mention the typical response structure but is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning for the `mode` parameter by explaining default vs extended. Other parameters (`pair`, `type`, `limit`) are not described, though defaults and enums are in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides a numerical snapshot of Bollinger Bands values, with specific modes for basic or extended analysis. It distinguishes itself from sibling tools by being BB-specific and lightweight.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises using `prepare_chart_data` for time-series chart drawing, indicating when not to use this tool. However, it does not contrast with other indicator snapshots like `analyze_sma_snapshot`.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_candle_patternsC
[Candlestick Patterns / Doji / Engulfing] ローソク足パターン検出(candle patterns / doji / engulfing / hammer / harami)。1〜3本足パターンを検出し文脈と過去統計を付けて解説。
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | DEPRECATED: Use as_of instead. YYYYMMDD format. | |
| pair | No | btc_jpy | |
| as_of | No | Date to analyze (ISO "2025-11-05" or YYYYMMDD "20251105"). If omitted, uses latest data. | |
| patterns | No | Patterns to detect. If omitted, all patterns are checked. | |
| timeframe | No | 1day | |
| window_days | No | ||
| focus_last_n | No | ||
| history_horizons | No | ||
| history_lookback_days | No | ||
| allow_partial_patterns | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It mentions detection and providing context/statistics, but fails to mention that the tool is read-only, fixed to daily timeframe (as per schema), or any side effects. No information about data source, processing time, or potential cost.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences and relatively concise, but the first sentence contains a bracket-enclosed list that could be streamlined. It front-loads the key purpose but includes redundant Japanese/English translations. Slightly less concise than ideal, but still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain the return format (context and past statistics), constraints (timeframe is fixed to 1day), or how to interpret results. For a tool with this complexity, the description fails to provide minimal completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 30%, so the description must compensate. However, it only lists a few pattern names (doji, engulfing, hammer, harami) without explaining parameters like 'date', 'as_of', 'pair', 'timeframe', 'window_days', etc. No parameter semantics are clarified beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it detects candlestick patterns (doji, engulfing, hammer, harami) and provides context and past statistics. The verb 'detect' and resource 'candle patterns' are specific, and it distinguishes from sibling tools like 'detect_patterns' or other analyze_* tools that focus on different indicators.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The description lists patterns but does not state prerequisites, limitations, or when to choose this over similar tools like 'detect_patterns' or 'analyze_indicators'. The usage context is only implicitly derived from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_currency_strengthB
[Currency Strength / Ranking / Screening] 通貨強弱ランキング(currency strength / relative strength / ranking / screening)。全JPYペアを複合スコア(変化率・RSI・SMA乖離・出来高)で判定。注目銘柄の発見・スクリーニングに。
| Name | Required | Description | Default |
|---|---|---|---|
| topN | No | 分析対象の上位ペア数(出来高順で選出) | |
| type | No | RSI/SMA 算出に使うローソク足の種類 | 1day |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It details the composite score methodology and that it covers all JPY pairs. However, it does not describe output format, update frequency, rate limits, or any side effects. For an analysis tool, knowing the return structure is critical.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loading keywords and using a clear structure. It avoids unnecessary text. The mix of Japanese and English may slightly reduce clarity but does not waste space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should explain what the tool returns (ranked list, scores, etc.). It only says 'ranking/screening' without detailing output format. For a screening tool with two non-required params, this is a notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters (topN, type) documented. The description reinforces that topN selects from volume-sorted pairs and type determines RSI/SMA timeframe, but adds no new meaning beyond the schema. According to the calibration, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool analyzes currency strength, ranking, and screening using a composite score for all JPY pairs. It includes relevant keywords and indicates its use for discovering noteworthy instruments. While it distinguishes from sibling tools that focus on individual indicators, it does not explicitly contrast them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for screening and discovering strong/weak currencies via composite scoring. However, it lacks explicit guidance on when to use this tool versus alternatives (e.g., when to use analyze_indicators or analyze_sma_snapshot), and no when-not-to-use information is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_ema_snapshotA
[EMA / Exponential Moving Average] EMA(exponential moving average / trend / slope)の最新値・整列・クロス・傾きを返す(既定: 12/26/50/200)。
⚠️ 最新値のみ。時系列チャート描画 → prepare_chart_data(indicators: ["EMA_12","EMA_26"] 等)。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No | ||
| periods | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that only the latest value is returned, which is a key behavioral constraint. But it does not mention idempotency, data source, authentication, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences and a warning. It front-loads the purpose and provides critical usage guidance without unnecessary fluff. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, and many siblings, the description provides a fair overview of purpose and a key usage warning. However, lack of parameter semantics and output format details leaves gaps for the agent to properly invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate. It only discusses the 'periods' parameter via default values. No explanation is given for 'pair', 'type', or 'limit'. This is insufficient for the agent to use parameters correctly without external knowledge.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns EMA latest values, alignment, crosses, and slope with default periods. It distinguishes from chart drawing via prepare_chart_data, but does not explicitly differentiate from other snapshot tools like analyze_sma_snapshot.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The ⚠️ warning explicitly states when not to use (for chart drawing, use prepare_chart_data). However, it lacks guidance on when to use this tool versus other snapshot analysis tools among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_fibonacciA
[Fibonacci / Retracement / Extension] フィボナッチ分析(fibonacci / retracement / extension / swing high-low)。スイング自動検出→リトレースメント/エクステンション水準を算出。過去の反応実績(反発率・リターン)付き。
複数タイムフレーム分析には analyze_mtf_fibonacci を使用。
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | both | |
| pair | No | btc_jpy | |
| type | No | 1day | |
| lookbackDays | No | ||
| historyLookbackDays | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description explains the tool performs automatic swing detection, calculates levels, and outputs historical reaction data. It does not mention side effects or permissions, but the behavior is well-described for a read-only analysis tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences and a list of related terms. It front-loads the key purpose. However, it could be better structured for readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers main functionality but does not explain the return format or detailed output fields (e.g., what 'reaction history' includes). Given the complexity and lack of output schema, more detail would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description does not explain the parameters (pair, type, lookbackDays, historyLookbackDays) except for the mode inferred from 'retracement/extension'. The agent must rely solely on the schema, which lacks descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs Fibonacci analysis (retracement/extension) with automatic swing detection and historical reaction data. It explicitly mentions the alternative analyze_mtf_fibonacci for multi-timeframe, distinguishing it from siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear alternative for multi-timeframe analysis (analyze_mtf_fibonacci), implying this tool is for single-frame analysis. However, it does not explicitly state when not to use it or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_ichimoku_snapshotA
[Ichimoku Cloud] 一目均衡表(Ichimoku / cloud / kumo / tenkan-kijun)の数値スナップショット。価格と雲の位置関係・転換線/基準線クロス・雲の傾きを数値で返す。
⚠️ 最新値のみ。時系列チャート描画 → prepare_chart_data(indicators: ["ICHIMOKU"])。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No | ||
| lookback | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It explains that the tool returns a numerical snapshot of Ichimoku metrics and is limited to the latest data point. While it does not mention auth or rate limits, the tool is read-only and non-destructive, and the description is accurate and truthful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences plus an alert about latest value only. Every word adds value, and the structure is front-loaded with the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should provide more detail about the return format (e.g., field names, data types). While it lists the concepts covered (price-cloud relation, cross, slope), an agent cannot reliably parse the output without additional structure info. The complexity is moderate, but completeness is only adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, meaning the parameter names/types provide minimal context. The description fails to explain the meaning or effect of any parameter (e.g., pair, type, limit, lookback), leaving agents to guess. This is a critical gap for a tool with 4 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns a numerical snapshot of Ichimoku Cloud indicators (price-cloud relation, tenkan-kijun cross, cloud slope) and specifies it is 'latest value only.' This sets it apart from sibling tools like analyze_sma_snapshot or prepare_chart_data, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly notes that it provides only the latest value, and directs users to prepare_chart_data with ICHIMOKU for time-series charting. This gives clear guidance on when to use this tool vs alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_indicatorsA
[Technical Indicators / RSI / MACD / SMA] テクニカル指標の総合分析。最新値・トレンド判定・シグナルをテキストで返す。十分な limit を指定(例: 日足200本)。
描画 → prepare_chart_data / render_chart_svg。バックテスト → run_backtest。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It discloses that the tool is analytical (returns text with values/trends/signals) and implies read-only behavior. Could explicitly state it does not modify data, but overall adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise, front-loaded with purpose, includes key usage hint and cross-references to siblings. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, description adequately describes return format (text with latest values, trend, signals). It covers usage context (limit recommendation) and distinguishes from many siblings. Slightly vague on exact output structure, but sufficient for an analysis tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. Description adds meaning by advising an appropriate limit value ('e.g., 日足200本') but does not explain pair or type in detail. Some compensation, but not full parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides comprehensive analysis of technical indicators (RSI, MACD, SMA) and returns latest values, trend judgments, and signals as text. It distinguishes itself from sibling tools like analyze_ema_snapshot by being a general multi-indicator tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly suggests specifying a sufficient limit (e.g., 200 daily bars) and directs users to separate tools for drawing (prepare_chart_data/render_chart_svg) and backtesting (run_backtest), providing clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_market_signalA
[Market Signal / Score / Triage] 市場の総合シグナル(market signal / composite score / bull-bear / triage)。5要素(板圧力・CVD・モメンタム・ボラティリティ・SMAトレンド)を-100〜+100の単一スコアで瞬時評価。分析の起点・スクリーニングに最適。
⚠️ 最新値スナップショットのみ。時系列チャート描画 → prepare_chart_data(indicators 指定)。
詳細分析には専門ツールを併用: get_flow_metrics / get_volatility_metrics / analyze_indicators / get_orderbook / detect_patterns。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| windows | No | ||
| bucketMs | No | ||
| flowLimit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses that the tool returns a snapshot and is not for time series. However, it does not mention authentication, rate limits, or error handling. For a simple analysis tool, the transparency is good but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise and front-loaded with key information. It includes a summary, limitations, and references to alternatives. Some redundancy could be trimmed, but overall it is well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema is provided, and the description does not specify the return format or fields. Given that there are 5 parameters and no parameter descriptions, the description is incomplete for an agent to fully understand usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 5 parameters with 0% description coverage. The description does not explain any parameter's meaning, format, or role. It only mentions the composite score and its factors but does not map them to input parameters. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it evaluates a composite market signal from 5 factors with a score range of -100 to +100. It distinguishes itself from sibling tools by positioning as a starting point for analysis and explicitly names alternatives for detailed analysis and charting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explicitly states it provides only a snapshot of the latest value, not time series. It directs users to prepare_chart_data for charting and lists specific sibling tools for detailed analysis, providing clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_mtf_fibonacciB
[Multi-Timeframe Fibonacci / Confluence] 複数期間フィボナッチ一括分析(MTF fibonacci / confluence zone)。複数ルックバック期間の水準を並列計算し、コンフルエンス(合流)ゾーンを自動検出。analyze_fibonacci を個別に呼ぶ必要なし。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| lookbackDays | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given no annotations, the description carries the full burden. It mentions parallel computing and automatic confluence detection, but does not explicitly state that the tool is read-only or describe any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with key information, using both English and Japanese. Every sentence adds value, though it could be slightly more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema and two parameters, yet the description does not explain the return format or what the confluence zones look like. This leaves significant gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no explanation for the 'pair' or 'lookbackDays' parameters. The agent must rely solely on schema defaults and types, which is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs multi-timeframe Fibonacci analysis with confluence detection, and explicitly distinguishes from sibling tool analyze_fibonacci by noting that individual calls are unnecessary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly recommends using this instead of calling analyze_fibonacci individually, providing clear context. However, it does not mention when not to use it or any alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_mtf_smaC
[Multi-Timeframe SMA / MTF] 複数タイムフレームSMA一括分析(multi-timeframe / MTF / SMA alignment / confluence)。整列方向とコンフルエンスを判定。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| periods | No | ||
| timeframes | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries the burden. It discloses it does batch analysis and outputs alignment/confluence, but lacks details on prerequisites, data sources, or limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (one sentence) but lacks structure. It is concise but does not use space effectively to convey key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 3 parameters, no output schema, and no annotations, the description is insufficient. It does not cover inputs or outputs, making it hard for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the three parameters (pair, periods, timeframes) beyond their names. It adds no value to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it performs multi-timeframe SMA batch analysis and determines alignment direction and confluence, which is specific and distinguishes it from sibling tools like analyze_sma_snapshot (single timeframe).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives (e.g., other analysis tools). The description does not provide context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_sma_snapshotB
[SMA / Moving Average / Golden Cross] SMA(simple moving average / golden cross / dead cross)の数値スナップショット。最新値・クロス検出・整列状態(bullish/bearish/mixed)。
⚠️ 最新値のみ。時系列チャート描画 → prepare_chart_data(indicators: ["SMA_25","SMA_75"] 等)。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No | ||
| periods | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that only latest values are provided, not historical data. However, it lacks details on side effects, permissions, performance, or output structure, making it adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with only two sentences plus a warning. It front-loads key terms (SMA, golden cross, dead cross) and is mostly efficient. However, the Japanese text might reduce clarity for non-Japanese readers, and a structured format could improve scannability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters with no schema descriptions, no annotations, and no output schema, the description is incomplete. It fails to explain the output format, the role of limit and periods, and the exact meaning of alignment state. A more detailed description is needed for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description provides no explanation of the four parameters (pair, type, limit, periods). It only vaguely relates to 'latest values' but does not define what each parameter does or how they affect the snapshot.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies this tool as an SMA snapshot tool providing latest values, cross detection, and alignment state. It distinguishes from prepare_chart_data but does not explicitly differentiate from other snapshot siblings like analyze_ema_snapshot or analyze_mtf_sma.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when not to use this tool (for chart drawing, use prepare_chart_data). However, it does not provide guidance on when to use this over other snapshot tools, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_stoch_snapshotA
[Stochastic / Overbought / Oversold] Stochastic(stochastic / %K / %D / overbought / oversold / divergence)の最新状態。ゾーン・クロス・ダイバージェンスを判定。
⚠️ 最新値のみ。時系列チャート描画 → prepare_chart_data(indicators: ["STOCH"])。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No | ||
| kPeriod | No | ||
| smoothD | No | ||
| smoothK | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must carry burden. It states it returns 'latest status' and 'determines zone, cross, divergence', which implies a read-only analysis. However, it does not explicitly confirm no side effects or clarify any behavioral traits beyond the analysis type, leaving some ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is short (3 sentences) and front-loaded with the indicator name. Includes a warning and a clear alternative tool reference. Could be slightly more concise by removing redundant symbols, but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Even for a simple snapshot tool without output schema, the description fails to specify the return format or what exactly each determination (zone, cross, divergence) looks like. With 6 parameters and no explanation, the agent lacks sufficient context for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description does not explain any of the 6 parameters (pair, type, limit, kPeriod, smoothD, smoothK). It only mentions stochastic terms like %K and %D but not how parameters affect calculation. This provides minimal added value over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Stochastic / Overbought / Oversold' and specifies it analyzes 'zone, cross, divergence'. It clearly distinguishes from sibling tools like 'analyze_bb_snapshot' by naming the specific indicator. The verb 'analyze' and resource 'stochastic snapshot' are explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: 'Only latest value' and directs users to 'prepare_chart_data (indicators: ["STOCH"])' for time series. This tells when not to use the tool. Missing comparison with other analyze_* siblings but the indicator-specific naming implies use for stochastic analysis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_support_resistanceC
[Support / Resistance / Key Levels] サポート・レジスタンス(support / resistance / key levels / price levels)を自動検出。反発/反落ポイントの接触回数・強度・崩壊実績を分析。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| topN | No | ||
| tolerance | No | ||
| lookbackDays | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions analysis of contact frequency, strength, and breakdown history, which gives some behavioral insight. However, it does not disclose any side effects, dependencies, or limitations (e.g., data source, computational cost).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise but lacks structure. It does not use bullet points or separate sections to convey key information about parameters or usage, making it less efficient for an agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, no annotations, and 0% schema coverage, the description is too sparse. It covers only the high-level purpose, leaving out parameter meanings, output details, and any context for proper usage. The tool is not sufficiently documented for an agent to use independently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description does not explain any of the four parameters (pair, topN, tolerance, lookbackDays). The agent has no semantic information about what these parameters do, which is critical for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it detects support/resistance/key levels and analyzes contact frequency, strength, and breakdown history. This specific verb-resource pair distinguishes it from sibling tools like analyze_fibonacci or analyze_volume_profile.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of prerequisites, scenarios, or exclusions, leaving the agent without context for selection among many technical analysis tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analyze_volume_profileC
[Volume Profile / VWAP / POC] 出来高プロファイル分析(volume profile / VWAP / POC / value area)。VWAP±σバンド・価格帯別出来高・約定サイズ分布を算出。hours で期間指定(デフォルト4h、最大24h)。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | Asia/Tokyo | |
| bins | No | Volume Profile の価格帯分割数 | |
| pair | No | btc_jpy | |
| hours | No | 直近N時間分の約定を取得(デフォルト4h)。limit より優先 | |
| limit | No | 取得する約定件数。hours 指定時は無視 | |
| valueAreaPct | No | Value Area のカバー率(デフォルト70%) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It describes what the tool calculates but does not disclose whether it is read-only, any side effects, authentication requirements, or rate limits. The description implicitly suggests it's a query tool, but this is not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short paragraph that front-loads key terms like Volume Profile and VWAP, making it quickly scannable. Every sentence contributes meaningful information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the purpose and mentions the computational outputs (bands, distributions), but since there is no output schema, it doesn't specify the return format or structure. This leaves some ambiguity for the agent regarding what data to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 67% description coverage, with descriptions for bins, hours, limit, and valueAreaPct. The description adds context for the hours parameter (default 4h, max 24h) and mentions the analysis type, but does not explain tz or pair, which lack schema descriptions. This adds marginal value but does not fully compensate for the missing descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs volume profile analysis including VWAP, POC, value area, and calculates bands and distributions. It uses specific financial terms that distinguish it from other technical analysis tools, though it does not explicitly differentiate from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It only mentions the hours parameter for specifying time range, but does not indicate when not to use it or suggest other tools for related analyses.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_macd_crossA
[MACD Cross / Crossover / Screening] MACDクロス検出(MACD cross / crossover / golden cross / dead cross / screening)。
pair省略: 複数銘柄スクリーニング / pair指定: 単一ペア深掘り分析(forming検出・過去統計)。
screen(スクリーニング用):
crossType: golden|dead|both
minHistogramDelta / maxBarsAgo / minReturnPct / maxReturnPct
sortBy: date|histogram|return|barsAgo
limit: 上位N件
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | 指定時は単一ペア深掘りモード | |
| view | No | summary | |
| pairs | No | スクリーニング時の対象ペア限定 | |
| market | No | スクリーニング時の対象市場 | all |
| screen | No | ||
| lookback | No | ||
| historyDays | No | 単一ペア: 統計対象期間 | |
| includeStats | No | 単一ペア: 過去統計 | |
| includeForming | No | 単一ペア: forming検出 | |
| performanceWindows | No | ||
| minHistogramForForming | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry full burden. It mentions behavioral aspects like forming detection and past statistics for single pair mode but does not disclose side effects, read-only nature, rate limits, or return format. The description lacks thorough transparency for a tool with zero annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, about 10 lines, with a clear structure using bullet points for screen parameters. It front-loads the purpose and avoids unnecessary text. However, it could be slightly more organized by separating mode descriptions explicitly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (11 parameters, nested object, no output schema), the description inadequately covers non-screen parameters like lookback, performanceWindows, and minHistogramForForming. While it mentions forming detection and stats, it does not explicitly link them to includeForming and includeStats, leaving an agent potentially underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 55%, and the description adds meaningful context for screen parameters (crossType, minHistogramDelta, etc.) by listing them and their purposes. However, other parameters like lookback, historyDays, and performanceWindows are not elaborated, leaving some gaps that the schema partially fills with defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool detects MACD crosses (golden cross, dead cross) and distinguishes between screening mode (multiple pairs) and single pair deep analysis. It uses specific verbs like 'detect' and 'screening' and resource 'MACD cross', making it distinct from sibling tools that analyze other indicators.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains two usage modes: screening (pair omitted) and single pair (pair specified), with clear parameter directives for each. It provides context on when to use each mode but does not explicitly contrast with sibling tools for alternative indicators, leaving room for improvement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_patternsA
[Chart Patterns / Double Top / Head and Shoulders / Triangle] チャートパターン検出(chart patterns / double top / double bottom / head and shoulders / triangle / wedge / flag)。形成中+完成済みを統合検出。表示日時は tz(既定 Asia/Tokyo)で整形。
視覚確認: 結果の overlays を render_chart_svg に渡して描画可能。 描画結果は必ずビジュアルとしてレンダリングして表示すること。 チャット本文へのSVGコード直接出力は禁止。
構造化データ (data.patterns[*].range.start/end 等) は後方互換のため UTC ISO 文字列のまま。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | 表示日時のタイムゾーン(既定: Asia/Tokyo)。get_candles の tz と揃える。pattern の表示日付(期間 / 形成期間 / 文脈期間 / ブレイク確認 / 先行トレンド / pivot / 検出対象期間 等)に適用される。構造化データ(data.patterns[*].range.start/end 等)は後方互換のため UTC ISO 文字列のまま不変。空文字も Asia/Tokyo にフォールバック。 | Asia/Tokyo |
| pair | No | btc_jpy | |
| type | No | 1day | |
| view | No | detailed | |
| limit | No | ||
| patterns | No | Patterns to detect. Recommended params (guideline): - double_top/double_bottom: default (swingDepth=7, tolerancePct=0.04, minBarsBetweenSwings=5) - triple_top/triple_bottom: tolerancePct≈0.05 - triangle_*: tolerancePct≈0.06 - pennant: swingDepth≈5, minBarsBetweenSwings≈3 Aliases: 'flag' → bull_flag + bear_flag, 'pennant' → bull/bear pennant, 'triangle' → asc/desc/sym. | |
| swingDepth | No | ||
| tolerancePct | No | ||
| includeForming | No | 形成中パターンを含める | |
| includeInvalid | No | 無効化済みパターンを含める | |
| includeCompleted | No | 完成済みパターンを含める | |
| currentRelevanceDays | No | ||
| minBarsBetweenSwings | No | ||
| requireCurrentInPattern | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It mentions that structural data (data.patterns range) remains in UTC ISO strings for backward compatibility and that display datetime is formatted per timezone. It does not disclose any side effects, rate limits, or destructive behavior, leaving gaps in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loading the purpose and key usage instructions. It avoids extraneous details, though some phrasing (e.g., '形成中+完成済みを統合検出') is repeated. Overall, it efficiently conveys essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 14 parameters, no output schema, and no annotations, the description should offer more comprehensive guidance. It introduces overlays for visualization and mentions data.patterns but does not fully explain the output structure or parameter interactions. It is adequate for basic use but lacks depth.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 36%, so the description must compensate. It adds recommended parameter settings for patterns (e.g., double_top default swingDepth=7, tolerancePct=0.04) and explains aliases like 'flag' mapping to double flags. This provides meaningful guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool detects chart patterns such as double top, head and shoulders, triangle, wedge, and flag, and indicates it detects both forming and completed patterns. This distinguishes it from sibling analysis tools that focus on indicators, support/resistance, or candle patterns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides specific guidance on how to use the output: pass overlays to render_chart_svg for visualization, and explicitly prohibits direct SVG output in chat. It also mentions timezone formatting. However, it does not explicitly compare with sibling tools or state when this tool should be preferred over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_whale_eventsC
[Whale / Large Orders / Big Players] 大口投資家の動向検出(whale / large orders / big players / smart money)。板×ローソク足で大口注文を簡易検出。推測ベース。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| minSize | No | ||
| lookback | No | 1hour |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must fully disclose behavior. It mentions 'speculation-based' and 'simple detection', but lacks details on output format, error handling, or behavior under different conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short but mixes languages and lacks structure. It conveys the core idea but could be more organized and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without output schema and with no parameter descriptions, the description fails to provide complete context. The agent cannot determine return values or how parameters affect results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not explain any parameters (pair, minSize, lookback). The agent has no additional meaning beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool detects whale/large orders using order book and candlesticks, and it is speculation-based. It distinguishes itself from sibling tools that are primarily technical indicators or data retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. The description implies it is for detecting large orders but does not specify context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_candlesA
[Candles / OHLCV / Candlestick] ローソク足(candles / OHLCV / chart data)を取得。1min〜1monthの各時間足に対応。date は tz(既定 Asia/Tokyo)の暦日として解釈し、その終端以前の limit 本を返す。 詳細は inputSchema を参照。
【重要】バックテストには run_backtest を使用(データ取得〜チャート描画を一括実行)。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | タイムゾーン(既定 Asia/Tokyo)。date パラメータの暦日解釈、isoTimeLocal、keyPoints.date、priceRange.periodStart/End の表示に使用。isoTime は常に UTC ISO。空文字も Asia/Tokyo にフォールバック。UTC が必要な場合は明示的に "UTC" を渡す。 | Asia/Tokyo |
| date | No | type により形式が異なる: - 1min/5min/15min/30min/1hour → YYYYMMDD(例: 20251022) - 4hour/8hour/12hour/1day/1week/1month → YYYY(例: 2025) date=YYYYMMDD は tz(既定 Asia/Tokyo)の暦日として解釈します。指定日の終端(23:59:59.999 in tz)以前の limit 本を返します。limit は日数ではなくローソク足本数です。例: 1hour, date=20251002, limit=24 は指定 tz の 10/2 24 本(00:00〜23:00)。 省略時は最新。 (互換: 年足系で YYYYMMDD を渡した場合は先頭4桁を年として使用) | |
| pair | Yes | ||
| type | Yes | ||
| view | No | full | |
| limit | No | デフォルト 200。1〜10000 の整数。type により実上限が変わる: 1min〜1hour は最大 10000(複数日取得)、4hour〜1month は最大 5000(複数年取得)、それ以外は 1000。実上限を超えると user エラー。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description fully discloses date/timezone interpretation, limit caps per type, and fallback behavior for tz. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise paragraph with bullet-like formatting. Front-loads core purpose and important note. Every sentence adds value with no repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers date/timezone complexity, limit behavior, and mentions backtest alternative. Lacks explicit return format (OHLCV implied) but sufficient given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%, but description adds meaning beyond schema: date formats for different types, limit maximums per type, and tz fallback. Compensates well for missing schema details on pair and view.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves candles/OHLCV data and specifies supported timeframes (1min to 1month). It distinguishes from siblings by directing backtest usage to run_backtest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance: 'バックテストには run_backtest を使用' tells when not to use this tool. Also explains date interpretation and limit behavior.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_flow_metricsA
[Flow / CVD / Buy-Sell Pressure] 資金フロー分析(flow / CVD / aggressor ratio / buy-sell pressure)。約定データからCVD・アグレッサー比・スパイクを検出。hours(推奨)で時間範囲指定、または limit で件数指定。
加工契約:
内部で使用する約定列は、取得パスに関わらず timestampMs 昇順にソート済み。
latest と date ベースをマージする場合、重複除去キーは
timestampMs:price:amount:side(transaction_id は使用しない: 同一約定でも上流エンドポイント間で ID が一致しないケースがあるため)。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | Asia/Tokyo | |
| date | No | YYYYMMDD; omit for latest | |
| pair | No | btc_jpy | |
| view | No | summary: 集計値のみ (buckets 省略) / compact: 非ゼロバケットのみ / buckets: 直近 N バケット / full: 全バケット | summary |
| hours | No | 指定した時間数分の約定を取得して分析(例: 8 → 直近8時間)。limit より優先。複数日にまたがる場合も自動で取得します | |
| limit | No | 取得する約定件数(バケット数ではない)。hours 指定時は無視されます | |
| bucketMs | No | バケットの時間幅(ミリ秒)。デフォルト60000=1分間隔 | |
| bucketsN | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses important behavioral details: internal sorting by timestampMs ascending, deduplication logic using timestampMs:price:amount:side when merging data sources, and the fact that hours parameter can fetch across multiple days. This adds substantial value beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two clear sections: purpose/usage and processing contract. It front-loads the main function and uses efficient language, though the Japanese '加工契約' section is somewhat technical but necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should clarify return structure. It mentions view parameter options (summary, compact, buckets, full) but does not explain what each returns. The tool has 8 optional parameters with defaults, but no description of default behavior beyond hours/limit priority.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 63%, and the description adds meaning for key parameters: explains that hours is prioritized over limit, specifies that limit refers to execution count not bucket count, and clarifies that hours automatically spans multiple days. This helps agents understand parameter interplay.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: analyzing fund flow metrics (flow/CVD/aggressor ratio/buy-sell pressure) from execution data. It specifies detection of CVD, aggressor ratio, and spikes, and distinguishes it from sibling analysis tools by focusing on flow-specific metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description recommends using 'hours' over 'limit' for time range specification, but does not provide explicit guidance on when to use this tool versus alternatives. There is no 'when-not-to-use' or mention of prerequisites, limiting clarity on appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_orderbookC
[Order Book / Depth / Spread] 板情報(order book / depth / bid-ask spread)の統合ツール。
【mode】summary(デフォルト): 上位N層+spread / pressure: 帯域別の買い/売り圧力 / statistics: 流動性ゾーン+大口注文 / raw: 生bids/asks+壁ゾーン推定。
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | summary | |
| pair | No | btc_jpy | |
| topN | No | ||
| ranges | No | ||
| bandsPct | No | ||
| priceZones | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only describes modes and parameters, omitting important traits such as whether the operation is read-only, if it makes network calls, or how it handles errors. The description does not add behavioral context beyond what the schema implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, consisting of only two sentences. The first sentence serves as a clear title, and the second provides a compact enumeration of modes. However, the mix of Japanese and English may reduce clarity for some agents.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, no output schema, and no annotations, the description is incomplete. It does not explain the return format, provide examples, or cover all parameters. The mode descriptions are helpful but insufficient for a tool of this complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description adds substantial meaning for the 'mode' parameter by explaining each enum value. However, it fails to describe other parameters (pair, topN, ranges, bandsPct, priceZones), which remain undocumented. The partial compensation lifts the score from a baseline of 1 to 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it's an integrated tool for order book, depth, and spread information, and enumerates the different modes (summary, pressure, statistics, raw). It effectively communicates the tool's purpose, though a more concise verb+resource phrasing would improve clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use it, or reference sibling tools. This is a significant omission for a tool with many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tickerA
[Ticker / Price] 単一ペアのティッカー(ticker / price / 24h change)を取得。現在価格・出来高・24h高安。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the data returned (price, volume, 24h high/low) but does not explicitly state it is a read-only operation or any behavioral traits beyond data retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences, no unnecessary words, and front-loads the purpose. Every sentence serves a clear function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (1 optional parameter, no output schema), the description covers the main purpose and output fields. However, it lacks mention of the default pair and return format, making it marginally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description does not mention the 'pair' parameter, its default value, or possible values. The description adds no meaning beyond the schema, leaving the agent without guidance on parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets the ticker for a single pair, including price, volume, and 24h high/low. It distinguishes from siblings like get_tickers_jpy by specifying '単一ペア' (single pair).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for a single pair but does not explicitly state when to use this tool versus alternatives like get_tickers_jpy or other analytical tools. No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tickers_jpyC
[All Tickers / Market Overview] 全JPYペアのティッカー一覧(tickers / ranking / market overview)を取得。変化率・出来高でランキング表示可能。
| Name | Required | Description | Default |
|---|---|---|---|
| view | No | ranked | |
| limit | No | ||
| order | No | desc | |
| sortBy | No | change24h |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It only states it acquires data, omitting behavioral traits like read-only nature, idempotency, or side effects. Does not mention if any data is modified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with bracketed summary. No wasted words. Could be more informative but is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, no output schema, and no annotations, the description is too minimal. It does not describe the ticker data fields (price, volume, etc.) or explain the difference between 'items' and 'ranked' views. Falls short of providing complete context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must add meaning. It mentions ranking by change rate/volume, which maps to sortBy and view parameters. However, it does not explain view ('items' vs 'ranked'), limit, or order. At least provides context for ranking capability.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it retrieves tickers for all JPY pairs and supports ranking by change rate/volume. It contrasts with the singular 'get_ticker' sibling, though not explicitly mentioned. The verb '取得' (acquire) and resource '全JPYペアのティッカー一覧' (all JPY pair tickers list) are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like 'get_ticker' or other analysis tools. The description implies it's for a market overview, but lacks when-to-use/when-not-to-use statements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transactionsB
[Transactions / Trades] 市場の約定履歴(transactions / recent trades)を取得。直近60件 or 日付指定。金額・価格でフィルタ可能。
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | YYYYMMDD; omit for latest | |
| pair | No | btc_jpy | |
| view | No | summary | |
| limit | No | ||
| maxPrice | No | ||
| minPrice | No | ||
| maxAmount | No | ||
| minAmount | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a read-only operation ('get') and hints at filtering and date specification, but does not disclose pagination, rate limits, or data freshness beyond the default 60 items.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with a clear front-loaded title and a single sentence covering core functionality. It avoids fluff but could be slightly more structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 8 parameters, no output schema, and no annotations, the description is too brief. It does not explain default behavior (e.g., how 'latest' interacts with the 'limit' default of 100) or the difference between 'summary' and 'items' views.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13% (only the 'date' parameter has a description). The description adds that filtering by amount/price is possible and mentions date specification, but does not detail the view or limit parameters, leaving significant gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb '取得' (get) and the resource '約定履歴' (transaction history), distinguishing it from sibling tools like get_candles or get_orderbook by specifying it's for transactions/trades.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions fetching the latest 60 items or by date, and filtering by amount/price, providing basic context. However, it does not explicitly state when to use this tool versus alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_volatility_metricsC
[Volatility / ATR / RV] ボラティリティ指標(volatility / ATR / realized vol)を算出。RV・ATR・Parkinson・Garman-Klass・Rogers-Satchell。年率換算対応。aggregates.atr は Wilder ATR(RMA ベース、period=14、TradingView・MT4 標準と一致)。ローリングではボラ変化を RV / Parkinson で追跡してください。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | Asia/Tokyo | |
| pair | Yes | ||
| type | Yes | ||
| view | No | summary | |
| limit | No | ||
| windows | No | ||
| annualize | No | ||
| cacheTtlMs | No | ||
| useLogReturns | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for disclosing behavioral traits. It mentions implementation details (Wilder ATR, annualization) but does not state whether the operation is read-only, what side effects exist, authentication requirements, or limits. The description is insufficient for an agent to understand the tool's safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of moderate length. It front-loads the main purpose but mixes general functionality with a specific implementation note. While not overly verbose, it lacks structure (e.g., sections) that would improve readability for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters with no schema descriptions and no output schema, the description is incomplete. It provides an overview of what the tool computes but does not explain how to configure parameters or interpret results. An agent would struggle to invoke this tool correctly without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% for 9 parameters, yet the description does not explain critical parameters like 'windows', 'annualize', 'useLogReturns', 'cacheTtlMs', or 'view'. The only parameter mentioned is 'aggregates.atr', which is not an input. This fails to compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool calculates volatility indicators (volatility, ATR, realized vol) and lists specific methods (RV, ATR, Parkinson, etc.). It distinguishes from sibling tools by focusing solely on volatility metrics, and name 'get_volatility_metrics' is precise. No sibling tool duplicates this functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'analyze_indicators' or 'analyze_market_signal'. It does not mention prerequisites, fallbacks, or exclusions. The only usage hint is internal ('track volatility changes with RV/Parkinson'), not for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_chart_dataA
[Chart / Candlestick / Visualization] チャート描画の第一選択ツール。
⚠️ limit はデフォルト 30 を推奨。ユーザーが期間を明示した場合のみ増やすこと。 indicators はユーザーが明示的に要求した指標のみ指定すること。分析のついでに追加しない。 indicators の同時指定はコンテキストを大幅に消費するため、必要最小限に留めること。
デフォルトはローソク足(OHLCV)のみ返す。indicators 未指定 = ローソク足のみ。 指標が必要な場合は indicators に明示指定: SMA_5, SMA_20, SMA_25, SMA_50, SMA_75, SMA_200, EMA_12, EMA_26, EMA_50, EMA_200, BB, ICHIMOKU, RSI, MACD, STOCH
レスポンス形式: { times[], labels?[], candles: [[o,h,l,c,v],...], series?: {指標名: values[]}, subPanels?: {...} } JPY ペアの価格は整数に丸め済み。全 null 系列は自動除外。
tz パラメータ(例: "Asia/Tokyo")指定時、times がローカル時刻に変換され、labels("03/16 17:00" 等の短縮表示文字列)も付加される。
SVG/PNG ファイル保存 → render_chart_svg。指標の最新値やトレンド判定 → analyze_indicators。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | タイムゾーン(デフォルト: Asia/Tokyo)。times をローカル時刻に変換し、labels(短縮表示文字列)も付加する。空文字でUTCのみ | Asia/Tokyo |
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No | ||
| indicators | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description carries full burden. It discloses response format, rounding behavior for JPY pairs, automatic exclusion of null series, timezone effects, and context consumption by indicators. Lacks rate limits or auth requirements but is thorough for a data retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with bullet points and emojis, front-loading purpose. Slightly lengthy but each sentence adds value; no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no output schema, and complexity (indicators, timezone, response format), description covers response format, special behaviors, and sibling tools. Missing output structure for subPanels/series details, but sufficient for agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (20%), but description compensates by explaining tz parameter behavior, default limit recommendation, indicators list with usage note, and default output. Could detail pair format and type options more, but adds significant value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is the first choice for chart drawing, returning OHLCV candlesticks and optionally indicators. It distinguishes from siblings like render_chart_svg and analyze_indicators by specifying their roles.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit guidelines provided: limit default 30 recommended, only increase if user specifies period; indicators only when explicitly requested; alternatives noted (SVG/PNG → render_chart_svg, indicator analysis → analyze_indicators).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_depth_dataA
[Depth Chart / Order Book / Visualization] 板の深度チャート描画の第一選択ツール。
getDepth(/depth API)を呼び出し、累積 volume の階段配列 ([price, cumulativeVolume][]) として返す。 Claude.ai の Visualizer 等クライアント側で描画可能な場合はこのツールを優先。 ファイル保存(SVG/PNG)が必要な場合は render_depth_svg を使用。
レスポンス形式: { bids: [[price, cumVolume], ...], asks: [[price, cumVolume], ...], bestBid, bestAsk, mid, spread, spreadPct, totalBidVolume, totalAskVolume, band: {pct, bidVolume, askVolume, ratio}, timestamp, isoTime }
bids は価格降順、asks は価格昇順
band は mid を中心とした ±bandPct 範囲の買い/売り量と比率(ratio = bidVolume / askVolume)
JPY ペアの価格は整数に丸め済み
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| levels | No | 取得する最大レベル数(片側)。10〜1000 の整数、デフォルト 200 | |
| bandPct | No | mid を中心とした ±range 比率。0.01 = ±1%。デフォルト 0.01 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavior: read operation via /depth API, return format with detailed fields, ordering of bids/asks, band calculation, rounding for JPY pairs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with purpose first, then usage guidance, then response format. Efficient but could be slightly more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but description provides comprehensive response format and behavioral details. All parameters have defaults; no required params. Context is complete for agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% (levels and bandPct described). The description does not add significant parameter details beyond schema, but the baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is the primary tool for drawing depth charts, calling the /depth API and returning cumulative volume arrays. It distinguishes itself from sibling render_depth_svg.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends using this tool when client-side visualization is possible and directs to render_depth_svg for file output, providing clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refresh_pairs_cacheA
[Maintenance / Fees] /spot/pairs 手数料レートの TTL キャッシュ(既定 1h)を強制再取得する。キャンペーン境界などで最新の maker/taker 手数料率を即時反映したいときに使う。引数なしで全ペアを再取得(pair 指定で対象ペアの率を強調表示)。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | 注記表示する対象ペア(例: btc_jpy)。指定しても再取得は全ペア対象。 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that without arguments it re-acquires all pairs, and specifying a pair only highlights that pair's rate while still refreshing all. No annotations provided, so description carries full burden; it is transparent about the forced cache update.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with front-loaded category. Every word adds value; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and a single optional parameter, the description fully covers purpose, behavior, and parameter semantics. No gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and description adds critical nuance: the 'pair' parameter only affects display, not which pairs are refreshed. This goes beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it refreshes the TTL cache for fee rates, specifying the endpoint (/spot/pairs) and the domain (fees/maintenance). It distinguishes from sibling analysis tools by indicating it's a maintenance action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (to immediately reflect latest fee rates at campaign boundaries) and describes default behavior (1h TTL). Does not mention when not to use or alternatives, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_candle_pattern_diagramA
[Candle Pattern Diagram / Education] ローソク足パターンの教育用構造図(candle pattern diagram / education / visualization)。analyze_candle_patterns の結果を初心者向けに視覚化。
ユーザーが「図で見せて」等と明示した場合のみ使用。自発的呼び出し禁止。data.svg を受け取ったら Visualizer(show_widget) の widget_code にそのまま渡してレンダリングすること。 チャット本文へのSVGコード直接出力は禁止。
| Name | Required | Description | Default |
|---|---|---|---|
| theme | No | dark | |
| title | No | Chart title (default: pattern name or "ローソク足チャート") | |
| candles | Yes | Candle data array (oldest first) | |
| pattern | No | Pattern to highlight |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses key constraints: no automatic calls, output is widget code, educational purpose. Does not mention side effects or authorization, but for a rendering tool this is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is fairly concise, front-loaded with purpose and usage rules. Some redundancy with brackets and Japanese/English duplication, but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a visualization tool with nested schema and no output schema, the description covers when to use, what it does, and how to handle output. Missing return value details but adequately complete for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 75%, so baseline is 3. The description does not add significant parameter info beyond schema; it gives usage context but no new semantics for individual parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it renders an educational candle pattern diagram, visualizing results from analyze_candle_patterns for beginners. It distinguishes from siblings like render_chart_svg by specifying it's for pattern education and only when user explicitly requests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says use only when user says 'show me a diagram' etc., and prohibits spontaneous invocation. Also provides precise instructions for output handling: pass data.svg to Visualizer widget, no direct SVG output.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_chart_svgA
[SVG file / PNG save] ローソク足・ラインチャートをサーバー側で SVG/PNG に生成。 クライアント側で描画可能な場合は prepare_chart_data を優先。 ユーザーが SVG/PNG 保存を明示した場合のみ使用。自発的呼び出し禁止。 detect_patterns の overlays を渡してパターン描画可能。 オプションのインジケーター(SMA/EMA/BB/一目均衡表)はユーザーが明示的に要求した場合のみ指定すること。デフォルトではすべてオフ。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | X軸ラベルのタイムゾーン(例: Asia/Tokyo, UTC) | Asia/Tokyo |
| pair | No | btc_jpy | |
| type | No | 1day | |
| depth | No | ||
| limit | No | ||
| style | No | candles | |
| bbMode | No | default | |
| withBB | No | ||
| withEMA | No | ||
| withSMA | No | ||
| ichimoku | No | ||
| overlays | No | ||
| subPanels | No | サブパネル: macd(MACD線+シグナル+ヒストグラム), rsi(RSI 14 + 70/30ゾーン), volume(出来高バー) | |
| svgMinify | No | Minify SVG text by stripping whitespace where safe. | |
| indicators | No | Indicators to overlay. Do NOT set unless the user explicitly requests them. Default: [] (none). Available: SMA_5, SMA_20, SMA_25, SMA_50, SMA_75, SMA_200, EMA_12, EMA_26, EMA_50, EMA_200, BB, BB_EXTENDED, ICHIMOKU, ICHIMOKU_EXTENDED | |
| withLegend | No | ||
| yPaddingPct | No | Vertical padding ratio to expand y-range. | |
| svgPrecision | No | Coordinate rounding decimals (0-3). | |
| viewBoxTight | No | Use tighter paddings to reduce empty margins. | |
| withIchimoku | No | ||
| barWidthRatio | No | Width ratio of each candle body (slot fraction). | |
| simplifyTolerance | No | Line simplification tolerance in pixels (0 disables). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It discloses that this is a server-side generation tool and prohibits spontaneous calls. However, it does not describe the return format (e.g., raw SVG string, file path, or PNG binary), nor potential side effects, error handling, or limits. Some behavioral context is given but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and front-loaded with the most critical information: purpose, alternative tool, and usage constraints. Every sentence adds value. It could be slightly more structured, but overall it is concise and effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (22 parameters, nested objects, no output schema), the description is somewhat incomplete. It lacks details on the return output (SVG/PNG specifics), error conditions, and parameter formatting beyond indicators and overlays. However, it does adequately address usage context and primary purpose. A more complete description would cover what the agent receives after calling the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 41% (low), so the description should compensate. The description adds meaning for the 'indicators' and 'overlays' parameters by specifying usage conditions, but it ignores the other 20+ parameters. For instance, it does not explain the meaning of 'bbMode', 'ichimoku', or 'subPanels' in natural language. This insufficiently aids an agent to fill parameters correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool generates candlestick/line charts as SVG/PNG on the server side. It specifically distinguishes itself from prepare_chart_data, noting that client-side rendering should be preferred. The verb 'generate' and resource 'SVG/PNG' are explicit, and the scope (candlestick/line chart) is well-defined.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Excellent usage guidance: explicitly instructs to use only when user requests SVG/PNG save, prohibits spontaneous calls, and prioritizes prepare_chart_data for client-side rendering. Additionally, it specifies that indicators should only be added when the user explicitly requests them, with defaults off. This provides clear when/when-not to use and even names the sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
render_depth_svgA
[Depth Chart / Order Book Visualization] 板の深さチャートを SVG 生成(depth chart / order book visualization / bid-ask depth)。 クライアント側(Claude.ai の Visualizer 等)で描画可能な場合は prepare_depth_data を優先し、本ツールは SVG/PNG ファイル保存(preferFile / autoSave)やファイル埋め込み用途にフォールバックする位置づけ。 data.svg を HTML に埋め込んで表示。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | btc_jpy | |
| type | No | 1day | |
| depth | No | ||
| autoSave | No | ||
| preferFile | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses SVG generation, file saving capability (autoSave/preferFile), and fallback role. Does not detail side effects or constraints beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is front-loaded with purpose but contains bilingual text and some redundancy. Could be more concise, but key information is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters, no annotations, and no output schema, the description lacks details on return value (e.g., whether SVG string or file path) and behavior of nested depth parameter, leaving gaps for agent invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. Description adds meaning for autoSave and preferFile by linking to file saving, but pair, type, and depth lack elaboration beyond defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates SVG for depth chart/order book visualization, and distinguishes it from the sibling prepare_depth_data by noting this tool is a fallback for file saving/embedding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends using prepare_depth_data when client-side rendering is possible, and reserves this tool for file save/embedding fallback scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_backtestA
[Backtest / Strategy Test / SMA Cross / RSI / MACD] 汎用バックテスト(backtest / strategy test / simulation / performance)。データ取得〜計算〜チャート描画を一括実行。
戦略: sma_cross / rsi / macd_cross / bb_breakout。 期間: 1M / 3M / 6M / 1Y / 2Y / 3Y、または start_date+end_date (YYYY-MM-DD) で任意レンジ指定可。 時間軸: 1D / 4H / 1H。 SVG チャート付きで損益・勝率・最大DD・Sharpe Ratio 等を返却。 content テキスト末尾に equity_curve / drawdown_curve の JSON を含む (chartDetail=default は最大 200 点の均等サンプル、full は全点)。独自実装不要。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | No | Trading pair (e.g., btc_jpy) | btc_jpy |
| fee_bp | No | One-way fee in basis points. When omitted, resolved dynamically from the current /spot/pairs taker rate (falls back to nominal 12 bp if unavailable). Explicit values are always respected. | |
| period | No | Backtest period: 1M, 3M, 6M, 1Y, 2Y, or 3Y. Ignored when start_date and end_date are both provided. | 3M |
| savePng | No | Save chart as PNG file to outputDir (default: false). For inline display in chat UI, leave false and use includeSvg or prepare_chart_data instead. | |
| end_date | No | Backtest end date (ISO 8601: YYYY-MM-DD). Takes precedence over period when both start_date and end_date are provided. | |
| strategy | Yes | Strategy configuration | |
| execution | No | Execution timing (fixed: t+1_open) | t+1_open |
| outputDir | No | Output directory for chart files | /mnt/user-data/outputs |
| timeframe | No | Candle timeframe: 1D (daily), 4H (4-hour), 1H (hourly) | 1D |
| includeSvg | No | Include SVG string in response (default: false, for token saving) | |
| start_date | No | Backtest start date (ISO 8601: YYYY-MM-DD). Takes precedence over period when both start_date and end_date are provided. | |
| chartDetail | No | Chart detail level: default (equity+DD only) or full (price+indicator+equity+DD+position). Use full ONLY when user explicitly requests price chart or indicator visualization. | default |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral aspects. It describes the output (SVG chart, equity/drawdown curves) and chartDetail options. It does not explicitly state that the tool is read-only (no side effects) or discuss authentication or rate limits, which would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is verbose and contains repetition (strategies listed twice in first paragraph). While the key information is front-loaded, it could be more concise. Every sentence adds value but could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (12 parameters, nested strategy object, no output schema), the description is fairly complete. It explains strategies, periods, chartDetail levels, and output format. Missing: an example of the JSON equity curve structure and error handling, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%. The description adds meaningful context beyond the schema, such as how fee_bp resolves dynamically, that chartDetail=default samples 200 points, and how start_date/end_date override period. This helps the agent understand parameter behavior.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a general-purpose backtest tool that fetches data, calculates strategy performance, and draws charts. It lists supported strategies (sma_cross, rsi, etc.), timeframes, and periods, distinguishing it from sibling analysis tools that do not perform backtesting.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear guidance on when to use chartDetail=default vs full, and notes that start_date+end_date overrides period. It also mentions that custom implementation is not needed. However, it does not explicitly compare to alternatives; siblings are sufficiently distinct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_candle_dataA
[Data Quality / Validation] OHLCVローソク足データの品質検証。 分析やバックテスト前に「このデータ信用できる?」を確認するためのツール。 完全性(歯抜け)・重複・OHLCV整合性・価格異常値・出来高異常値を検出し、0-100の品質スコア(A-F)を算出。 ペアの流動性ティア(major/mid/minor)を自動判定し、暗号資産のファットテール分布や低流動性ペアの出来高ゼロを考慮した適切なデフォルト閾値を適用。 閾値は price_sigma, volume_multiplier で手動調整も可能。
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | タイムゾーン(デフォルト: Asia/Tokyo) | Asia/Tokyo |
| date | No | YYYYMMDD or YYYY format. If omitted, uses latest data. | |
| pair | No | btc_jpy | |
| type | No | 1day | |
| limit | No | 検証対象のローソク足本数(10〜1000) | |
| price_sigma | No | 価格変化率がこの σ を超えたら異常値とみなす。省略時はペアのティア(major/mid/minor)に応じて自動設定 | |
| volume_multiplier | No | 出来高が全体平均の何倍を超えたらスパイクとみなすか。省略時はペアのティアに応じて自動設定 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes detection logic, auto-thresholds based on liquidity tier, and adjustable parameters. Without annotations, it could be clearer about read-only nature, but the validation intent is well communicated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single paragraph with logical flow: purpose, use case, detection features, auto-tier logic, manual adjustment. It is concise given the number of parameters, though slightly verbose with redundant phrases like '暗号資産のファットテール分布'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers core validation functionality and threshold logic but lacks detail on return format (e.g., whether it returns a score alone or a report with anomaly details). No output schema exists, so description should ideally describe what the agent receives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds meaning beyond schema by explaining auto-threshold behavior for price_sigma and volume_multiplier based on pair tier, and ties pair to liquidity tier. Schema coverage is 71%, and description compensates with contextual value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool validates OHLCV candlestick data quality before analysis/backtesting, detects specific anomalies, and computes a quality score. It uniquely distinguishes from sibling analysis tools by focusing on data reliability.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to use before analysis or backtesting to check data reliability, providing clear context. However, it does not explicitly contrast with sibling tools or state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
32 tool updates
v0.1.1- First observed
analyze_bb_snapshot - First observed
analyze_candle_patterns - First observed
analyze_currency_strength - First observed
analyze_ema_snapshot - First observed
analyze_fibonacci - First observed
analyze_ichimoku_snapshot - First observed
analyze_indicators - First observed
analyze_market_signal - First observed
analyze_mtf_fibonacci - First observed
analyze_mtf_sma - First observed
analyze_sma_snapshot - First observed
analyze_stoch_snapshot - First observed
analyze_support_resistance - First observed
analyze_volume_profile - First observed
detect_macd_cross - First observed
detect_patterns - First observed
detect_whale_events - First observed
get_candles - First observed
get_flow_metrics - First observed
get_orderbook - First observed
get_ticker - First observed
get_tickers_jpy - First observed
get_transactions - First observed
get_volatility_metrics - First observed
prepare_chart_data - First observed
prepare_depth_data - First observed
refresh_pairs_cache - First observed
render_candle_pattern_diagram - First observed
render_chart_svg - First observed
render_depth_svg - First observed
run_backtest - First observed
validate_candle_data
TDQS
Scored across 32 tools
Each tool targets a specific technical indicator, data source, or analysis task with clear, non-overlapping descriptions. For example, Bollinger Bands, EMA, SMA, Stochastic, Ichimoku, and Fibonacci each have dedicated snapshot tools, while higher-level tools like analyze_indicators and analyze_market_signal provide composites. Overlap is minimal and explicitly noted (e.g., snapshots vs. chart data).
All tool names follow a consistent verb_noun pattern: verbs like analyze_, detect_, get_, prepare_, render_, run_, refresh_, validate_ are used systematically. The noun part clearly indicates the object (e.g., bb_snapshot, candle_patterns, currency_strength, orderbook). No mixed conventions or vague verbs.
With 32 tools, the server is comprehensive but slightly heavy. Each tool serves a distinct purpose in trading analysis, from indicator snapshots to backtesting and data validation. However, the count is on the higher end of reasonable; a few tools (e.g., multiple snapshot tools) could potentially be consolidated, but the scope justifies the number.
The tool surface covers the full lifecycle of technical analysis: data retrieval (get_candles, get_ticker, get_transactions), indicator analysis (snapshots and composite), pattern detection, order book analysis, flow metrics, backtesting, charting (SVG/PNG), and data quality validation. There are no obvious gaps for a typical trading analysis workflow.
Maintenance
Related MCP Connectors
Ask Claude or ChatGPT about your own crypto trading: performance, patterns and behaviour.
Crypto market signals, technical indicators, and sentiment analysis for AI agents.
Connect your portfolio to Claude, ChatGPT, or Codex to analyze it and make smarter investments.
Global stock research, ML forecasts, valuation signals, screeners & portfolio tracking in Claude
Related MCP Servers
- AlicenseAqualityNot gradedmaintenanceEnables LLM assistants like Claude to interact with Zaif cryptocurrency exchange through natural language, supporting market information retrieval, chart data, trading, and account management for BTC/JPY, ETH/JPY, and XYM/JPY pairs.9MIT
- AlicenseBqualityDmaintenanceProvides advanced cryptocurrency and stock market analysis using TradingView data with real-time screening, technical indicators, and pattern recognition. Supports multiple exchanges and markets for comprehensive trading intelligence through natural language queries.103MIT
- AlicenseBqualityDmaintenanceProvides a comprehensive suite of 20 tools for cryptocurrency trading and technical analysis across 100+ exchanges like Binance and MEXC via CCXT. It enables users to execute orders, track positions, and scan for market opportunities through Claude Desktop using natural language.2020 npmMIT
- AlicenseNot gradedqualityCmaintenanceCrypto technical analysis inside Claude. Get live TA from Binance (EMA, RSI, MACD, ADX, TSS score), macro market context (ARS/MRS scores), coin ranking, and a grounded bull/bear debate — no chart-switching needed.2MIT