mcpField
O
orderly-one-dex

orderly-one-dex

github.com/orderlynetworkその他247 回インストール今日更新
リポジトリ

orderly-one-dex について

Orderly One DEXは、Orderly Network上でホワイトラベルの無期限先物DEXを作成・管理するためのスキルです。ウェブポータルまたはREST APIでの設定やデプロイ、x402決済によるブローカー登録と手数料分配への移行を扱います。

主な機能

  1. 01ウェブウィザードとREST APIの手順
  2. 02DEXの作成と設定
  3. 03ブランド、メニュー、ドメイン設定
  4. 04デプロイ状況の追跡
  5. 05ブローカー登録と手数料分配への移行

活用シーン

  1. 01ローコードでブランドDEXを立ち上げる
  2. 02APIで既存DEXを設定する
  3. 03DEXを移行してブローカーを登録する

MCP 対応

READMEではAPIエンドポイントの詳細取得にMCPツール`get_orderly_one_api_info`を挙げていますが、MCPサーバーや公開ツールの説明はありません。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/orderlynetwork/skills --skill orderly-one-dex

インストール後、Claude Code で/orderly-one-dexを入力して読み込まれたか確認します。

詳細

Orderly Network:Orderly One DEX

Orderly One(https://dex.orderly.network)は、誰でも Orderly Network 上にホワイトラベルの無期限先物 DEX をコードの有無を問わず立ち上げられるプラットフォームです。次の 2 つの機能を備えています。

  1. 人がステップごとのウィザードを使って DEX を作成、設定、デプロイできる、dex.orderly.network のウェブ UI。
  2. AI エージェントやスクリプトが同じ操作をプログラムから実行するために呼び出せるREST API。

重要: 手数料収益を得られるようになるステップである卒業とブローカー ID の作成では、エージェントは x402 HTTP 決済プロトコル(POST /api/graduation/graduate)を使って支払い、1 回のリクエストでブローカーを登録できます。ブラウザーは不要です。https://dex.orderly.network/dex のウェブポータルは、技術に詳しくないユーザーにとって引き続き最も簡単な方法です。この選択肢があることを必ず伝えてください。

2 つの立ち上げ方法

方法説明卒業手数料対象ユーザー
ローコードOrderly One ポータルまたは API を使って、ブランドに合わせた DEX フロントエンドを作成します。テンプレートリポジトリをフォークし、GitHub Pages にデプロイします。$100フロントエンド開発を最小限に抑えて素早く立ち上げたいチーム
カスタム SDK/APIOrderly SDK または API を使って、完全にカスタムのフロントエンドを構築します。Orderly One を通じて卒業し、ブローカー ID を取得できます。DEX フロントエンドは不要です。$10ウォレット、既存の取引所、全面的な制御を求めるチーム

公式のビルダー向けオンボーディングガイドを参照してください:https://orderly.network/docs/introduction/getting-started/builder-onboarding

使用する場面

  • カスタムの無期限先物 DEX を作成する
  • DEX のデプロイ、ドメイン、テーマを管理する
  • 手数料分配のための卒業を処理する

主な概念

  • ブローカー ID:Orderly エコシステム内の一意の識別子です。最初は "demo" で、卒業後に実際のブローカー ID になります。これにより、DEX は取引手数料を得られます。
  • 卒業:$10~$100 を支払い、ブローカーとして登録することで、デモ DEX を手数料収益を得られる DEX に切り替えるプロセスです。
  • テンプレートリポジトリ:ローコード DEX ごとにフォークされる GitHub リポジトリです。Orderly SDK を使った取引フロントエンドが含まれています。
  • ユーザーごとに DEX は 1 つ:各ウォレットアドレスで作成できる DEX は 1 つだけです。

API ベース URL

環境ベース URL
メインネットhttps://dex-api.orderly.network
テストネットhttps://testnet-dex-api.orderly.network

API のルートでは、インタラクティブな OpenAPI 仕様(Scalar)を利用できます:GET /

卒業時の決済に対応するチェーン

メインネット:Ethereum(1)、Arbitrum(42161)、Base(8453)
テストネット:Sepolia、Arbitrum Sepolia、Base Sepolia


API カテゴリ

エンドポイントの詳細については、get_orderly_one_api_info MCP ツールを使用してください。

カテゴリ説明主なエンドポイント
authウォレット署名による認証/api/auth/nonce、/api/auth/verify、/api/auth/validate
dexDEX の CRUD、ドメイン、デプロイ/api/dex、/api/dex/{id}、/api/dex/{id}/custom-domain、/api/dex/{id}/workflow-status
themeAI テーマの生成/api/theme/modify、/api/theme/fine-tune
graduationデモ → 手数料を共有する完全な DEX/api/graduation/graduate (x402)、/api/graduation/verify-tx、/api/graduation/fee-options、/api/graduation/refund
leaderboardDEX をまたいだランキング/api/leaderboard、/api/leaderboard/broker/{brokerId}
statsプラットフォームの統計情報/api/stats、/api/stats/swap-fee-config

DEX の作成/更新

POST /api/dex(作成)と PUT /api/dex/{id}(更新)は、どちらも multipart/form-data を使用します。

必須フィールド
フィールド型制約
brokerNamestring3~30 文字、英数字/スペース/ピリオド/ハイフン
任意項目

チェーン:

項目型備考
chainIdsnumber[] (JSON)例:[42161, 10, 8453]
defaultChainnumberデフォルトのチェーン ID

ブランディング(ファイル):

項目型最大サイズ
primaryLogoFile250KB
secondaryLogoFile100KB
faviconFile50KB
pnlPoster0..NFile各 250KB

テーマ設定:

項目型備考
themeCSSstringデフォルトテーマを上書きする CSS 変数
tradingViewColorConfigstringチャートの色を指定する JSON

ソーシャル:

項目型備考
telegramLinkstringURL
discordLinkstringURL
xLinkstringURL

認証/ウォレット:

項目型備考
walletConnectProjectIdstringWalletConnect のプロジェクト ID
privyAppIdstringPrivy のアプリ ID
privyTermsOfUsestring利用規約の URL
privyLoginMethodsstringカンマ区切り
enableAbstractWalletbooleanAbstract ウォレットを有効化
disableEvmWalletsbooleanEVM ウォレットを無効化
disableSolanaWalletsbooleanSolana ウォレットを無効化

ネットワーク:

項目型備考
disableMainnetbooleanメインネットを無効化
disableTestnetbooleanテストネットを無効化

取引:

項目型備考
swapFeeBpsnumber (0-100)スワップ手数料(ベーシスポイント単位。「Swap」を enabledMenus に含める必要があります)
symbolListstringカンマ区切り(PERP_ETH_USDC)

メニュー:

項目型備考
enabledMenusstringカンマ区切り。選択肢:Trading、Portfolio、Markets、Leaderboard(デフォルト)、Swap、Rewards、Vaults、Points
customMenusstring形式:「Name,URL;Name2,URL2」

SEO:

項目型制約
seoSiteNamestring最大 100 文字
seoSiteDescriptionstring最大 300 文字
seoSiteLanguagestring"en" または "en-US"
seoSiteLocalestring"en_US"
seoTwitterHandlestring"@handle"
seoThemeColorstring"#1a1b23"
seoKeywordsstring最大 500 文字

その他:

項目型備考
availableLanguagesstringJSON 配列。選択肢:en、zh、tc、ja、es、ko、vi、de、fr、ru、id、tr、it、pt、uk、pl、nl
analyticsScriptstringBase64 エンコード
enableServiceDisclaimerDialogboolean免責事項を表示
enableCampaignsbooleanORDER トークンキャンペーンと Points メニューを有効化
restrictedRegionsstringカンマ区切りの国名(例:「United States,China」)
whitelistedIpsstringIP 許可リスト
レスポンス

作成(201): { id, brokerId, brokerName, repoUrl, userId, createdAt }

更新(200): すべての項目を含む完全な DEX オブジェクト


主要なワークフロー

認証

Orderly One は、Orderly Network API(api.orderly.org)とは別の独自の認証システムを備えています。標準の EVM personal_sign(EIP-191)を使用します。EVM ウォレットのみ(0x アドレス)に対応しています。

  1. { "address": "0x..." } を指定して POST /api/auth/nonce → { message, nonce }
  2. 返された message に personal_sign(EIP-191)で署名します
  3. { "address": "0x...", "signature": "0x..." } を指定して POST /api/auth/verify → { user: { id, address }, token }
  4. 以降のすべてのリクエストで Authorization: Bearer {token} を使用します(有効期限は 24 時間です)
  5. 検証するには、{ "address", "token" } を指定して POST /api/auth/validate → { valid: true/false }

Note: 卒業の「管理者ウォレットを確定する」手順では、Orderly Network API(api.orderly.org)での認証が必要です。これは EIP-712 または Ed25519 署名を使用する別のシステムです。詳しくは、以下の卒業ワークフローをご覧ください。

DEX の作成フロー
  1. 上記のフィールドを含む multipart/form-data を作成します
  2. POST /api/dex → { id, brokerId, repoUrl } が返されます
  3. conclusion: "success" になるまで GET /api/dex/{id}/workflow-status をポーリングします
卒業(手数料の共有)

前提条件: brokerId: "demo" で作成した DEX(卒業済みではないこと)、および x402 の支払いに使用する Base、Arbitrum、または Ethereum 上のネイティブ USDC。

手順 1 — 手数料オプションの取得:

GET /api/graduation/fee-options → { usdc: { amount }, receiverAddress, payerAddress }

  • ローコード:$100 | カスタム SDK:$10 — x402 経由で USDC により支払います
  • payerAddress は認証済みウォレットです。支払いに使用するウォレットと同じである必要があります

手順 2 — x402 による支払い(エージェント向け):

Authorization: Bearer を指定して POST /api/graduation/graduate?brokerId=…&makerFee=…&takerFee=…&rwaMakerFee=…&rwaTakerFee=… を実行すると、1 回のリクエストで手数料の支払いとブローカーの登録が行われます。

  • 最初の POST は payment-required レスポンスヘッダー(base64 JSON)とともに 402 を返します。各ネットワーク(base 8453、arbitrum 42161、ethereum 1)につき、EIP-3009 USDC transferWithAuthorization オプションが 1 つ提示されます
  • EIP-712 認証に署名し、payment-signature ヘッダーを付けて再試行すると 200 が返されます。オンチェーンで送金が確定し(tx ハッシュは PAYMENT-RESPONSE ヘッダーの .transaction フィールドにあります)、ブローカーが自動的に登録されます
  • 支払者にガス代はかかりません。サーバーが決済を中継します。無効なパラメーターは請求前に 400/401 を返し、支払いはキャンセルされます
  • EIP-3009 の支払いウォレットは、Bearer 認証済みアカウントと同じウォレットである必要があります
  • x402 クライアント(@x402/fetch)の spendControls.maxAmountPerPayment のデフォルトは $1 です。手数料をまかなえる額に引き上げてください
  • 2 段階モード:クエリパラメーターなしで POST します(Bearer は不要です。支払いが認証となります)。その後、決済 tx ハッシュと paymentType: "usdc" を指定して verify-tx(手順 3)を呼び出します
  • 支払いが確定したものの卒業に失敗した場合は、POST /api/graduation/refund {txHash, chain}(Bearer、支払者のウォレット)で返金を請求できます

手順 3 — トランザクションの検証(2 段階 x402 のみ。自動確定済みの場合はスキップ):

以下を指定して POST /api/graduation/verify-tx を実行します。

フィールド説明
txHashPAYMENT-RESPONSE ヘッダーにある決済トランザクションのハッシュ
chain支払いに使用したチェーン:base、arbitrum、または ethereum
brokerId希望するブローカー ID(5~15 文字、^[a-z0-9_-]+$)
makerFeeメイカー手数料(bps、-0.5~15、0.1 刻み。負の値はリベート)
takerFeeテイカー手数料(bps、1~15、0.1 刻み)
rwaMakerFeeRWA メイカー手数料(bps、-0.5~15)
rwaTakerFeeRWA テイカー手数料(bps、1~15)
paymentTypeusdc — 明示的に指定してください(デフォルトは order)

API は、トランザクションの存在、送信者が認証済みユーザーと一致すること、受取人が正しいこと、金額が手数料を満たしていること、トランザクションが未使用であること、brokerId が未使用であることを検証します。ここでブローカー ID が作成されますが、手順 4 が完了するまで卒業は完了しません。 ステップ 4 — 管理者ウォレットを登録する(卒業を完了するために必須):

EVM ウォレット(エージェント):

  1. GET https://api.orderly.org/v1/registration_nonce?address={yourAddress}
  2. EIP-712 の型付きデータに署名します:{ brokerId, chainId, timestamp, registrationNonce }(卒業時と同じ brokerId とアドレスを使用)
  3. { message, signature, userAddress } を指定して POST https://api.orderly.org/v1/register_account を実行します → account_id
  4. 空の JSON ボディ {} と Bearer を指定して POST /api/graduation/finalize-admin-wallet を実行します — 自分のウォレットを管理者として紐付けます(エージェントの場合、マルチシグのフィールドは省略します)

Solana ウォレット:

  1. 同じフローを使用しますが、chainId: 900900900 とし、Solana ウォレットで署名して、chainType: "SOL" を指定します

EVM マルチシグ/Gnosis Safe:

  1. Safe Wallet → Transaction Builder → バッチ:Vault コントラクトで [keccak256(brokerId), userAddress] を指定して delegateSigner を実行します
  2. 署名者の承認を得て実行します
  3. { multisigAddress, multisigChainId } を指定して POST /api/graduation/finalize-admin-wallet を実行します

注: ステップ 4 の登録では Orderly One ではなく、Orderly Network API(api.orderly.org)で認証します(認証システムが異なります:EIP-712/Ed25519)。finalize-admin-wallet 自体では、Orderly One の Bearer トークンを使用します。isGraduated: true になるまで GET /api/graduation/graduation-status で確認してください。

卒業ステータスと手数料:

エンドポイント説明
GET /api/graduation/status基本ステータス:{ currentBrokerId, approved }
GET /api/graduation/graduation-status詳細:{ isGraduated, brokerId, isMultisig, multisigAddress }
GET /api/graduation/fees現在のメイカー/テイカー/RWA 手数料率
GET /api/graduation/tierBuilder Staking Programme のティア
POST /api/graduation/refund決済済みだが未使用の x402 支払いを回収します:{txHash, chain}

Orderly MCP

このスキルでは Orderly MCP サーバーを参照します。インストールされていない場合は、セットアップについて orderly-onboarding スキルを参照してください。

ツール: get_orderly_one_api_info

  • { endpoint: "/api/dex" } - 特定のエンドポイントの詳細
  • { category: "graduation" } - カテゴリー内のすべてのエンドポイント
  • {} - API の全概要

よくある問題

問題解決方法
DEX のデプロイが進まないジョブの失敗について、/api/dex/{id}/workflow-runs/{runId} を確認します
ドメインが機能しない{org}.github.io に CNAME を設定し、DNS の伝播を待ちます
グラデュエーションの検証に失敗するPAYMENT-RESPONSE から決済トランザクションハッシュとチェーンを確認し、承認を待ちます
"Broker ID already taken"verify-tx で別の brokerId を選択します
"Transaction hash already used"各トランザクションは一度しか使用できません(リプレイ防止)。新しい支払いを送信します
x402 の支払いは完了したが、ブローカーが登録されない2 段階で行います。決済トランザクションハッシュを指定して POST /api/graduation/verify-tx を実行します(paymentType: "usdc")。失敗した場合は、POST /api/graduation/refund を実行します
x402 の支払いが金額不足で拒否される手数料をカバーできるよう、x402 クライアントの spendControls.maxAmountPerPayment(デフォルトは $1)を引き上げます
"Must register EVM address"finalize-admin-wallet を呼び出す前に、管理者ウォレットの登録(ステップ 4)を完了します
"Already graduated"各ユーザーがグラデュエーションできるのは一度だけです
ロゴのアップロードに失敗するファイルサイズの上限(プライマリは 250KB、セカンダリは 100KB)を確認します
無効な CSS送信前に themeCSS の構文を検証します

関連スキル

  • orderly-onboarding - アカウントのセットアップとビルダーのオンボーディング
  • orderly-trading-orders - 取引機能

コメント