mcpField
R
Riskstate

Riskstate

ローカル
github.com/likidodefi金融データ17 週間前に更新

Riskstate について

Riskstateは、BTC/USDとETH/USDの現物、無期限先物、DeFi借入に対応する、取引前のリスク判定用MCPサーバーです。トレーディングエージェントはエクスポージャー上限を確認し、ポートフォリオ全体を考慮した建玉チェックを行えます。ツールは読み取り専用です。

主な機能

  1. 01BTC・ETHのリスクポリシー評価
  2. 02ポートフォリオを考慮した取引チェック
  3. 03市場構造とプレイブック状況の確認
  4. 04監査ハッシュ付き読み取り専用ツール

活用シーン

  1. 01取引前に許容エクスポージャーを確認
  2. 02保有ポジションを含めて建玉案を検証
  3. 03取引セットアップの実行可否を確認

MCP 対応

ホスト型のStreamable HTTPエンドポイント、またはキーが必要なstdioパッケージを通じて、MCPクライアントに読み取り専用のリスク・市場情報ツールを提供します。結果はサーバー側で計算され、注文やポリシー変更は行いません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"riskstate": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"RISKSTATE_API_KEY",
"ghcr.io/likidodefi/riskstate-mcp"
],
"env": {
"RISKSTATE_API_KEY": "<RISKSTATE_API_KEY>"
}
}
}
}
起動コマンドdocker run -i --rm -e RISKSTATE_API_KEY ghcr.io/likidodefi/riskstate-mcp
設定が必要な環境変数
RISKSTATE_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/likidodefi/riskstate-mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

RiskState MCP サーバー

RiskState 用 MCP サーバー — BTC/USD と ETH/USD の取引前リスク権限を確認できます。現物、無期限先物(パープ)、DeFi の借り入れを考慮します。

システムが尋ねるのは、**「今、どれくらいのリスクを取れますか?」**です。 RiskState は、30 以上のリアルタイムシグナルから算出したポリシーレベル、最大エクスポージャー、レバレッジ上限、ブロックされたアクションを返します。

MCP 経由で RiskState を利用する 2 つの方法

1. リモートコネクター — インストールも API キーも不要です。 RiskState は、無料のパブリックティアを備えたホスト型 MCP サーバー(Streamable HTTP)を提供しています。

https://api.riskstate.ai/mcp

Claude または ChatGPT にカスタムコネクターとして追加し、 BTC のリスク状態を尋ねるだけです。3 つのエンジンすべてをカバーする、読み取り専用の 3 つのツール — get_risk_state、 get_market_structure、get_playbook_status — を提供しており、公式 MCP レジストリに ai.riskstate/mcp として登録されています。

応答は、無料のパブリックサマリーです。公開ビジュアライザーと同じ概要レベルです。policy_hash、複合サブスコア、ポジショニング、マクロの詳細を確認するにはキーが必要です。

2. このパッケージ — stdio、キー認証、完全な応答。 ローカルエージェントで監査済みの完全なペイロードを利用したい場合や、独自のツールチェーンでバージョンを固定したい場合に使用します。 RISKSTATE_API_KEY が必要で、キーでアクセス権があるすべての情報を返します。この README の残りでは、この方法について説明します。

ツール

取引前に尋ねる可能性のある 4 つの質問に、それぞれ対応する読み取り専用ツールです。

ツール回答内容エンドポイントキー
get_risk_policy許可されるエクスポージャーはどれくらいですか?POST /v1/risk-state必要
get_market_structure構造的な転換点が近づいていますか?POST /v1/market-structure必要
get_playbook_status今、このセットアップは実行可能ですか?GET /api/playbook-data不要
check_tradeこのポジションは許可されますか?POST /v2/portfolio-risk-state必要

get_risk_policy は次の情報を返します。

フィールド説明
policy_level5 段階のレベル:BLOCK_SURVIVAL、BLOCK_DEFENSIVE、CAUTIOUS、GREEN_SELECTIVE、GREEN_EXPANSION
max_size_pctポートフォリオに対する最大ポジションサイズ(%)(0〜100)
leverage_max許可される最大レバレッジ倍率
allowed_actionsこのポリシーレベルでエージェントが実行できること
blocked_actionsエージェントが実行できないこと
confidence_scoreシグナルの一致度 × データ品質(0〜1)

check_trade は仮想のポートフォリオを評価します — 検討中のポジションと、すでに保有しているポジションをすべて送信してください。上限はポートフォリオ全体を考慮するためです。各ポジションが許可されるかどうか、サイズ上限(パーセントとドル建て)、許可されない場合は reason_codes を返します。reason_codes はブロック要因です。advisories は参考情報であり、allowed には影響しません。注文は実行しません。

get_playbook_status は、条件が一致し、どのエンジンからも拒否されず、さらにアラートのクールダウン中でないセットアップのみを実行可能として報告します。条件は一致していてもすでにアラート済みのセットアップは別途カウントされるため、エージェントがこのツールをポーリングしても、同じシグナルに対して二度行動することはありません。

書き込みツールがない理由

update_policy も set_limit も例外管理もありません — 今後も追加されません。RiskState の前提は、統制されるシステム自身が自らの上限を変更できないことです。各判断にはハッシュ(policy_hash)が付与され、後から、その判断を生み出した入力と照合して監査できます。呼び出し元がポリシーを書き換えられるツールがあれば、そのハッシュは意味を失い、監査証跡は形だけのものになってしまいます。

そのため、この仕組みのライフサイクルは意図的に一方向です。エンジンが計算し、エージェントが読み取って従います。check_trade は取引ごとの動的な操作に最も近いものですが、それでも読み取り専用です。「これを許可した場合どうなるか」に答えるものであり、「これを許可する」ものではありません。

API はサーバー側で 9 以上のリアルタイムデータソースを集約します。詳細はAPI ドキュメントをご覧ください。

このラッパーが行うこと(および行わないこと)

これは薄いラッパーです。MCP ツール呼び出しを REST API リクエストに変換し、レスポンスを返します。すべての計算(スコアリング、ポリシーエンジン、データ取り込み)はサーバー側で行われます。

このラッパーが行うこと:

  • MCP プロトコルへの準拠(Claude Desktop/Code 用の stdio トランスポート)
  • Zod スキーマによる入力検証
  • 人が読みやすいポリシーの概要をレスポンスの先頭に追加
  • エージェントが復旧できるよう、具体的なエラーメッセージ(認証、レート制限、タイムアウト)を返す

このラッパーが行わないこと:

  • レスポンスのキャッシュ(API にはサーバー側の 60s キャッシュがあります)
  • スコアリングや計算のローカルでの実行
  • レスポンススキーマの安定性の保証(API のバージョン管理に従います)

インストール

npm install @riskstate/mcp-server

設定

環境変数
変数必須説明
RISKSTATE_API_KEYはいriskstate.ai の API キー(ベータ期間中は無料)
RISKSTATE_API_URLいいえカスタム API ベース URL(デフォルト:https://api.riskstate.ai)
Claude Desktop

~/.config/Claude/claude_desktop_config.json に追加します。

{
  "mcpServers": {
    "riskstate": {
      "command": "npx",
      "args": ["-p", "@riskstate/mcp-server", "riskstate-mcp"],
      "env": {
        "RISKSTATE_API_KEY": "your-api-key"
      }
    }
  }
}
Claude Code
claude mcp add riskstate -- npx -p @riskstate/mcp-server riskstate-mcp

環境に API キーを設定します。

export RISKSTATE_API_KEY=your-api-key
グローバルインストール(代替方法)
npm install -g @riskstate/mcp-server
riskstate-mcp  # starts MCP server on stdio

使用方法

上記の 4 つのツールを利用できます。get_risk_policy が受け取るパラメーターは次のとおりです。

パラメーター
パラメーター型必須説明
asset"BTC" | "ETH"はい分析するアセット
wallet_addressstringいいえオンチェーンのポジションデータを取得する DeFi ウォレット
protocol"spark" | "aave"いいえレンディングプロトコル(デフォルト:spark)
include_detailsbooleanいいえ詳細な内訳(サブスコア、マクロ、リスクフラグ)を含めます
レスポンスの例
{
  "exposure_policy": {
    "policy_level": "CAUTIOUS",
    "max_size_pct": 35,
    "leverage_max": 1.5,
    "allowed_actions": ["DCA", "WAIT", "SPOT_LONG_CONFIRMED"],
    "blocked_actions": ["LEVERAGE_GT_2X", "NEW_POSITIONS_UNCONFIRMED"]
  },
  "classification": {
    "cycle_phase": "MID",
    "market_regime": "RANGE",
    "macro_regime": "NEUTRAL",
    "direction": "SIDEWAYS"
  },
  "auditability": {
    "composite_score": 52,
    "confidence_score": 0.72,
    "policy_hash": "a3f8c2...",
    "ttl_seconds": 60
  }
}

エージェントでの使用方法

すべての取引の前に get_risk_policy を呼び出します。

  1. policy_level が BLOCK で始まる場合 → 新しいポジションを建てないでください
  2. max_size_pct を使ってポジションサイズの上限を設定します
  3. 実行前に blocked_actions を確認します
  4. ttl_seconds の経過後に再照会します(60s キャッシュ)

サイズを指定したポジションでは、check_trade を使うと手順 2〜3 を 1 回の呼び出しにまとめられます。建てる予定のポジションと、すでに保有しているポジションを一緒に送信し、allowed と reason_codes を確認してください。上限はポートフォリオを考慮しており、単独では条件を満たすポジションでも、集計後に集中度の上限を超える可能性があるため、自分で上限を再計算するよりもこちらを使うことを推奨します。

get_market_structure と get_playbook_status は参考情報であり、取引の許可を示すものではありません。どちらも取引を承認するものではなく、承認するのはリスクポリシーだけです。これらを使って取引を提案する価値があるかどうかを判断し、その後 get_risk_policy/check_trade で許可されるポジションサイズを確認してください。

制限事項

  • v1 の対象範囲: BTC/USD と ETH/USD のみ(USD 建ての評価)。今後、対応アセットを追加予定です。
  • 市場: 現物、無期限先物、DeFi の借入。同じレスポンスを返しますが、市場によって解釈が異なります(API ドキュメントを参照)。
  • プロトコル: DeFi ポジションデータは Spark と Aave V3 のみ対応しています。
  • レート制限: API キーごとに 1 分あたり 60 リクエスト。
  • レイテンシ: リクエストあたり約 1〜3 秒(9 つ以上の上流データソースを集約)。
  • テスト済み: Claude Desktop、Claude Code。MCP 互換クライアントであれば、どれでも動作するはずです。

リンク

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。