Dagon Inference について
Dagon Inference は stdio MCP サーバーで、MCP クライアントから Dagon Inference の OpenAI 互換 API を使い、オープンウェイト LLM でのチャットやアカウント操作を行えます。モデル一覧、残高確認、キー作成、Solana USDC によるクレジット購入に対応し、取引検証と支出上限を備えます。
主な機能
- 01モデルと価格の一覧表示
- 02クレジットと利用残高の確認
- 03アカウントキーの作成
- 04オープンウェイト LLM とのチャット
- 05Solana USDC でクレジット購入
- 06購入取引の検証と支出上限
活用シーン
- 01リクエスト前に利用可能なモデルを確認
- 02MCP クライアントからチャット補完を実行
- 03アカウントのクレジットと利用量を確認
- 04Solana USDC で推論クレジットを購入
MCP 対応
stdio MCP サーバーとして、モデル、残高、キー作成、購入、確認、チャットのツールを MCP クライアントに提供します。ゲートウェイへのアクセスにはアカウントキーを使い、x402 による支払いには対応しません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://inference.dagon.so/mcpclaude mcp add --transport http inkwell-finance-dagon https://inference.dagon.so/mcp{"mcpServers":{"inkwell-finance-dagon":{"type":"http","url":"https://inference.dagon.so/mcp"}}}Cursor で開く{"servers":{"inkwell-finance-dagon":{"type":"http","url":"https://inference.dagon.so/mcp"}}}VS Code で開く{"mcpServers":{"inkwell-finance-dagon":{"type":"http","url":"https://inference.dagon.so/mcp"}}}{"mcpServers":{"inkwell-finance-dagon":{"serverUrl":"https://inference.dagon.so/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://inference.dagon.so/mcp認証が必要ツール
詳細
Dagon Inference MCP サーバー
Dagon Inference 用の stdio Model Context Protocol サーバーです。モデルの一覧表示、残高の確認、キーの作成、Solana 上での USDC によるクレジットの購入、チャットを行えます。
Dagon Inference は、OpenAI 互換 API を通じて、検閲されていない(abliterated)オープンウェイト LLM を提供し、Solana 上で USDC による支払いを受け付けます。このサーバーを使うと、MCP クライアント(Claude Desktop、Claude Code、Cursor など)から直接利用できます。Node 22.18 以降が必要です。インストール手順はありません。
npx -y dagon-mcp
dagon_create_key ツールを使うか、https://inference.dagon.so でアカウントキーを取得してください。
MCP クライアントをお持ちでない場合、エージェントは代わりに x402 でリクエストごとに支払えます。キーなしでリクエストを送信し、402 で要求される USDC 送金に署名して再試行し、返されたキーを x-dagon-key に保存します。キーも SOL も不要で、@x402/fetch と @x402/svm などの x402 クライアント以外にインストールも不要です。このサーバーは x402 による支払いには対応していません。キーと、以下で説明するウォレット購入を使用します。
ツール
| ツール | 機能 | キー |
|---|---|---|
dagon_models | GET /v1/models:モデルと価格を取得します。 | 不要 |
dagon_balance | GET /v1/credits:クレジット、使用量、利用可能な残高(USD)を取得します。 | 必要 |
dagon_create_key | POST /v1/keys:アカウントキーを作成します。キーは一度だけ表示されます。 | 不要 |
dagon_buy_credits | { amount_usd, chain: "solana", payer_wallet? }:Solana 上で USDC を使ってクレジットを購入します。 | 必要 |
dagon_confirm_purchase | ご自身で送信した支払いには { purchase_id, signature }、署名したものの送信していない手数料スポンサー付きの支払いには { purchase_id, signed_transaction } を指定すると、クレジットが反映されます。 | 必要 |
dagon_chat | { model, prompt or messages, system?, max_tokens?, temperature? }:ストリーミングなしのチャット補完を 1 回実行します。 | 必要 |
残高確認とチャットでは、デフォルトで DAGON_API_KEY を使用し、api_key 引数も指定できます。購入と確認ではアカウントの上書きはできません。常にサーバーに設定された DAGON_API_KEY を使用するため、ツールの呼び出し元が設定済みウォレットの支払い先を別のアカウントに変更することはできません。
クレジットの購入
dagon_buy_credits は POST /v1/credits/purchase を呼び出した後、POST /v1/credits/purchase/confirm を呼び出します(ガイド)。
ゲートウェイを呼び出す前に、購入額は DAGON_MIN_PURCHASE_USD(デフォルトは $1)以上である必要があります。また、1 回あたりの上限 DAGON_MAX_PURCHASE_USD(デフォルトは $50)以内であり、このサーバープロセスがすでに準備した購入額との合計が DAGON_MAX_PURCHASE_USD_PER_SESSION(デフォルトは $200)以内、さらに支出台帳を共有するすべてのサーバープロセスが本日(UTC)準備した購入額との合計が DAGON_MAX_PURCHASE_USD_PER_DAY(デフォルトは $200)以内である必要があります。これらの上限を超えるリクエストはツールエラーとなり、何も作成されません。ゲートウェイが作成しなかった購入は、上限の計算に含まれません。セッション合計は MCP サーバーの再起動時にリセットされますが、日次合計はリセットされません。日次合計は DAGON_SPEND_LEDGER(Windows ではデフォルトで %APPDATA%\dagon-mcp\spend-ledger.json、その他の環境では $XDG_CONFIG_HOME/dagon-mcp/spend-ledger.json または ~/.config/dagon-mcp/spend-ledger.json。対応環境ではモード 0600 で書き込み)に保存されるためです。台帳を読み取れない場合や破損している場合、購入は拒否されます。ウォレットの有無にかかわらず、すべての購入で DAGON_TREASURY_WALLET が必要です。
ゲートウェイがネットワーク手数料を負担しない場合、支払者が負担する SOL の最大コスト(署名あたり 5,000 lamports、計算バジェットの優先手数料、トランザクションで財務ウォレットの USDC アカウントを作成する場合は 0.00203928 SOL のレンタル料)は、同じ台帳内で UTC 日ごとの DAGON_MAX_SOL_FEES(デフォルトは 0.05 SOL)に加算されます。この上限を超える購入は、署名前に拒否されます。上限値が無効な場合、サーバーは起動時に停止します。
DAGON_WALLET_SECRET_KEYを設定する場合:DAGON_API_KEYとDAGON_TREASURY_WALLETも必要です。サーバーはまず、返されたトランザクション(レガシーメッセージまたは v0 メッセージ)が、決済サービスが構築した支払いと完全に一致することを検証します。つまり、設定されたウォレットの関連トークンアカウントから、設定された財務ウォレットの関連トークンアカウントへの、要求金額分の USDCTransferCheckedが 1 件、データがpurchase_idである SPL Memo が 1 件、そして手数料支払者がレンタル料を支払う、財務ウォレットの USDC アカウントの冪等な作成が最大 1 件です。応答メタデータ、金額、mint、トークンプログラム、送信先、メモ、ブロックハッシュ、手数料支払者または署名者の役割、アドレステーブル、重複キー、無関係な命令やアカウント、書き込み可能な権限が一致しない場合は拒否します。スポンサー付きの手数料支払者は、そのレンタル料支払者としての役割以外では、どの命令にも含まれません。転送に追加できるのは、上限が設けられた Solana の計算予算命令のみです。検証後、ウォレットの署名を付与します。手数料スポンサー付きトランザクションには手数料支払者の署名は含まれません。サーバーはこれを送信せず、ゲートウェイのconfirmにsigned_transactionとして渡し、決済サービスが手数料支払者の署名を追加して送信します。それ以外の場合はDAGON_SOLANA_RPC_URL経由で送信し、署名を使って確定します。いずれの場合も、購入の確定を最大 45 秒間試み、それを過ぎると購入を保留中として報告します。支払いがオンチェーンに記録された可能性がある場合、すべての結果とエラーにpurchase_idとトランザクション署名(手数料スポンサー付きの場合は署名済みトランザクション)が記載されます。再購入せず、これらをdagon_confirm_purchaseに渡してください。ウォレットには USDC が必要です。SOL が必要なのは、購入が手数料スポンサー付きでない場合に限り、手数料の支払いに使います。クライアントのツールタイムアウトは 90 秒以上に設定してください。ツール呼び出しをキャンセルすると、待機が停止します。- ウォレットがない場合:
payer_walletを渡します。サーバーはpayer_walletを支払者および転送権限として、同じバイト単位の検証を行い、その後に限り、送信先の財務ウォレットと発生し得る SOL のコストを明記した、未署名の base64 トランザクションを返します。検証に失敗したトランザクションは返されません。有効期限が切れる前に、そのウォレットで署名してください。再構築はしないでください。fee_sponsoredが true の場合は送信せず、purchase_idとsigned_transaction(ウォレットで署名した base64 トランザクション)を指定してdagon_confirm_purchaseを呼び出してください。それ以外の場合は送信した後、purchase_idとそのsignatureを指定してdagon_confirm_purchaseを呼び出してください。
シークレットキーがサーバープロセスの外に出ることはなく、エラーを含め、出力されることもありません。サーバーは起動時に、導出した支払者アドレスを stderr に出力します。意図したウォレットであることを確認してください。信頼する財務ウォレットのアドレスは、ゲートウェイの応答から受け取るのではなく、個別に設定します。使用する予定の金額だけを保有する専用のホットウォレットを使用してください。
すべてのゲートウェイおよび Solana RPC リクエストは、30 秒後、またはクライアントがツール呼び出しをキャンセルした時点で中断されます。また、4 MiB を超えるゲートウェイ応答は拒否されます。
設定
| 変数 | デフォルト | 用途 |
|---|---|---|
DAGON_API_KEY | none | 残高、購入、チャットに使用するアカウントキー(gk_...)です。DAGON_WALLET_SECRET_KEY と併用する場合は必須です。購入時にこの値を上書きすることはできません。 |
DAGON_BASE_URL | https://inference.dagon.so | ゲートウェイの URL です。https:// が必須です。http:// は localhost/127.x/[::1] の場合に限り使用できます。 |
DAGON_WALLET_SECRET_KEY | none | Solana の秘密鍵です。64 バイトの base58(Phantom/Solflare からのエクスポート形式)または JSON バイト配列(solana-keygen のファイル形式。32 バイトのシードはこの形式でのみ受け付けます)を指定します。base58 の 32 バイトは Solana アドレスであるため、拒否されます。有効性を検証したうえで、自分で署名する購入を有効にします。 |
DAGON_TREASURY_WALLET | none | 購入額を受け取る USDC 関連トークンアカウントを所有する、信頼された Solana トレジャリーです。すべての購入、および DAGON_WALLET_SECRET_KEY と併用する場合に必須です。 |
DAGON_SOLANA_RPC_URL | https://api.mainnet-beta.solana.com | 手数料がスポンサー提供されない署名済み購入を送信する RPC です(スポンサー提供される購入は決済サービスが送信します)。 |
DAGON_MIN_PURCHASE_USD | 1 | dagon_buy_credits での 1 回の購入額の最小値(米ドル、セント単位の整数)です。 |
DAGON_MAX_PURCHASE_USD | 50 | dagon_buy_credits での 1 回の購入額の最大値(米ドル、セント単位の整数)です。0 にすると購入が無効になります。 |
DAGON_MAX_PURCHASE_USD_PER_SESSION | 200 | 1 つの MCP サーバープロセスが準備できる購入額の合計(米ドル)です。 |
DAGON_MAX_PURCHASE_USD_PER_DAY | 200 | 1 日(UTC)あたりの購入額の合計(米ドル)です。支出台帳に保存され、再起動後も引き継がれます。 |
DAGON_MAX_SOL_FEES | 0.05 | 手数料がスポンサー提供されない購入で、1 日(UTC)あたりに支払者が負担する可能性のある SOL の最大額です(手数料とトレジャリーアカウントのレンタル料を含みます)。 |
DAGON_SPEND_LEDGER | user config dir(上記参照) | 1 日あたりの合計を記録するファイルです。 |
インストール
Claude Code
claude mcp add dagon --env DAGON_API_KEY=gk_... -- npx -y dagon-mcp
Claude Desktop
claude_desktop_config.json(Settings → Developer → Edit Config)に追加します。値そのものを記述してください。
{
"mcpServers": {
"dagon": {
"command": "npx",
"args": ["-y", "dagon-mcp"],
"env": {
"DAGON_API_KEY": "gk_...",
"DAGON_TREASURY_WALLET": "9rMdbu4KdLWH2nPXbzhm9HTKaibGZ2ckakQbW1wPh6KK"
}
}
}
}
Windows で npx が見つからない場合は、"command": "cmd", "args": ["/c", "npx", "-y", "dagon-mcp"] を使用してください。
Cursor
~/.cursor/mcp.json(グローバル)または .cursor/mcp.json(プロジェクト)に記述します。
{
"mcpServers": {
"dagon": {
"command": "npx",
"args": ["-y", "dagon-mcp"],
"env": { "DAGON_API_KEY": "gk_..." }
}
}
}
プロジェクトの .mcp.json、omp
Claude Code と omp は環境変数の ${VAR} を展開するため、シークレットをファイルに記述せずに済みます。
{
"mcpServers": {
"dagon": {
"command": "npx",
"args": ["-y", "dagon-mcp"],
"env": {
"DAGON_API_KEY": "${DAGON_API_KEY}",
"DAGON_WALLET_SECRET_KEY": "${DAGON_WALLET_SECRET_KEY:-}",
"DAGON_TREASURY_WALLET": "${DAGON_TREASURY_WALLET:-}"
},
"timeout": 120000
}
}
}
timeout は omp のツールごとのタイムアウト(ミリ秒)です。使用しないクライアントでは削除してください。
セキュリティ
DAGON_WALLET_SECRET_KEYは任意です。設定しない場合、サーバーが署名することはありません。署名用にご自身のウォレットへ渡せる、検証済みの未署名トランザクションを返します。設定する場合は、支出する予定の金額だけを保有する専用のホットウォレットを使用してください。キーがプロセスの外に出たり、出力されたりすることはありません。DAGON_TREASURY_WALLETは購入時の信頼の基点です。すべてのトランザクションをバイト単位で検証し、指定されたトレジャリーに正確に支払われることを確認するため、ゲートウェイが侵害または偽装されても資金を別の宛先へ送ることはできません。公開されている Dagon のトレジャリーは9rMdbu4KdLWH2nPXbzhm9HTKaibGZ2ckakQbW1wPh6KKです。ツールの結果ではなく、この README または https://inference.dagon.so から取得してください。- 1 回あたり、セッションあたり、1 日あたりの米ドル上限と、1 日あたりの SOL 手数料上限によって、どのツール呼び出し元が支出できる金額も制限されます。
- 購入額は常に、設定された
DAGON_API_KEYのアカウントに加算されます。ツール呼び出し元が別のアカウントへ振り向けることはできません。
開発
git clone https://github.com/inkwell-finance/dagon-mcp.git
cd dagon-mcp
npm ci
npm run check # type-check
npm test # tool tests against a mocked fetch; no network
npm run build # compile to dist/
ライセンス
MIT © Inkwell Finance, Inc. d/b/a Dagon
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。