Booksy by Cotlet について
Booksy by Cotletは、美容事業者の技術ユーザー向けに、自分の環境で運用するBooksy API・MCPサーバーです。ローカルのChromeセッションを使い、カレンダー、顧客、サービス、スタッフ、レビュー、レポートにREST APIやPythonからもアクセスできます。
主な機能
- 01カレンダー、予約、空き枠の管理
- 02顧客、サービス、スタッフの管理
- 03レビューとMessage Blastsへのアクセス
- 04統計・レポートの照会
- 05REST APIとPythonからの呼び出し
活用シーン
- 01予約状況とカレンダーの空き枠の確認
- 02未予約の休眠顧客の抽出
- 03スタッフ別の週次売上の比較
- 04顧客データのエクスポートやレビュー返信
MCP 対応
stdioまたはHTTP経由でMCPクライアントにBooksyツールを提供し、読み取り専用モードにも対応します。Chromeから取得したBooksy Bizセッションを使ってアクセスします。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://cotlet.dev/mcp/v1/booksy/connectclaude mcp add --transport http dev-cotlet-booksy https://cotlet.dev/mcp/v1/booksy/connect{"mcpServers":{"dev-cotlet-booksy":{"type":"http","url":"https://cotlet.dev/mcp/v1/booksy/connect"}}}Cursor で開く{"servers":{"dev-cotlet-booksy":{"type":"http","url":"https://cotlet.dev/mcp/v1/booksy/connect"}}}VS Code で開く{"mcpServers":{"dev-cotlet-booksy":{"type":"http","url":"https://cotlet.dev/mcp/v1/booksy/connect"}}}{"mcpServers":{"dev-cotlet-booksy":{"serverUrl":"https://cotlet.dev/mcp/v1/booksy/connect"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://cotlet.dev/mcp/v1/booksy/connecthttps://cotlet.dev/mcp/v1/booksy認証が必要ツール
詳細
Booksy API とセルフホスト型 MCP サーバー
お使いのパソコンで、Python とご自身の Google Chrome のセッションを使って動かす Booksy API と Booksy MCP サーバー です。Cotlet の本番環境で運用している Booksy Biz ツールをすべて収録しています。カレンダー、空き枠、休暇、クライアント、サービスとスタッフ、レビュー、メッセージ一斉送信、統計とレポートに対応した全28種類です。
Booksyには、ビジネスオーナー向けのセルフサービス API も公式 MCP サーバーもありません。このリポジトリなら、両方を利用できます。
- Claude Code、Claude Desktop、Cursor、Codex、その他あらゆる MCP クライアントで使える MCP サーバー。stdio または HTTP 経由で接続します。セットアップ
http://127.0.0.1:8787/api/v1/booksyで利用できる REST API。OpenAPI ドキュメントは/docsにあります。セットアップ- Python:
call("list_appointments", {"from": "2026-10-27", "to": "2026-10-27"})と、すぐに使える9つのスクリプトをexamples/に用意しています。
自分で動かしたい技術者向けです。非商用利用に限ります(ライセンス)。サーバー上で24時間稼働させたい場合、Booksyの管理画面が変更されても動作する状態を保ちたい場合、チームやビジネスで利用したい場合は、cotlet.dev のホステッド版をご利用ください。
git clone https://github.com/cotletdev/booksy-api-mcp-server.git && cd booksy-api-mcp-server
python3 -m venv .venv && . .venv/bin/activate && pip install -e .
booksy-mcp connect # reads your Booksy Biz session from Chrome
booksy-mcp call list_services
claude mcp add booksy -- "$PWD/.venv/bin/booksy-mcp" mcp
目次
- 仕組み
- 必要条件
- インストール
- Chrome への接続
- MCP サーバー
- REST API
- Python とサンプルスクリプト
- 全28種類のツール
- 設定
- セキュリティと Booksy アカウント
- エラー
- セルフホスト版またはホステッド版
- よくある質問
- ライセンス
仕組み
AI agent (MCP) / script (REST, Python) ──▶ booksy-mcp on your computer ──your Booksy session──▶ <country>.booksy.com
▲
booksy-mcp connect ───────┘ reads it once from your Chrome (DevTools Protocol)
- いつもと同じように、ご自身の Chrome で Booksy Biz にサインインします(booksy.com/pro)。
booksy-mcp connectは Chrome DevTools Protocol 経由でその Chrome に接続し、セッションを読み取ります。Booksy はセッションを Cookie に保存しません。管理画面はweb-gateway.booksy.comフレームの localStorage にセッションを保存するため、connectはそのストレージ、booksy.com の Cookie、管理画面の国情報を読み取り、~/.config/booksy-api-mcp/session.jsonに保存します。このファイルを読み取れるのはご自身のユーザーだけです。パスワードを参照・保存することはありません。- すべてのツール呼び出しは、Booksy Biz のウェブ管理画面が使用する API(
<country>.booksy.com/core/v2。米国のビジネスではus.booksy.com、ポーランドではpl.booksy.com)へのリクエストです。curl_cffi を使って送信し、Chrome の TLS フィンガープリントを複製します。ヘッドレスブラウザーは動作しません。
Booksy からサインアウトされた場合、Chrome がリモートデバッグを有効にして開いていれば、サーバーは Chrome からセッションを再度読み取ります。
必要条件
- Python 3.11 以降。
- Google Chrome 144 以降。Booksy Biz にサインインしている必要があります。デバッグポートを使えば、どの Chrome または Chromium でも動作します。
- macOS、Linux、または Windows。
- Booksy Biz のオーナーアカウント。一部のレポート(スタッフメンバーなど)には Booksy Biz Pro が必要です。Booksy のメッセージ一斉送信は、有料プランでのみ送信できます。無料トライアル中は送信できません。
インストール
git clone https://github.com/cotletdev/booksy-api-mcp-server.git
cd booksy-api-mcp-server
python3 -m venv .venv
. .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
booksy-mcp --version
uv を使う場合:uv venv && uv pip install -e . を実行し、その後 uv run booksy-mcp ... を実行します。
AI エージェント(Claude Code、Codex、Cursor)を使ってセットアップしますか?このフォルダーを開いて、リポジトリのセットアップを依頼してください。AGENTS.md にすべての手順が記載されています。Chrome 上で必要な操作だけを案内します。
更新するには、git pull && pip install -e . を実行します。ホステッド版の Booksy ツールに加えられた変更は、すべてこのリポジトリにも反映しています。
Chrome への接続
オプション A:普段使っている Chrome(推奨)
-
Chrome で
chrome://inspect/#remote-debuggingを開き、リモートデバッグをオンにします。Chrome は、このコンピューター上のプログラムからの DevTools 接続を受け入れ、接続ごとに確認を求めます。 -
booksy.com/pro で Booksy Biz にサインインしていることを確認します。
connectはタブ内のセッションを読み取るため、パネルのタブを開いたままにしてください。Booksy のタブが開いていない場合は、バックグラウンドで開いて、再び閉じます。 -
次を実行します。
booksy-mcp connect -
Chrome が接続を許可するか確認します。許可をクリックします。
Saved 41 Booksy cookies and 50 localStorage keys to /Users/you/.config/booksy-api-mcp/session.json
Signed in to Booksy as Maria Lopez (Studio Maria)
その後、リモートデバッグをオフにできます。Booksy からサインアウトされた後にサーバーが新しいセッションを自動で取得するようにする場合は、オンのままにしてください。
connect は、既定のプロファイルフォルダーにある Chrome の DevToolsActivePort ファイルを探します。Chrome Beta、Canary、またはカスタムのプロファイルフォルダーの場合は、--profile-dir "<folder>" を渡してください。
オプション B:デバッグポートを使用する Chrome
Chrome は既定のプロファイルではデバッグポートを開かないため、別のプロファイルを起動し、そこで一度 Booksy Biz にサインインしてから接続します。
# macOS
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" --remote-debugging-port=9222 --user-data-dir="$HOME/.chrome-booksy"
# Linux
google-chrome --remote-debugging-port=9222 --user-data-dir="$HOME/.chrome-booksy"
# Windows
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222 --user-data-dir="%USERPROFILE%\.chrome-booksy"
booksy-mcp connect --cdp http://127.0.0.1:9222
--cdp には ws:// の DevTools URL も指定できます。たとえば、SSH トンネル経由で接続した別のマシン上の Chrome の URL を指定できます。
Booksy にはセッション Cookie がないため、Cookie を手動で貼り付けるオプションはありません。Chrome のないサーバーでは、connect を実行したマシンからコピーした session.json を使用できます。
セッションはいつでも次の方法で確認できます。
booksy-mcp status
MCP サーバー
MCP サーバーには、入力スキーマ、エージェント向けの説明、ヒントとともに、すべてのツールが一覧表示されます。読み取りツールには読み取り専用のマークが付いています。また、クライアントに連絡するツール(予約、予約変更、キャンセル、レビューへの返信、一斉送信)には、実行前にクライアントが確認を求めるようマークが付いています。
Claude Code
claude mcp add booksy -- /path/to/booksy-api-mcp-server/.venv/bin/booksy-mcp mcp
# read only:
claude mcp add booksy -- /path/to/booksy-api-mcp-server/.venv/bin/booksy-mcp mcp --read-only
Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"booksy": {
"command": "/path/to/booksy-api-mcp-server/.venv/bin/booksy-mcp",
"args": ["mcp"]
}
}
}
Cursor
~/.cursor/mcp.json。Claude Desktop と同じブロックです。すぐに使えるコピーが mcp.json にあります。
Codex
~/.codex/config.toml:
[mcp_servers.booksy]
command = "/path/to/booksy-api-mcp-server/.venv/bin/booksy-mcp"
args = ["mcp"]
HTTP 経由
booksy-mcp serve は、URL を指定するクライアント向けに、ストリーム可能な HTTP 経由でも http://127.0.0.1:8787/mcp で MCP を提供します。
booksy-mcp serve
claude mcp add --transport http booksy http://127.0.0.1:8787/mcp
次のような質問をエージェントにしてみてください。
明日はどのような予定ですか?予約の一覧と、1 時間を超える空き時間を教えてください。
Tom は金曜日に休みです。予約を、ほぼ同じ時間に空いているスタッフに移動して、まずその計画を見せてください。
先週のスタッフごとの売上を、その前の週と比較してください。
60 日間来店しておらず、予約も入っていないクライアントは誰ですか?
REST API
booksy-mcp serve # http://127.0.0.1:8787, MCP at /mcp, docs at /docs
各ツールには /api/v1/booksy 配下に個別のルートがあり、cotlet.dev のホスト型 API と同じパスを使用するため、一方に対応して書いたコードはもう一方でも動作します。パスの各部分とクエリ文字列が引数になり、JSON ボディで残りの引数を指定します。
curl 'http://127.0.0.1:8787/api/v1/booksy/services'
curl 'http://127.0.0.1:8787/api/v1/booksy/appointments?from=2026-10-27&to=2026-10-31'
curl 'http://127.0.0.1:8787/api/v1/booksy/services/8307205/open-slots?date=2026-10-27'
curl -X POST http://127.0.0.1:8787/api/v1/booksy/staffs/882081/time-offs \
-H 'Content-Type: application/json' \
-d '{"start": "2026-11-02", "end": "2026-11-06", "reason": "vacation"}'
名前で任意のツールを指定し、ボディを引数として渡します。
curl -X POST http://127.0.0.1:8787/api/v1/booksy/tools/find_client -d '{"query": "nowak"}'
GET /api/v1/booksy/tools:ルート、入力スキーマ、回答例を含むすべてのツール。GET /docs:操作可能な OpenAPI ドキュメント、GET /openapi.json:n8n、Postman、または生成されたクライアント向けのスキーマ。- 回答は JSON 形式です。
list_clientsはnext_cursorを返すため、次のページではこれをcursorとして渡します。レビューと通知ではpageを指定します。
サーバーは 127.0.0.1 のみで待ち受けます。別のデバイスからアクセスするには、トークンを設定してください。その場合、すべてのリクエストに Authorization: Bearer <token> が必要です。
BOOKSY_MCP_TOKEN=$(openssl rand -hex 24) booksy-mcp serve --host 0.0.0.0
Python とサンプルスクリプト
Python から直接実行でき、サーバーは不要です。
from booksy_api_mcp import call
from booksy_api_mcp.scripting import paginate, write_rows
services = call("list_services")["services"]
day = call("list_appointments", {"from": "2026-10-27", "to": "2026-10-27"})["appointments"]
clients = list(paginate("list_clients", {"not_visited_days": 60, "limit": 100}, "clients"))
write_rows(clients, "slipping-away.csv")
call("add_time_off", staff_id="882081", start="2026-11-02T13:00", end="2026-11-02T14:00", reason="Lunch")
シェルから 1 つのツールを実行することもできます:booksy-mcp call find_open_slots service_id=8307205 date=2026-10-27。または JSON オブジェクトを使います。ツールがテキストを受け取る場合、ID はテキストのまま扱われます。
時刻は店舗の現地時間です。タイムゾーンのない日時は店舗のタイムゾーンで解釈され、応答にはオフセットが含まれます。
すぐに使えるスクリプトは examples/ にあります。いずれも JSON または短いリストを出力し、用途に応じて --out file.csv または --out file.json を指定でき、--help にも対応しています。
| スクリプト | 説明 |
|---|---|
tomorrows_appointments.py | 明日の予約を 1 行ずつ表示し、サービスの空き枠も表示します。--date、--staff-id を指定できます。 |
reschedule_day.py | あるスタッフの 1 日分の予約を、元の時刻から 1 時間以内に空きのある同僚へ移動します。予定を表示し、--apply を指定すると、毎回確認してから移動します。 |
block_time_off.py | 1 日単位の休みや、1 日のうちの時間帯を追加したり、休みを削除したりします。 |
export_clients.py | クライアント情報を CSV または JSON に出力します。連絡先、メモ、来店回数、無断キャンセル回数、売上、最終来店日を含みます。--search、--not-visited-days を指定できます。 |
lapsed_clients.py | N 日間来店しておらず、今後 30 日以内に予約があるクライアントを除いた一覧を表示します。 |
win_back_blast.py | 休眠中のクライアントに Message Blast を 1 件送信します。送信対象数と SMS の料金を表示して確認を求めてから送信します。 |
weekly_staff_report.py | スタッフごとの予約数と売上を、先週とその前の週で比較し、大きな変動に印を付けます。 |
unanswered_reviews.py | 返信のないレビューを評価の低い順に表示します。--reply-to を指定すると返信を投稿します。 |
add_client.py | 招待を送らずにクライアントカードを追加するか、既存のカードにメモを追加します。 |
python examples/tomorrows_appointments.py --open-slots-for 8307205
python examples/reschedule_day.py --staff-id 882081 --date 2026-10-27
python examples/export_clients.py --not-visited-days 60 --out slipping-away.csv
スケジュール実行には、自分のコンピューターの電源が入っている間なら cron を使えます:0 19 * * * cd ~/booksy-api-mcp-server && .venv/bin/python examples/tomorrows_appointments.py。
全 28 ツール
ID は一覧取得ツールから確認できます:service_id は list_services、staff_id は list_staff、client_id は list_clients または find_client、appointment_id は list_appointments から取得します。booksy-mcp tools で一覧を表示し、booksy-mcp tools --json で入力スキーマも表示できます。
カレンダー
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
list_appointments | 読み取り | GET /appointments | 日付範囲内の予約を、クライアント、サービス、スタッフ、時刻、ステータスとともに表示します。 |
get_appointment | 読み取り | GET /appointments/{appointment_id} | 1 件の予約について、サービス、スタッフ、時刻、料金、クライアント、メモを表示します。 |
find_open_slots | 読み取り | GET /services/{service_id}/open-slots | 営業時間、予約、ブロック、休みを考慮し、指定日のサービスの空き開始時刻を表示します。 |
create_appointment | 書き込み | POST /clients/{client_id}/appointments | クライアントのサービスを開始時刻で予約します。Booksy が先に空き状況を確認します。 |
reschedule_appointment | 書き込み | POST /appointments/{appointment_id}/reschedule | 予約を新しい開始時刻に変更します。必要に応じて別のスタッフに変更することもできます。 |
cancel_appointment | 書き込み | POST /appointments/{appointment_id}/cancel | 予約をキャンセルし、カレンダーの該当時間を空けます。 |
休み
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
list_time_off | 読み取り | GET /time-offs | 日付範囲内のスタッフの休みとブロックされた時間帯を表示します。 |
add_time_off | 書き込み | POST /staffs/{staff_id}/time-offs | スタッフのカレンダーをブロックし、その時間を予約できないようにします。1 日単位の休みや数時間のブロックに対応しています。 |
remove_time_off | 書き込み | DELETE /staffs/{staff_id}/time-offs/{time_off_id} | 休みやブロック期間を削除し、その時間を再び予約できるようにします。 |
クライアント
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
list_clients | 読み取り | GET /clients | 連絡先、来店回数、最終来店日に加え、Booksy のクライアントグループを含むクライアント一覧です。 |
find_client | 読み取り | GET /clients/search | 名前、メールアドレス、電話番号に一致するクライアントカードです。 |
get_client | 読み取り | GET /clients/{client_id} | 1 人分のクライアントカードです。連絡先、非公開メモ、回数、来店履歴を確認できます。 |
add_client | 書き込み | POST /clients | クライアントリストにクライアントカードを追加します。電話番号またはメールアドレスが必要です。 |
update_client | 書き込み | PATCH /clients/{client_id} | クライアントカードの名前、電話番号、メールアドレス、誕生日、非公開メモを変更します。 |
add_client_note | 書き込み | POST /clients/{client_id}/notes | 既存の内容を残したまま、日付入りの一文をクライアントの非公開メモに追加します。 |
delete_client | 書き込み | DELETE /clients/{client_id} | クライアントリストからクライアントカードを削除します。 |
ビジネスの設定
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
list_services | 読み取り | GET /services | カテゴリー、バリエーション、所要時間、価格、各サービスを提供するスタッフを含むサービスメニューです。 |
list_staff | 読み取り | GET /staff | 1 週間の勤務時間と、提供するサービスを含むスタッフ一覧です。 |
get_business_hours | 読み取り | GET /business-hours | 営業時間、タイムゾーン、予約可能な期間です。 |
get_business_profile | 読み取り | GET /business | ビジネスの名前、住所、連絡先、営業時間、予約ポリシー、評価、プランのステータスです。 |
get_settings | 読み取り | GET /settings | テキストメッセージの利用可能数と使用状況、クライアントへのメッセージ送信チャネル、通知設定です。 |
list_notifications | 読み取り | GET /notifications | パネルのベルから届く、新規予約、変更、キャンセル、レビューに関する通知です。 |
レビュー
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
list_reviews | 読み取り | GET /reviews | 評価、本文、サービス、スタッフ、返信を含む、ビジネスに寄せられたクライアントレビューです。 |
reply_to_review | 書き込み | PUT /reviews/{review_id}/reply | クライアントのレビューへの公開返信を投稿または変更します。 |
メッセージ一斉送信
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
list_message_blasts | 読み取り | GET /message-blasts | メッセージ一斉送信のテンプレート(自動送信および単発)と、送信予定の一斉送信です。 |
estimate_message_blast | 読み取り | GET /message-blasts/estimate | メッセージ一斉送信の対象者数と SMS の費用を、送信せずに見積もります。 |
send_message_blast | 書き込み | POST /message-blasts | 選択したクライアントに、メール、SMS、プッシュ通知のいずれかでメッセージを送信します。 |
統計とレポート
| ツール | アクセス | REST ルート | 説明 |
|---|---|---|---|
get_report | 読み取り | GET /reports/{category} | 日、週、月、年単位の「統計とレポート」の数値を JSON 形式で取得します。 |
書き込み操作では、まず Booksy 独自のドライランを実行します。また、notify_client を指定しない限り、クライアントに通知は送信されません。新規クライアントには招待を送信しません。Booksy は空のクライアントリストを全クライアントと解釈するため、send_message_blast は空のクライアントリストを拒否します。
意図的に実装していない機能:Booksy のサインイン、メールアドレス、パスワード、アカウント削除、および金銭を扱うすべての機能(サブスクリプション、支払い、入金、請求)。すべてのリクエストはガードを通過し、これらの Booksy のパスへのアクセスは拒否されます。
設定
| 変数 | デフォルト | 説明 |
|---|---|---|
BOOKSY_MCP_HOME | ~/.config/booksy-api-mcp | session.json のフォルダーです。 |
BOOKSY_PROXY | Booksy へのすべてのリクエストに使用するプロキシです。例:http://user:pass@host:port。 | |
BOOKSY_MCP_READ_ONLY | 1 を指定すると、Booksy を変更するすべてのツールを非表示にし、使用を拒否します(--read-only と同じです)。 | |
BOOKSY_MCP_TOKEN | serve に必要なベアラートークンです。127.0.0.1 以外で待ち受ける場合に必要です。 | |
BOOKSY_MCP_HOST, BOOKSY_MCP_PORT | 127.0.0.1, 8787 | serve のアドレスです。 |
セキュリティとBooksyアカウント
- パスワードがこのコードに渡ることはありません。 パネルがすでに保持しているセッションのみを読み取り、対象もbooksy.comのセッションに限られます。
- セッションファイルはご自身のものです。
session.jsonはモード0600で作成され、Booksyのアクセストークンを保持します。このファイルを持つ人は誰でもBooksy Bizであなたとして操作できるため、gitや共有フォルダーに置かないでください。 - デフォルトではローカルで動作します。
serveは127.0.0.1にバインドし、BOOKSY_MCP_TOKENがない場合は別のアドレスを拒否します。 - booksy.comのみを対象とします。 booksy.com以外へのリクエストやリダイレクトは拒否されます。
- 読み取り専用モード。
--read-onlyまたはBOOKSY_MCP_READ_ONLY=1を設定すると、17個の読み取りツールのみが公開されます。 - 操作は実際の人に影響します。 予約、
notify_clientを指定した予約変更、キャンセル、口コミへの返信、メッセージの一斉送信は、クライアントに届きます。MCPクライアントは実行前に確認を求めますが、スクリプトは確認しないため、まずご自身のテスト用クライアントで試してください。 - スパムを送信しないでください。 同意していない人への一斉送信は、Booksyの規則や多くの国の法律に違反します。アカウントで実行される操作については、ご自身が責任を負います。
エラー
REST APIは{"error": "<code>", "message": "..."}を返します。MCPサーバーは同じコードとメッセージをツールエラーとして返します。
| ステータス | コード | 対処方法 |
|---|---|---|
| 401 | auth_required, auth_expired | セッションがないか、Booksyからサインアウトされています。ChromeでBooksy Bizにサインインし、booksy-mcp connectを実行してください。 |
| 403 | app_permission_denied | Booksyのプランまたはロールではこの操作を実行できません。たとえば、Booksy Biz LiteではProレポートを利用できません。 |
| 403 | scope_denied | サーバーが読み取り専用で動作しているか、リクエストによってBooksyアカウント自体が変更される可能性があります。 |
| 403 | target_blocked | Booksyがリクエストを拒否したか、ボット確認画面が表示されました。Chromeでパネルを一度開いてから、再試行してください。 |
| 409 | captcha_required | BooksyがCAPTCHAを要求しています。Chromeで解決してください。 |
| 422 | invalid_input | 引数が不足しているか、正しくありません。メッセージに該当する引数が示されます。 |
| 429 | rate_limited | Booksyがアカウントへのリクエストを制限しています。数分待ってください。 |
| 502 | target_error | Booksyがエラーを返したか、パネルに変更がありました。最新のツールを取得するにはgit pullを実行するか、issueを作成してください。 |
セルフホストまたはホステッド
| このリポジトリ | Cotlet、ホステッド版 | |
|---|---|---|
| ツール | 同じ28個 | 同じ28個 |
| 動作場所 | コンピューター上(電源が入っている間) | クラウド上、24時間365日 |
| Booksyセッション | ご自身のChrome。ローカルファイルに保存 | EU内のご自身専用Cloud Browser。プロファイルはAES-256-GCMで暗号化 |
| Booksyのパネルが変更された場合 | 修正後に一度git pullを実行 | 修正済み。すべてのツールを毎日テスト |
| 承認 | MCPクライアントが呼び出しごとに確認 | 予約、予約変更、返信、一斉送信は承認待ちになります。ツールごとに切り替え可能 |
| 対応サービス | お使いのマシン上のMCPクライアント、ローカルスクリプト | Claude.aiとChatGPTのコネクター、n8n、Make、Zapier、あらゆるHTTPクライアント |
| 利用対象 | 非営利目的での個人利用 | チーム、企業、代理店 |
| 料金 | 無料 | 2,000クレジット付きの7日間無料トライアル(カード不要)。その後は5,000クレジットにつき29ドルからの買い切りパック |
ホステッド版では、成功した呼び出しごとに20~30クレジット(ほとんどのツールでは25クレジット)を使用します。失敗した呼び出しは無料です。エージェント用にアプリが有効になっている間、Cloud Browserは1日あたり50クレジットを使用します。料金の詳細。
FAQ
Booksy に公式 API はありますか? 事業者が利用できるものはありません。Booksy はパートナー向け API を運営しており、docs.booksy.com にあるドキュメントにはログインが必要なため、自分のアカウント用のキーは取得できません(2026 年 10 月 11 日確認)。Stats & Reports と Message Blasts は、一般公開されている機能に含まれていません。詳細はこちらをご覧ください:cotlet.dev/integrations/booksy-api-mcp-server。
Claude、ChatGPT、Cursor 用の Booksy MCP サーバーはありますか?
はい。これはお使いのマシンで動作します。Claude Code、Claude Desktop、Cursor、Codex では booksy-mcp mcp を実行してください。ChatGPT と Claude.ai のコネクターには公開 HTTPS URL が必要です。ホスト型 Booksy MCP サーバーを利用すると、その URL を取得できます。
Booksy の Zapier アプリはありますか? 確認できませんでした。Booksy の外部で予約を管理したい事業者は、Booksy の予約確認メールを Zapier のメールパーサーに転送しています。これで新規予約を一方向にコピーできますが、Booksy の内容は変更できません。
Booksy の顧客を CSV にエクスポートできますか?
はい:python examples/export_clients.py --out clients.csv。すべてのページにある全顧客カードから、連絡先の詳細、メモ、来店回数、無断キャンセル回数、売上、最終来店日をエクスポートします。
空き枠を探して予約できますか?
find_open_slots は、指定した日のサービスについて、スタッフごとに予約可能な開始時刻を返します。それぞれ Booksy 独自のドライランで確認されます。create_appointment は、そのうちの 1 つを顧客のために予約します。顧客への通知は notify_client を指定した場合に限られます。
Message Blasts を送信できますか?
はい。有料の Booksy プランで、メール、SMS、プッシュ通知による send_message_blast を利用できます。まず estimate_message_blast を実行すると、配信対象数と SMS 費用を確認できます。EU では、マーケティングへの同意を示した顧客にのみ送信されます。
米国以外でも動作しますか?
はい。Booksy は国ごとに別の API を運用しており、サーバーはセッションから接続先を選択します。たとえば us.booksy.com、pl.booksy.com、es.booksy.com などです。
なぜ Chrome が必要なのですか? パスワードを使わずに Booksy のセッションを読み取るためです。Chrome を使うのはサインインごとに 1 回だけで、呼び出しごとではありません。
Booksy からサインアウトされた場合はどうなりますか?
呼び出しは auth_expired で失敗します。Chrome のリモートデバッグが有効になっている場合、次の呼び出し時にサーバーが新しいセッションを読み取ります(Chrome から確認されたら「許可」をクリックしてください)。それ以外の場合は、booksy-mcp connect をもう一度実行してください。
VPS や Docker で実行できますか?
技術的には可能です。ご使用のコンピューターからコピーした session.json を使います。その場合、Booksy からはデータセンターの IP アドレス経由でのセッション利用に見えるため、ご本人からのアクセスだと判断されにくくなります。常時稼働する環境には、固定 IP のご自身の Cloud Browser 内にセッションを保持するホスト型バージョンをご利用ください。
Booksy アカウントが停止されることはありますか? リクエストには Chrome のフィンガープリントが付与され、ユーザーがクリックするのと同じように 1 件ずつ送信されます。プラットフォームが決して措置を講じないと保証することはできません。通常の利用範囲を守り、同意していない相手に一斉送信しないでください。
自分のサロンや顧客のために使えますか? いいえ。ライセンスで許可されているのは非商用利用のみで、自分の事業での利用も商用利用にあたります。サロン、チーム、または顧客向けの業務には、Cotletをご利用いただくか、[email protected]までお問い合わせください。
オープンソースですか? ソースコードは公開されていますが、ライセンスはオープンソースライセンスではありません。非商用利用のみで、商用利用は禁止されています。
ツールが動かなくなった場合や、別のツールが必要な場合はどうすればよいですか? ツール名とエラーメッセージを添えて、issue を作成してください。
ライセンス
PolyForm Noncommercial License 1.0.0。要約:
- 許可されていること: 非商用利用:ご自身の Booksy アカウントを使った個人的な目的での利用、または慈善団体、学校、公的な研究機関、政府機関による利用。コードの変更、および同じライセンスでの共有。
- 許可されていないこと: ご自身の事業を含むあらゆる商用利用、クライアントのための業務、販売や提供、およびこのコードを基にしたサービスの販売や提供。
Cotlet(@cotletdev)がメンテナンスしています。Booksy はその所有者の商標です。このプロジェクトは非公式であり、Booksy とは提携、承認、後援関係にありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。