DuckHub QR Menu について
DuckHub QR Menu は、DuckHub API を通じてレストラン運営者がメニュー、注文、関連コンテンツを管理するホスト型 MCP サーバーです。39 個のツールを備え、下書き編集、公開のロールバック、読み取り専用キーに対応します。
主な機能
- 01メニュー、商品、カテゴリ、注文の確認
- 02メニューの一括作成と編集
- 03画像、翻訳、プロモーションの管理
- 04メニュー公開と変更のロールバック
- 05読み取り専用キーによる変更制限
- 06ドライランと監査ログの利用
活用シーン
- 01レストランの商品をメニューへ一括同期
- 02商品価格、画像、翻訳の更新
- 03メニューの公開または以前の版へのロールバック
- 04メニューを変更させずにエージェントで分析
MCP 対応
ホスト型 MCP サーバーは Streamable HTTP で DuckHub v1 REST API の39個のツールを公開します。API キーまたは OAuth で接続でき、読み取り専用キーでは読み取りツールのみ利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.duck-hub.com/mcpclaude mcp add --transport http com-duck-hub-menu https://mcp.duck-hub.com/mcp{"mcpServers":{"com-duck-hub-menu":{"type":"http","url":"https://mcp.duck-hub.com/mcp"}}}Cursor で開く{"servers":{"com-duck-hub-menu":{"type":"http","url":"https://mcp.duck-hub.com/mcp"}}}VS Code で開く{"mcpServers":{"com-duck-hub-menu":{"type":"http","url":"https://mcp.duck-hub.com/mcp"}}}{"mcpServers":{"com-duck-hub-menu":{"serverUrl":"https://mcp.duck-hub.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
DuckHub MCP サーバー — AI エージェント向けのレストランメニュー管理
DuckHub のホスト型 MCP(Model Context Protocol)サーバーです。 レストランのメニュー(商品、カテゴリ、追加オプション、価格、画像、 翻訳、プロモーション、注文)を Claude、Cursor、または MCP 対応の AI エージェントから直接管理できます。URL と
dk_live_API キーだけで、すぐに使える 39 個のツールを利用できます。 インストールもコードも不要です。サーバーは DuckHub がホストしています。
これは何ですか?
DuckHub は、デジタルメニュー、非接触注文、テーブル予約、デリバリーを提供するレストラン向け SaaS プラットフォームです。DuckHub MCP サーバーは、DuckHub の v1 REST API を型付きのツールとして AI エージェントに公開します。HTTP リクエストを書く代わりに、エージェントは build_menu、set_image、publish_menu を使って、会話からメニュー全体を作成・管理できます。
このサーバーはリモート/ホスト型なので、インストールや実行は不要です。AI クライアントに URL を 1 つ追加し、REST API と同じ dk_live_ API キーで認証します。
エンドポイント
POST https://mcp.duck-hub.com/mcp
ネットワーク上で mcp. サブドメインをまだ解決できない場合は、https://api.duck-hub.com/mcp からも同じサーバーに接続できます。
- トランスポート: Streamable HTTP(ステートレス)
- 認証:
Authorization: Bearer dk_live_...ヘッダー(DuckHub アプリ → Integrations ページから取得する API キー) - 通常のレート制限、プラン制限、監査ログはすべて変更なく適用されます。
クライアントを接続する
DuckHub アプリ → Integrations から API キーを取得し、次の手順に進みます。
Claude Code
claude mcp add --transport http duckhub https://mcp.duck-hub.com/mcp \
--header "Authorization: Bearer dk_live_your_api_key"
Cursor — .cursor/mcp.json
{
"mcpServers": {
"duckhub": {
"url": "https://mcp.duck-hub.com/mcp",
"headers": { "Authorization": "Bearer ${env:DUCKHUB_API_KEY}" }
}
}
}
Claude Desktop — claude_desktop_config.json
デスクトップクライアントは mcp-remote ブリッジ経由でリモートサーバーに接続します(Node.js が必要です)。
{
"mcpServers": {
"duckhub": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.duck-hub.com/mcp",
"--header",
"Authorization: Bearer dk_live_your_api_key"
]
}
}
}
Claude API — MCP コネクターブロック
{
"mcp_servers": [
{
"type": "url",
"url": "https://mcp.duck-hub.com/mcp",
"name": "duckhub",
"authorization_token": "dk_live_your_api_key"
}
]
}
claude.ai(ウェブ)と ChatGPT — OAuth
claude.ai と ChatGPT は、OAuth 経由でカスタム MCP サーバーに接続します(API キーの入力欄はありません)。次の URL を使って、DuckHub をカスタムコネクターとして追加します。
https://mcp.duck-hub.com/mcp
次に、DuckHub にサインインし、接続する店舗を選択して、アクセスを承認します。このフローでは PKCE を使用した OAuth 2.1 が使われます。DuckHub へのログインでアクセスが許可され、API キーがクライアントに保存されることはありません。1 つの DuckHub アカウントで同時に接続できる店舗は 1 つです(店舗を切り替えるには、DuckHub アプリから再接続してください)。
読み取り専用アクセス
Integrations ページでは、読み取り専用キー(同じ dk_live_ 形式)も発行できます。このキーを使うと、読み取りツールはすべて通常どおり動作し、書き込みツールはすべて 403 READ_ONLY_KEY で失敗します。API は何にも手を加える前に書き込みを拒否します。書き込みツールには標準の MCP アノテーション(readOnlyHint/destructiveHint)も付与されるため、適切に動作するクライアントはそれらをフィルターしたり、実行前に確認したりできます。メニューを分析するだけで変更は行わないエージェントには、読み取り専用キーを使用してください。
39 個のツール
すべてのツールは v1 REST API をラップしています。動作も制限も同じです。
| グループ | ツール |
|---|---|
| 検索と閲覧 | get_reference、get_menu、list_products、get_product、list_categories、list_publications、get_audit_log |
| メニューの作成 | build_menu(一括同期)、set_product、delete_product、set_modifier_group、delete_modifier_group、list_modifier_groups |
| 設定 | get_settings と、タスクごとに用意された 7 つの update_* ツール |
| メディア | set_image — 商品/バナー/ロゴ |
| 翻訳 | set_translations、get_translations |
| 販売促進 | プロモーション/バナー/テーブル — list_* / set_* / delete_* |
| 公開 | publish_menu、rollback_publish、cleanup_menu |
| 注文(有料プラン) | list_orders、get_order、update_order_status |
エージェントはまず get_reference を呼び出す必要があります。このツールは、使用可能なすべての列挙値、店舗のプラン上限と現在の使用状況、金額の規約を返します。
エージェントが間違えやすい点
- 金額は最小通貨単位の整数です —
12.50は1250(セント)として送信します。 - 公開するまではゲストに表示されません。
build_menuは下書きを編集し、publish_menuはメニューを公開します(ロールバック用のスナップショットも作成します)。 - まずドライランを実行してください。
build_menuとcleanup_menuはdryRun: trueを受け付けます。 cleanup_menuの配列は保持対象のリストです — リストにないものは非表示または削除されます。- 注文ツールには有料プランが必要です — それ以外の場合は
403 PAID_PLAN_REQUIREDが返されます。
詳細なドキュメント
→ docs.duck-hub.com/mcp — 接続ガイド、各ツールのリファレンス、エラー形式、レート制限/プラン上限。
概要/サポート
- 製品:duck-hub.com
- API ドキュメント:docs.duck-hub.com
- 問題/質問:このリポジトリで issue を作成してください。
ライセンス
MIT — LICENSE を参照してください。このリポジトリにはドキュメントとサーバーマニフェストのみが含まれます。MCP サーバー自体は DuckHub がホストしています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。