Floyd について
FloydはFloyd Engineのスケジュール管理と予約操作をAIエージェントに提供します。空き枠の確認、仮押さえ、確定、キャンセル、日時変更、予約情報の更新に対応します。
主な機能
- 01サービスの空き枠確認
- 02時間枠の一時確保
- 03ユーザーの同意を得た予約確定
- 04仮押さえまたは確定済み予約のキャンセル
- 05予約日時の変更
- 06予約詳細の取得または更新
活用シーン
- 01サービスの予約可能な時間を探す
- 02予約手続き中に選択した枠を確保
- 03予約を確定またはキャンセル
- 04予約日時の変更やメタデータの更新
MCP 対応
Floyd Engineのスケジュール管理・予約ツールをStreamable HTTPで提供するMCPサーバーです。stdioモードにも対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Floyd MCP Server
AI エージェントに Floyd Engine のスケジュール管理および予約ツールを提供する MCP サーバーです。Model Context Protocol の Streamable HTTP トランスポート上に構築されています。
Engine の API ドキュメントについては、engine リポジトリの docs フォルダーを参照してください。
ツール
| ツール | 説明 |
|---|---|
floyd_get_available_slots | サービスの予約可能な時間を確認します |
floyd_hold_booking | 時間枠を一時的に確保します |
floyd_confirm_booking | 確保した予約を確定します(ユーザーの明示的な同意が必要です) |
floyd_cancel_booking | 確保済みまたは確定済みの予約をキャンセルします |
floyd_reschedule_booking | 予約を別の時間に変更します |
floyd_update_booking | 予約のメタデータを更新します |
floyd_get_booking | 予約の詳細とステータスを取得します |
セットアップ
pnpm install
環境変数
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
FLOYD_BASE_URL | いいえ | http://localhost:4000/v1 | Floyd Engine のベース URL |
PORT | いいえ | 3000 | HTTP サーバーのポート |
使い方
HTTP モード(Streamable HTTP)
pnpm dev
MCP エンドポイント:POST /
ヘルスチェック:GET /health
Stdio モード
pnpm dev -- --stdio
認証
Floyd engine で認証が必要な場合、接続するエージェントは以下の方法で API キーを提供します。
Authorization: Bearer <token>ヘッダー(推奨)?token=<value>クエリパラメーター
API キーはリクエストごとに Floyd engine に転送されます。engine で認証が無効になっている場合(セルフホストの場合など)、キーは不要です。
予約フロー
get_available_slots → hold_booking → confirm_booking
↘ cancel_booking
↘ reschedule_booking
↘ update_booking (metadata)
- 時間枠を取得 — 予約可能な時間を照会し、署名付きの
slotIdトークンを返します - 確保 —
slotId(または明示的なフィールド)を使って時間枠を予約します。予約はheld状態で作成されます - 確定 — 予約を確定します。
userConfirmed: trueが必要です - キャンセル — 確保済みまたは確定済みの予約を解放します
- 再スケジュール — 予約の識別情報を維持したまま、別の時間に変更します
- 更新 — メタデータ(人数や特別なリクエストなど)を追加または置き換えます
開発
pnpm test # run tests
pnpm typecheck # type-check
pnpm lint # eslint
pnpm format # prettier
pnpm build # bundle with tsup
本番環境
pnpm build
pnpm start
サーバーは、正常なシャットダウンのために SIGTERM/SIGINT を処理します。Floyd API への HTTP リクエストには 10 秒のタイムアウトが設定されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。