MeetSync MCP Server について
MeetSync MCP Server は、MeetSync のカレンダー調整 API を MCP ツールとして公開します。複数人の空き時間の検索、候補日時の調整、予約管理を行う AI エージェント向けで、API キー認証を使用します。
主な機能
- 01参加者と設定の管理
- 02個人および全員の空き時間検索
- 03会議提案の作成と追跡
- 04予約の確定、変更、キャンセル
- 05API キー認証
活用シーン
- 01複数参加者に合う会議時間の検索
- 02候補日時を送り参加者の回答を収集
- 03承認済み提案から予約を作成
- 04既存の会議を変更またはキャンセル
MCP 対応
MeetSync API の全 19 操作を、名前付きツールとして MCP 経由で公開します。MCP クライアントは API キーを使って、このサーバー経由で API を呼び出します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-meetsync
AI エージェント向けに構築されたカレンダー調整 API、MeetSync 用の MCP サーバーです。
MeetSync の 19 個のエンドポイントをすべて MCP ツールとして公開するため、MCP 対応の LLM なら、人間とのやり取りを必要とせず、空き時間の検索、会議時間の提案、予約の確定を自律的に行えます。
インストール
npm install -g mcp-meetsync
または、npx で直接実行します。
npx mcp-meetsync
設定
このサーバーは、次の 2 つの環境変数を読み込みます。
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
MEETSYNC_API_URL | いいえ | http://localhost:3000 | MeetSync API のベース URL |
MEETSYNC_API_KEY | はい | — | X-API-Key ヘッダーで送信する API キー |
.env.example を .env にコピーして値を入力するか、Claude のツール定義に直接渡してください。
Claude への追加
次のスニペットを Claude のデスクトップ設定(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に貼り付けます。
{
"mcpServers": {
"meetsync": {
"command": "npx",
"args": ["-y", "mcp-meetsync"],
"env": {
"MEETSYNC_API_URL": "https://api.yourmeetsync.com",
"MEETSYNC_API_KEY": "your-api-key-here"
}
}
}
}
保存後、Claude を再起動します。MeetSync の 19 個のツールが Claude のツール一覧に表示されます。
ツール
MeetSync の 19 個の operationId はすべてツールとして公開されています。ツール名は operationId と完全に一致します。
参加者(7 個のツール)
| ツール | 使用する場面 |
|---|---|
listParticipants | 登録済みの参加者を参照または検索する |
createParticipant | スケジュールを設定する前に、新しい人物を登録する |
getParticipant | 特定の参加者のタイムゾーンやプロバイダーの詳細を確認する |
updateParticipant | 参加者の名前、メールアドレス、タイムゾーン、またはカレンダー設定を変更する |
deleteParticipant | 参加者を完全に削除する(連鎖削除するには force を使用) |
getParticipantPreferences | 参加者の勤務時間とスケジュール上の制約を確認する |
setParticipantPreferences | 勤務時間、予定不可時間帯、バッファーを定義または置き換える |
空き時間(2 個のツール)
| ツール | 使用する場面 |
|---|---|
getParticipantAvailability | 1 人の参加者の空き時間帯を検索する |
findMutualAvailability | すべての参加者が同時に参加できる、スコア付きの候補時間を検索する |
提案(5 個のツール)
| ツール | 使用する場面 |
|---|---|
listProposals | 保留中または過去の提案を参照する |
createProposal | 候補時間帯を提案し、合意形成のために参加者へ送信する |
getProposal | 提案のステータスを確認し、誰が回答したかを確認する |
cancelProposal | 保留中の提案を取り下げる |
respondToProposal | 参加者の承諾または拒否を記録する |
予約(5 個のツール)
| ツール | 使用する場面 |
|---|---|
listBookings | 確定、キャンセル、または再調整済みのミーティングを確認する |
createBooking | 承諾済みの提案から予約を確定する、または直接予約する |
getBooking | 特定のミーティングの詳細を取得する |
rescheduleBooking | 確定済みのミーティングを新しい日時に変更する |
cancelBooking | ミーティングを完全にキャンセルする |
エージェントのワークフロー例
AI エージェントがこれらのツールを使用して実行する、スケジュール調整ワークフローの全体例を示します。
1. createParticipant ← register [email protected]
2. createParticipant ← register [email protected]
3. setParticipantPreferences ← Alice: Mon–Fri 09–17, 15 min buffer
4. setParticipantPreferences ← Bob: Mon–Fri 10–18, no back-to-back
5. findMutualAvailability ← find 60-min slots next week for [alice, bob]
→ returns top 5 scored slots
6. createProposal ← "Budget Review" with top 3 slots, expires in 24h
→ proposal id: prop_abc123
7. respondToProposal ← alice accepts, prefers slot 1
8. respondToProposal ← bob accepts, prefers slot 1
→ proposal auto-transitions to "accepted", acceptedSlotId set
9. getProposal ← confirm acceptedSlotId
10. createBooking ← proposalId + slotId
→ booking confirmed, calendarEventIds written
開発
# Install dependencies
npm install
# Type-check without building
npm run typecheck
# Build to dist/
npm run build
# Run in dev mode (auto-reloads)
MEETSYNC_API_URL=http://localhost:3000 MEETSYNC_API_KEY=dev-key npm run dev
アーキテクチャ
src/
index.ts ← MCP Server, ListTools + CallTool handlers, stdio transport
client.ts ← Typed fetch wrapper: GET/POST/PUT/PATCH/DELETE + X-API-Key injection
tools/
participants.ts ← 7 participant tools + handlers
availability.ts ← 2 availability tools + handlers
proposals.ts ← 5 proposal tools + handlers
bookings.ts ← 5 booking tools + handlers
各ツールファイルは、次のものをエクスポートします。
name、description、inputSchema(厳密な JSON Schema)を含むTool[]配列client経由で MeetSync API を呼び出す、handle*Tool(name, args)非同期関数
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。