groupon-mcp について
groupon-mcpは、ClaudeからGrouponのクーポンを検索・確認し、ログイン済みアカウントのカートを管理するMCPサーバーです。カート変更には確認が必要で、商品を追加して決済URLを返しますが、支払いは行いません。
主な機能
- 01都市ごとのクーポン検索
- 02クーポン詳細と選択肢の価格表示
- 03カテゴリ一覧と接続状態の確認
- 04ログイン済みアカウントのカート表示
- 05確認後の追加またはカート消去
活用シーン
- 01ローカル、商品、旅行のクーポン検索
- 02追加前のクーポン選択肢と価格の確認
- 03カートを確認して自分で決済へ進む
MCP 対応
MCPクライアントにGrouponのクーポン検索とカート操作のツールを提供します。クーポンの読み取りにログインは不要ですが、カート操作にはログイン済みセッションを使い、変更前に確認を求めます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y groupon-mcpGROUPON_SESSION_COOKIEシークレットOptional, and only for the cart tools. Leave unset to have the ContextMint Bridge browser extension pick up your signed-in groupon.com session. Otherwise paste the full Cookie request header from a signed-in www.groupon.com /mobilenextapi/graphql request (DevTools → Network). It authorizes changes to your Groupon cart, so treat it like a password.GROUPON_DISABLE_FETCHPROXYSet to 1/true to disable the fetchproxy browser-bridge fallback (then the cart path relies solely on GROUPON_SESSION_COOKIE).GROUPON_GRAPHQL_URLOverride the GraphQL endpoint (defaults to https://www.groupon.com/mobilenextapi/graphql). The cart tools send your session cookie, so they refuse any override that is not an https://*.groupon.com URL.GROUPON_CACHE_TTLResponse-cache TTL for reads in seconds (0 = off; default 60).FETCHPROXY_WS_PORTLocalhost port of the fetchproxy concentrator the ContextMint Bridge extension connects to (default 37149). Every MCP on one machine shares it, so move it for all of them or not at all.FETCHPROXY_WS_HOSTBind interface for the fetchproxy concentrator, a literal IP only (default 127.0.0.1). Keep on loopback; it exists for hosted deployments that run each MCP in its own network namespace.FETCHPROXY_IDENTITY_DIRAbsolute path where the fetchproxy long-term identity keypair is stored (default ~/.fetchproxy/identity/).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
7掲載時のツール一覧 · 2 日前に更新
このツールにパラメーターはありません。
詳細
groupon-mcp
Groupon 用 MCP サーバーです。Claude から自然言語で地域の商品、グッズ、旅行の特典を検索・閲覧でき、確認後にログイン済みの Groupon カートに特典を追加できます。
このプロジェクトは AI によって開発・保守されています。ご自身の判断でご利用ください。
ツール
| ツール | 機能 | ログインが必要 |
|---|---|---|
groupon_search_deals | 都市の特典を検索または閲覧します | いいえ |
groupon_get_deal | 1 件の特典の詳細を取得します。各オプションの ID と価格も含まれます | いいえ |
groupon_list_categories | Groupon のカテゴリ分類を取得します | いいえ |
groupon_healthcheck | Groupon にライブリクエストを 1 件送信し、失敗した場合はその内容を報告します | いいえ |
groupon_view_cart | Groupon カート内の商品を表示します | はい |
groupon_purchase | 特典のオプションをカートに追加し(確認後)、チェックアウト URL を返します | はい |
groupon_clear_cart | カート内のすべての商品を削除します(確認後) | はい |
特典の読み取りには、Groupon の公開コンシューマーエンドポイントを使用するため、API キーやアカウントは不要です。カートツールは、セッションクッキーを通じてログイン済みの Groupon アカウントを操作します(下記参照)。groupon_purchase では注文を確定できません。Groupon のチェックアウトでは Apple Pay、Google Pay、カード、または PayPal を使用するため、チェックアウト URL からご自身で支払いを完了してください。
セットアップ
.mcp.json にサーバーを追加します。
{
"mcpServers": {
"groupon": {
"command": "npx",
"args": ["-y", "groupon-mcp"]
}
}
}
カートへのログイン(任意)
特典の読み取りにアカウントは不要です。カートツール(groupon_view_cart、groupon_purchase、groupon_clear_cart)は、ブラウザー経由でサーバーが取得する、ログイン済みの groupon.com セッションを使用します。セッションの取得には ContextMint Bridge 拡張機能を使います。
-
リリースページから ContextMint Bridge をインストールします。Chrome の場合は、Chrome 用 ZIP をダウンロードして解凍し、
chrome://extensionsでパッケージ化されていない拡張機能を読み込みます(デベロッパーモードを有効にしてください)。Safari にはまだ対応していません(公開ダウンロードが提供されていない ContextMint アプリに同梱される予定です)。当面は Chrome をお使いください。ContextMint Bridge は、同じメンテナーが新しい名前で提供する fetchproxy ブラウザー拡張機能です。fetchproxy の README(https://github.com/chrischall/fetchproxy#extension)からも参照できます。ソースコードは https://github.com/nullnet-app/contextmint-bridge で公開されています。ご自身でビルドするか、リリース ZIP を同じ場所で公開されている
.sha256ファイルと照合してください(shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256)。 -
そのブラウザーで groupon.com にログインします。最初のカート呼び出しでセッションクッキーが取得されます。拡張機能から確認を求められたら、リクエストを許可してください。
拡張機能を使わずにローカル開発する場合は、GROUPON_SESSION_COOKIE を設定してください(.env.example を参照)。ブラウザー経由の処理を無効にするには、GROUPON_DISABLE_FETCHPROXY=1 を設定します。このクッキーはカートの変更を許可するため、パスワードと同様に取り扱ってください。カートツールはこのクッキーを https://*.groupon.com のエンドポイントにのみ送信し、それ以外を指す GROUPON_GRAPHQL_URL の上書きは拒否します。
環境
すべて任意です。.mcpb マニフェストの設定を反映しています(MCP_CONFIRM_* ファミリーは確認を参照)。
| variable | default | |
|---|---|---|
GROUPON_SESSION_COOKIE | unset | サインイン済みの www.groupon.com リクエストから取得した完全な Cookie ヘッダーです。カートツール専用です。未設定の場合、ブリッジがセッションを取得します。パスワードと同様に扱ってください。 |
GROUPON_DISABLE_FETCHPROXY | unset | 1 にするとブラウザーブリッジ経由の処理が無効になり、カートツールは GROUPON_SESSION_COOKIE に依存します。 |
GROUPON_GRAPHQL_URL | https://www.groupon.com/mobilenextapi/graphql | GraphQL エンドポイントの上書き設定です。カートツールは、https://*.groupon.com URL 以外への上書きを拒否します。 |
GROUPON_CACHE_TTL | 60 | 読み取り時のレスポンスキャッシュの TTL(秒)です(0 = 無効)。レート制限に達する場合は、値を大きくしてください。 |
FETCHPROXY_WS_PORT | 37149 | ContextMint Bridge が接続するコンセントレーターポートです。同じマシン上のすべての MCP で共有するため、変更する場合はすべて変更するか、どれも変更しないでください。 |
FETCHPROXY_WS_HOST | 127.0.0.1 | ブリッジのバインドインターフェースです。リテラル IP のみ指定できます。ループバックのままにしてください。独自のネットワーク名前空間で動作するホスト型デプロイ向けの設定です。 |
FETCHPROXY_IDENTITY_DIR | ~/.fetchproxy/identity/ | ブリッジの長期的な ID キーペアの絶対パスです。 |
確認
カートへの書き込み(groupon_purchase、groupon_clear_cart)では、変更を加える前に確認を求めます。確認プロンプトを表示できるクライアント(Claude Code)では、サーバーで MCP_CONFIRM_ELICITATION=off が設定されていない限り、プロンプトが表示されます。それ以外では、最初の呼び出しでは何も変更されず、プレビューと confirmToken が返されます。そのトークンを指定して再度呼び出した場合にのみ、処理が進みます。トークンはプレビューの内容に厳密に紐づいています。2 回の呼び出しの間に、取引価格、選択したオプションや数量、またはカートの内容が変わった場合、書き込みは拒否され、新しいプレビューが返されます。groupon_purchase のプレビューには、選択したオプションがすでにカートにいくつ入っているかも表示されます。Groupon では数量を加算するのではなく、新しい数量に置き換える場合があるためです。カートへの追加までしか行わないため、チェックアウト URL からご自身で支払いを完了してください。groupon_clear_cart はカートの商品項目のみを削除します。プレビューで示された optionIds を expectedOptionIds として受け取り、カートに変更があった場合は処理を拒否します。削除が途中で失敗した場合は、どの商品が削除され、どの商品が削除されなかったかを示します。
| variable | default | |
|---|---|---|
MCP_CONFIRM_MODE | ask-user | 確認プロンプトを表示できないクライアント(claude.ai、Claude Desktop)で書き込みを行う際の動作です。ask-user:2 段階で処理します。最初の呼び出しでは何も行わず、プレビューとトークンを返します。モデルは再度呼び出す前に、チャットでユーザーの承認を得る必要があります。auto:同じく 2 段階で処理しますが、モデルはプレビューを確認した後、自身でトークンを使用できます。refuse:そのようなクライアントでは書き込みを拒否します。プロンプトを表示できるクライアント(Claude Code)には、MCP_CONFIRM_ELICITATION=off が設定されていない限り、常に実際のプロンプトが表示されます。認識できない値は refuse として扱われます。 |
MCP_CONFIRM_ELICITATION | on | off にすると確認プロンプトが表示されず、すべてのクライアントで MCP_CONFIRM_MODE の動作が適用されます。プロンプトを表示できると申告しているのに、実際には表示しないクライアント(書き込みがハングする opencode 2.0.x)では、この値を設定してください。その他の値は on として扱われ、stderr に警告が出力されます。 |
MCP_CONFIRM_TTL_SECONDS | 600 | トークンの有効期間です。 |
MCP_CONFIRM_SECRET | random per process | 署名キーです。サーバーの再起動後もトークンを有効にする必要がある場合にのみ設定してください。 |
開発
npm install
npm run build # tsc + esbuild bundle → dist/
npm test # tsc typecheck + vitest
アーキテクチャ、規約、注意点については CLAUDE.md を参照してください。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。