everstake について
everstakeは、Everstakeの企業情報とステーキングデータをAIエージェントに提供するMCPサーバーです。資料検索に加え、チェーンと稼働状況のライブデータ、報酬の試算、連携問い合わせ機能を備えています。
主な機能
- 01企業・製品・ソリューション情報の取得
- 02開発者向け資料と連絡先の検索
- 03セキュリティ情報とカストディ連携の確認
- 04チェーンの状態・APY・手数料の確認
- 05稼働指標の確認と報酬の試算
- 06連携またはステーキングの問い合わせ送信
活用シーン
- 01組織向けにEverstakeのサービスを確認
- 02対応チェーンと最新指標の確認
- 03ネットワークと金額に応じた報酬の試算
- 04ステーキングや連携について問い合わせ
MCP 対応
MCPサーバーは、企業・製品情報、ライブのダッシュボード指標、ステーキング計算ツールをAIエージェントに公開します。Streamable HTTPとstdioに対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.everstake.comclaude mcp add --transport http com-everstake https://mcp.everstake.com{"mcpServers":{"com-everstake":{"type":"http","url":"https://mcp.everstake.com"}}}Cursor で開く{"servers":{"com-everstake":{"type":"http","url":"https://mcp.everstake.com"}}}VS Code で開く{"mcpServers":{"com-everstake":{"type":"http","url":"https://mcp.everstake.com"}}}{"mcpServers":{"com-everstake":{"serverUrl":"https://mcp.everstake.com"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
11このツールにパラメーターはありません。
詳細
Everstake MCP サーバー
AI エージェントに Everstake のステーキングデータと会社情報を提供する MCP サーバーです。modelcontextprotocol/go-sdk を使用して Go で構築されています。
トランスポート: Streamable HTTP(MCP 2025-03-26 仕様、単一の / エンドポイント)または stdio。MCP_TRANSPORT で選択します。
利用可能なツール
| ツール | 種類 | 説明 |
|---|---|---|
get_company_profile | 静的 | 会社概要、指標、認証 |
get_products | 静的 | 製品の詳細:Institutional Staking、VaaS、Yield、SWQOS、ShredStream |
get_solutions | 静的 | 対象者別のソリューション:カストディアン、取引所、資産運用会社、銀行、フィンテック |
get_developer_docs | 静的 | SDK のリンク、統合ガイド、API リファレンス |
get_contact_information | 静的 | 問い合わせ窓口と振り分けガイド |
get_security_profile | 静的 | 認証:SOC 2 Type II、ISO 27001、NIST CSF、ITGC、GDPR、CCPA |
get_integrations | 静的 | カストディ統合:Fireblocks、BitGo、Anchorage、Coinbase など |
get_uptime_metrics | ライブ | ダッシュボード API の稼働時間指標(30 分間キャッシュ) |
get_chains | ライブ | APY、手数料、ステータスを含む対応チェーン(30 分間キャッシュ) |
staking_calculator | ライブ | ネットワークと金額に基づくステーキング報酬の推定 |
request_integration | 書き込み | Everstake の営業窓口に統合/ステーキングの問い合わせを送信 |
サーバーの実行
前提条件
- Go 1.26.1+
- 環境変数
DASHBOARD_URLの設定(必須)
ローカル
export DASHBOARD_URL=https://your-dashboard-api-host
go run ./cmd/mcp_server
デフォルトでは、サーバーはポート 8080 で起動します。PORT=<port> で変更できます。
Stdio モード
export DASHBOARD_URL=https://your-dashboard-api-host
export MCP_TRANSPORT=stdio
go run ./cmd/mcp_server
stdio モードでは、HTTP サーバー、/health エンドポイント、レート制限が無効になります。ログは stderr に出力され、stdout は MCP JSON-RPC プロトコルに使用されます。
Docker
HTTP モード:
docker build -t everstake-mcp .
docker run -e DASHBOARD_URL=https://your-dashboard-api-host -p 8080:8080 everstake-mcp
Stdio モード(対話型、ポートマッピングなし):
docker run --rm -i \
-e DASHBOARD_URL=https://your-dashboard-api-host \
-e MCP_TRANSPORT=stdio \
everstake-mcp
JSON-RPC プロトコル用に stdin を接続したままにするには -i を使用します。-t は指定しないでください(TTY を使うと行単位の JSON フレーミングが壊れます)。サーバーをサブプロセスとして起動する MCP クライアントでは、上記に一致する args を指定して command を docker に設定するか、ヘルパースクリプトでラップしてください(--env-file を使った例は .vscode/stdio_docker.sh を参照してください)。
環境変数
| 変数 | デフォルト | 必須 |
|---|---|---|
DASHBOARD_URL | — | はい |
MCP_TRANSPORT | http | いいえ(http または stdio) |
PORT | 8080 | いいえ(http モードのみ) |
GIN_MODE | — | いいえ(Dockerfile で release に設定) |
ヘルスチェック
GET /health
MCP Inspector でのデバッグ
MCP Inspector は、MCP サーバーを調べるための公式ツールです。ツールの一覧表示や呼び出し、生の JSON-RPC の確認ができます。
Stdio に関する注意: stdio サーバーは親プロセスによって管理されるため、すでに実行中の stdio コンテナーに Inspector を接続することはできません。Inspector 自身がサブプロセスを起動する必要があります。再接続可能な対話型セッションを使う場合は、HTTP モードを使用してください(以下のオプションを参照)。
HTTP モード(通常のデバッグに推奨)
コンテナーを起動します:
docker run --rm -p 8080:8080 \
-e DASHBOARD_URL=https://your-dashboard-api-host \
-e DASHBOARD_API_KEY=<key> \
everstake-mcp
Inspector を開きます:
npx @modelcontextprotocol/inspector
UI で以下を設定します:
- トランスポートの種類:
Streamable HTTP - URL:
http://localhost:8080/
Inspector のセッション間もコンテナーは実行されたままです。
Stdio モード(stdio トランスポートの確認)
Inspector がコンテナーを起動し、stdin/stdout を管理するようにします:
npx @modelcontextprotocol/inspector \
docker run --rm -i \
--env-file .env \
everstake-mcp
または、UI に手動で入力します:
- トランスポートの種類:
STDIO - コマンド:
docker - 引数:
run --rm -i --env-file .env everstake-mcp
Inspector の各セッションで新しいコンテナーが起動し、Inspector を終了するとコンテナーも停止します。
リンティング
このプロジェクトでは、.golangci.yml の厳格な設定を使用して golangci-lint を実行します。
golangci-lint のインストール:
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
実行:
make lint
適用される主なルール:staticcheck(すべてのチェック)、gosec、gocritic(診断/スタイル/パフォーマンスのタグ)、revive(早期リターン、エラー文字列、変数の命名など 40 以上のルール)、errchkjson、bodyclose、contextcheck などです。nolintlint では、個別に指定した lint ディレクティブが必要です。単独の //nolint は使用できません。
ツールの応答の編集
静的ツール
tools.yaml を編集します。各マップキーがツール名で、static_response フィールドが AI エージェントにそのまま返されます。
tools:
get_company_profile:
description: |
...
static_response: |
COMPANY: Everstake
...
静的ツールを追加するには:
tools.yamlのtools:の下に、static_responseを含むエントリーを追加します。internal/config/mcp_config.goのToolsConfigに、対応するフィールドを追加し、一致するyaml構造体タグを指定します。名前はリフレクションによって自動的に挿入されます。internal/server/mcp/server.goでstaticTextTool()を使用して登録します。
コンテンツのルール
すべてのツールの応答に適用される横断的なルールは、.vscode/tools_src/RULES.md にあります。ルールの対象は次のとおりです。
- 認証における差別化要素の表現
- 非カストディアルとしての位置付け
- Vault 製品の免責事項
- APY の免責事項の表現
request_integrationのリードソースのタグ付け
動的ツール
get_uptime_metrics と get_chains は、ダッシュボード API からライブデータを取得し、インメモリキャッシュに 30 分間保存します。ハンドラーは internal/server/mcp/dashboard.go にあります。基盤となる API クライアントは pkg/everstake/dashboard/ にあります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。