tock-mcp について
tock-mcp は、Tock のレストラン検索と空き状況確認を行う MCP サーバーです。ログイン済みブラウザータブを介してページを読み取る読み取り専用の仕組みで、予約は exploretock.com で行います。
主な機能
- 01都市や地域でレストランを検索
- 02店舗情報と予約可能な体験を表示
- 03料金、人数、空き時間を確認
- 04アカウント情報と予約履歴を取得
- 05予約状態を検証
活用シーン
- 01料理や近隣エリアで店舗を絞り込む
- 02体験、料金、空き状況を比較
- 03アカウントの購入履歴を確認
- 04予約操作の結果を確かめる
MCP 対応
この MCP サーバーは、Tock の都市、店舗、空き状況、アカウント情報を照会するツールを公開します。リクエストは ContextMint Bridge を通じてログイン済みブラウザータブに中継され、予約操作は行いません。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y tock-mcpTOCK_WS_PORTConcentrator port for the fetchproxy browser bridge (defaults to the fleet-shared 37149). On one machine every MCP shares the concentrator, so move it for ALL of them or not at all.FETCHPROXY_WS_HOSTBind interface, a literal IP only (anything else is ignored); default 127.0.0.1. Keep on loopback — it exists for ONE topology: a hosted child in its own network namespace.FETCHPROXY_IDENTITY_DIRWhere to store the long-term identity keypair, an absolute path only (anything else is ignored); default ~/.fetchproxy/identity/. Exists for a host that runs a separate child per caller.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
8掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | integer | いいえ | 返す大都市圏の最大数(デフォルトは 100)。 |
| query | string | いいえ | 大都市圏の名前または slug を大文字と小文字を区別せずに絞り込みます(例:「chic」)。 |
| country | string | いいえ | 2 文字の国コードで絞り込みます(例:「US」、「GB」)。 |
| include_empty | boolean | いいえ | businessCount が 0 の都市圏を含めます(デフォルトは false)。 |
詳細
tock-mcp
Tock (exploretock.com) 用 MCP サーバーです。Claude でレストランを探し、空き状況を確認できます。都市の一覧表示、都市圏の検索、店舗の詳細情報に加え、予約可能な体験、料金、人数、空いている日付・時間を取得できます。
すべてのリクエストは、ContextMint Bridge ブラウザー拡張機能を介して、サインイン済みのご自身のブラウザータブから中継されます。Cookie の貼り付けも、ボット対策の回避も、パスワードの取り扱いも必要ありません。このプロジェクトは AI(Claude Code)が開発し、保守しています。
Tock は公式の一般消費者向け API を公開しておらず、exploretock.com は Cloudflare のチャレンジによって保護されています。tock-mcp は、サインイン済みのタブを介して、Tock のウェブアプリが使用するものと同じサーバー描画ページを取得し、埋め込まれた
window.$REDUX_STATEストアを解析します。読み取り専用です。Tock の予約は前払いチケットのため、予約は exploretock.com で行ってください。ご自身の判断でご利用ください。
インストール
// .mcp.json
{
"mcpServers": {
"tock": { "command": "npx", "args": ["-y", "tock-mcp"] }
}
}
また、すべての fetchproxy ベース MCP で共有されるブラウザー拡張機能、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)。exploretock.com のタブを開いたままにしてください。最初のツール呼び出し時に、ContextMint Bridge のポップアップで承認するための一度限りのペアリングコードが表示されます。tock_healthcheck を実行すると表示されます。検索機能はサインアウト状態でも使えますが、アカウント関連のツールを使うには exploretock.com にサインインする必要があります。
環境
環境変数は必要ありません。以下の任意の設定項目は .mcpb マニフェストの設定と同じです。
| 変数 | デフォルト | 用途 |
|---|---|---|
TOCK_WS_PORT | 37149 | fetchproxy ブラウザーブリッジの集約ポートです。1 台のマシン上の fetchproxy MCP はすべて同じ集約機能を共有するため、ポートを変更する場合はすべての MCP で変更するか、どれも変更しないでください(主にローカルテスト、またはホスト型登録のブリッジポート用です)。 |
FETCHPROXY_WS_HOST | 127.0.0.1 | ブリッジのバインドインターフェースです。リテラル IP のみ指定でき、それ以外は無視されます。ループバックに設定してください。独自のネットワーク名前空間で動作するホスト型の子プロセス向けに用意されています。 |
FETCHPROXY_IDENTITY_DIR | ~/.fetchproxy/identity/ | ブリッジの長期 ID キーペアの保存先です。絶対パスのみ指定でき、それ以外は無視されます。呼び出し元ごとに別々の子プロセスを実行するホスト向けです。 |
ツール
tock_list_metros— Tock の都市・都市圏と店舗数を一覧表示します。名前や国で絞り込めます。tock_search_restaurants— 都市圏のスラッグを指定して店舗を検索します(料理の種類、価格、地域、スラッグ)。tock_get_restaurant— 店舗の詳細情報と予約可能な体験を取得します。tock_get_availability— 店舗の予約可能なカレンダーを取得します(体験、料金、空いている日付・時間)。tock_list_reservations/tock_get_profile— サインイン中のユーザーの購入情報とプロフィールを取得します。tock_verify_reservation— 予約を試みた後、アカウントを再照会し、confirmed/cancelled/not_found/ambiguousのいずれかの明確な判定を返します。成功画面だけでは予約成立の証明になりません。このツールで確認してください。tock_healthcheck— ブリッジの状態と一度限りのペアリングコードを確認します。
開発
npm install
npm run build # tsc + esbuild bundle → dist/bundle.js
npm test # vitest
アーキテクチャとリバースエンジニアリングで明らかにした Tock の機能範囲については、docs/TOCK-API.md に記載されています。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。