CTRL について
CTRLは、Base上のオンチェーンワークフローを自動化するMCPサーバーです。エージェントがトリガー、アクション、条件を組み合わせ、ユーザーはデプロイ用バッチに署名して金庫の支出上限を設定します。エージェントが鍵を保持することはありません。
主な機能
- 01プロンプトからワークフロー案を作成
- 02ワークフローブロックとスキーマの一覧
- 03有効化・出金バッチの署名用エンコード
- 04ワークフローの手動テスト
- 05実行ログの確認
- 06金庫の支出上限と緊急停止
活用シーン
- 01定期的なトークンスワップの設定
- 02価格やトークンのローンチに応じた実行
- 03監視ウォレットの取引のコピー
- 04利回り比較に基づく資金移動
MCP 対応
CTRLは、金庫状態の取得、ワークフローの作成・有効化、出金、テスト実行、ログ確認に使う7つのツールをMCPクライアントに提供します。ctrl.build/api/mcpのリモートMCPエンドポイントに接続します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://www.ctrl.build/api/mcpclaude mcp add --transport http ctrlabs-ctrl https://www.ctrl.build/api/mcp{"mcpServers":{"ctrlabs-ctrl":{"type":"http","url":"https://www.ctrl.build/api/mcp"}}}Cursor で開く{"servers":{"ctrlabs-ctrl":{"type":"http","url":"https://www.ctrl.build/api/mcp"}}}VS Code で開く{"mcpServers":{"ctrlabs-ctrl":{"type":"http","url":"https://www.ctrl.build/api/mcp"}}}{"mcpServers":{"ctrlabs-ctrl":{"serverUrl":"https://www.ctrl.build/api/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
ctrl-mcp
オンチェーン自動化のための MCP です。一度署名すれば、あとはエージェントがずっと実行します。
ctrl は Base 上のオンチェーンアクションを自動化するワークフローです。トリガー → アクション → 条件のグラフを平易な英語で組み立て、バッチに一度署名して Vault と支出上限をデプロイすると、キーパーがその上限内でワークフローをずっと実行します。
これは MCP のインターフェースです。エージェントが操作し、ユーザーはウォレットでサインインします。
$ claude mcp add ctrl https://ctrl.build/api/mcp
または、クライアントの MCP 設定に貼り付けてください。
{
"mcpServers": {
"ctrl": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://ctrl.build/api/mcp",
"--header", "Authorization:Bearer ${CTRL_API_KEY}"],
"env": { "CTRL_API_KEY": "sk_ctrl_..." }
}
}
}
ctrl.build/settings/api-keys でキーを発行してください。
エージェントにプロンプトするだけです。
エージェントが利用できる機能
ツールは7つだけです。
| ツール | 機能 |
|---|---|
ctrl_get_vault_status | ユーザーの Vault アドレス、残高、有効なルールを読み取ります |
ctrl_get_block_catalog | すべてのブロックとフィールドスキーマの最新リストを取得します |
ctrl_create_workflow | プロンプトからワークフローの下書きを組み立てて保存します |
ctrl_activate | デプロイのためにユーザーが署名する eip-5792 バッチをエンコードします |
ctrl_withdraw | Vault からユーザーのウォレットに資金を戻すバッチをエンコードします(eth、weth、または任意の erc-20) |
ctrl_fire_manual | テストのためにワークフローを一度実行します。待つ必要はありません |
ctrl_get_execution_logs | basescan のトランザクションハッシュ、ガス、ステータス、キーパーの履歴を取得します |
内部では24種類のブロックが動作します
トリガー — time.interval、trigger.manual、price.above/below/change、pool.created(clanker / flaunch / zora / bankr)、watch.whale、event.transfer、event.balance、trending.token
アクション — cypher.swap、read.balance、notify.telegram、notify.discord、util.webhook
条件 — cond.price、cond.balance、cond.allowed_weekdays、cond.time_window
ユーティリティ — util.delay、util.note、util.log、util.stop、util.snapshot
エージェントはまず ctrl_get_block_catalog を呼び出して、最新の構成を確認します。すべてのブロック ID はキーパーによる実行に1対1で対応します。
プロンプトの例
以下をエージェントに入力して、動作を確認してみましょう。
- 「毎週月曜日の14:00 UTCに、50ドル分の eth を usdc にドルコスト平均法で交換して」
- 「名前に
miladyが含まれる新しい flaunch のローンチをスナイプして。それぞれ0.005 eth、2倍になったら自動売却」 - 「ウォレット 0x6cc5...c01b を監視して。10,000ドルを超えるものを購入したら、0.01 eth でコピーして」
- 「1時間で価格が20%下落したら、保有する pepe の50%を売却して」
- 「毎週月曜日の正午に moonwell の usdc APY を確認して。morpho より1%低ければ、80%を移動して」
セキュリティ
Vault 直接実行モデルです。エージェントがキーを保持することはありません。
- オンチェーン上限:すべてのルールで変更不可能な
maxPerSwapとmaxPerDayに署名します。Vault コントラクトがこれを強制します。 - 緊急停止機能:
pauseVault()ですべてを停止し、revokeRule(id)で特定のワークフローを停止できます。どちらもユーザーが実行できる1トランザクションの操作です。 - 安全機能:
pool.createdはスワップの前に goplus によるハニーポット、税、スコアのチェックを実行します。 - キーパーの権限は制限されています:キーパーフリートは Vault が許可するメソッドのみを呼び出せます。キーパーが侵害されても、損失は最大で1回分のスワップ上限にとどまります。
Base 上で検証済みのコントラクト:
- v13 Vault ファクトリー — 0x5Df25e79efd7f9dc86841b404b3EA6F4b7951DBB
- Vault 実装 — 0xc98137a6df7fb91ab91b568bf923490a278aa702
- タイムロックビーコン — 0x5760A6D62743860F27843fA314E22166dBEF7d73
エコシステム
あらゆる MCP クライアントで動作します。以下でテスト済みです。
- claude code ·
~/.claude.json - claude desktop ·
~/Library/Application Support/Claude/claude_desktop_config.json - cursor ·
~/.cursor/mcp.json - hermes (nousresearch/hermes-agent)
- aeon (aaronjmars/aeon)
- アプリ · ctrl.build
- ドキュメント · ctrl.build/docs
- MCP ハブ · ctrl.build/mcp
- 関連リポジトリ · ctrl-skill
mit
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。