Cal.com MCP
ทางการเชื่อมต่อไคลเอนต์ AI กับการจัดตารางเวลาของ Cal.com ผ่าน Model Context Protocol โดยใช้เซิร์ฟเวอร์ที่โฮสต์ที่ mcp.cal.com หรืออินสแตนซ์ในเครื่อง
คุณทำอะไรได้บ้างด้วย Cal Com MCP?
- จัดการการจอง — ให้ผู้ช่วยของคุณแสดงรายการ สร้าง เลื่อนเวลา หรือยกเลิกการจองโดยใช้เครื่องมือเช่น
get_bookingsและcreate_booking - กำหนดค่าประเภทกิจกรรม — สร้างหรืออัปเดตประเภทกิจกรรม เช่น "Quick Chat" ระยะเวลา 30 นาที ผ่าน
create_event_typeและupdate_event_type - ตรวจสอบความพร้อม — ค้นหาช่วงเวลาว่างหรือช่วงเวลาที่ไม่ว่างจากปฏิทินที่เชื่อมต่อด้วย
get_availabilityและget_busy_times - จัดการตารางเวลา — สร้าง อัปเดต หรือดึงข้อมูลตารางเวลาเริ่มต้นของคุณโดยใช้
create_scheduleและget_default_schedule - จัดการทีมและการเป็นสมาชิก — เชิญสมาชิกหรือปรับเปลี่ยนบทบาทในทีมผ่าน
create_team_inviteและupdate_team_membership
เอกสาร
เซิร์ฟเวอร์ MCP
เชื่อมต่อไคลเอนต์ AI เข้ากับการจัดตารางเวลาของ Cal.com ผ่าน Model Context Protocol โดยใช้เซิร์ฟเวอร์โฮสต์ที่ mcp.cal.com หรืออินสแตนซ์ในเครื่อง
เซิร์ฟเวอร์ Cal.com MCP ห่อหุ้ม Cal.com API v2 ใน Model Context Protocol ช่วยให้คุณจัดการการจอง ประเภทกิจกรรม ตารางเวลา และอื่นๆ ผ่านภาษาธรรมชาติในไคลเอนต์ที่รองรับ MCP ใดก็ได้
เซิร์ฟเวอร์โฮสต์ (mcp.cal.com)
วิธีที่เร็วที่สุดในการเริ่มต้นคือการเชื่อมต่อไคลเอนต์ MCP ของคุณเข้ากับ mcp.cal.com โดยตรง เซิร์ฟเวอร์โฮสต์ใช้การส่งข้อมูลแบบ Streamable HTTP พร้อมการยืนยันตัวตน OAuth 2.1 — ไคลเอนต์ของคุณจะจัดการขั้นตอนการอนุญาตให้โดยอัตโนมัติ
เชื่อมต่อไคลเอนต์ของคุณ
ชี้ไคลเอนต์ MCP ของคุณไปที่ URL ของเซิร์ฟเวอร์โฮสต์:
https://mcp.cal.com/mcp
เมื่อคุณเชื่อมต่อครั้งแรก ไคลเอนต์ของคุณจะแนะนำคุณผ่านขั้นตอนการอนุญาต OAuth ซึ่งคุณให้สิทธิ์เซิร์ฟเวอร์เข้าถึงบัญชี Cal.com ของคุณ ไม่จำเป็นต้องใช้คีย์ API
เพิ่มข้อมูลต่อไปนี้ลงใน `claude_desktop_config.json` ของคุณ:* **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
* **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
```json theme={null}
{
"mcpServers": {
"calcom": {
"url": "https://mcp.cal.com/mcp"
}
}
}
```
เปิด **การตั้งค่า → MCP** และเพิ่มเซิร์ฟเวอร์ใหม่ด้วย URL `https://mcp.cal.com/mcp` หรือเพิ่มลงใน `.cursor/mcp.json` ของคุณ:
```json theme={null}
{
"mcpServers": {
"calcom": {
"url": "https://mcp.cal.com/mcp"
}
}
}
```
เพิ่มเซิร์ฟเวอร์ลงในการตั้งค่า MCP ของ VS Code:
```json theme={null}
{
"mcpServers": {
"calcom": {
"url": "https://mcp.cal.com/mcp"
}
}
}
```
เพิ่มข้อมูลต่อไปนี้ลงใน `~/.fx/mcp.json` ของคุณ:
```json theme={null}
{
"mcp": {
"calcom": {
"type": "http",
"url": "https://mcp.cal.com/mcp"
}
}
}
```
จากนั้นรัน `/mcp auth calcom --open` ใน fx เพื่ออนุญาต ดู
[เอกสาร MCP ของ fx](https://fx.sh/docs/capabilities/mcp) สำหรับการส่งข้อมูล
ตัวเลือกการยืนยันตัวตน และการค้นหาเครื่องมือ
เซิร์ฟเวอร์โฮสต์เอง (stdio)
หากคุณต้องการรันเซิร์ฟเวอร์ในเครื่อง คุณสามารถใช้การส่งข้อมูลแบบ stdio พร้อมคีย์ API ซึ่งมีประโยชน์สำหรับการพัฒนาหรือเมื่อคุณต้องการควบคุมเซิร์ฟเวอร์อย่างเต็มที่
ข้อกำหนดเบื้องต้น
- Node.js >= 18
- คีย์ API ของ Cal.com — สร้างได้ที่ การตั้งค่า → นักพัฒนา → คีย์ API
เชื่อมต่อไคลเอนต์ของคุณ
เพิ่มข้อมูลต่อไปนี้ลงในการกำหนดค่าไคลเอนต์ MCP ของคุณ:
{
"mcpServers": {
"calcom": {
"command": "npx",
"args": ["@calcom/cal-mcp@latest"],
"env": {
"CAL_API_KEY": "cal_live_xxxx"
}
}
}
}
แทนที่ cal_live_xxxx ด้วยคีย์ API จริงของคุณ
คำเตือน
อย่าแชร์หรือคอมมิตคีย์ API ของคุณ หากถูกเปิดเผย ให้หมุนเวียนคีย์ทันทีใน การตั้งค่า Cal.com ของคุณ
ชุดเครื่องมือ
คุณสามารถจำกัดเครื่องมือที่เซิร์ฟเวอร์ลงทะเบียนสำหรับเซสชันได้โดยการเพิ่มพารามิเตอร์คำค้นหา toolsets ต่อท้าย URL ของเซิร์ฟเวอร์:
https://mcp.cal.com/mcp?toolsets=bookings,availability
ชุดเครื่องมือที่ถูกต้อง: profile, event-types, bookings, availability, schedules, calendars, teams, organizations, routing-forms, catalog (เมตา-เครื่องมือ find_api_operation / describe_api_operation / call_api_operation) ชื่อที่ไม่รู้จักจะถูกปฏิเสธด้วย 400 invalid_request การละเว้นพารามิเตอร์จะลงทะเบียนทุกเครื่องมือ เครื่องมือในเครื่อง get_app_link และ search_docs จะถูกลงทะเบียนเสมอโดยไม่คำนึงถึงการเลือก สำหรับเซิร์ฟเวอร์ stdio ที่โฮสต์เอง ให้ตั้งค่า MCP_TOOLSETS แทน
เครื่องมือที่มีให้
เซิร์ฟเวอร์ MCP เปิดเผยเครื่องมือ 63 รายการจัดหมวดหมู่ตามประเภท:
ลิงก์แอป
| เครื่องมือ | คำอธิบาย |
|---|---|
get_app_link | สร้าง URL ที่เปิดหน้าการจอง ประเภทกิจกรรม ตารางเวลา ทีม ฟอร์มการกำหนดเส้นทาง หรือหน้าการตั้งค่าในเว็บแอป Cal.com |
เอกสารประกอบ
| เครื่องมือ | คำอธิบาย |
|---|---|
search_docs | ค้นหาเอกสารประกอบผลิตภัณฑ์ของ Cal.com; คืนหน้าที่ยึดอันดับพร้อมข้อความคัดลอกจากผลลัพธ์อันดับแรก |
โปรไฟล์ผู้ใช้
| เครื่องมือ | คำอธิบาย |
|---|---|
get_me | รับโปรไฟล์ผู้ใช้ที่ยืนยันตัวตนของคุณ |
update_me | อัปเดตโปรไฟล์ผู้ใช้ของคุณ |
ประเภทกิจกรรม
| เครื่องมือ | คำอธิบาย |
|---|---|
get_event_types | แสดงรายการประเภทกิจกรรมทั้งหมด |
get_event_type | รับประเภทกิจกรรมเฉพาะตาม ID |
create_event_type | สร้างประเภทกิจกรรมใหม่ |
update_event_type | อัปเดตประเภทกิจกรรม |
delete_event_type | ลบประเภทกิจกรรม |
get_event_type_settings | รับการตั้งค่าของประเภทกิจกรรม |
get_event_type_history | รับประวัติการเปลี่ยนแปลงของประเภทกิจกรรม |
get_scheduling_config | รับการกำหนดค่าการจัดตารางเวลาของประเภทกิจกรรม |
get_crm_sync_errors | รับข้อผิดพลาดการซิงค์ CRM สำหรับประเภทกิจกรรม |
การจอง
| เครื่องมือ | คำอธิบาย |
|---|---|
get_bookings | แสดงรายการการจองพร้อมตัวกรองเสริม |
get_booking | รับการจองเฉพาะตาม UID |
create_booking | สร้างการจองใหม่ |
reschedule_booking | เลื่อนเวลาการจอง |
cancel_booking | ยกเลิกการจอง |
confirm_booking | ยืนยันการจองที่รอดำเนินการ |
mark_booking_absent | ทำเครื่องหมายการขาดการจอง |
get_booking_attendees | รับผู้เข้าร่วมทั้งหมดสำหรับการจอง |
add_booking_attendee | เพิ่มผู้เข้าร่วมในการจอง |
get_booking_attendee | รับผู้เข้าร่วมเฉพาะ |
get_booking_routing_trace | รับเส้นทางการกำหนดเส้นทางสำหรับการจอง |
get_org_team_bookings | รับการจองสำหรับทีมองค์กร |
get_org_user_bookings | รับการจองสำหรับผู้ใช้องค์กร |
ตารางเวลา
| เครื่องมือ | คำอธิบาย |
|---|---|
get_schedules | แสดงรายการตารางเวลาทั้งหมด |
get_schedule | รับตารางเวลาเฉพาะตาม ID |
create_schedule | สร้างตารางเวลาใหม่ |
update_schedule | อัปเดตตารางเวลา |
delete_schedule | ลบตารางเวลา |
get_default_schedule | รับตารางเวลาเริ่มต้นของคุณ |
ความพร้อมใช้งานและปฏิทิน
| เครื่องมือ | คำอธิบาย |
|---|---|
get_availability | รับช่วงเวลาที่ว่าง |
get_busy_times | รับช่วงเวลาที่ไม่ว่างจากปฏิทิน |
get_connected_calendars | แสดงรายการปฏิทินที่เชื่อมต่อ |
get_conferencing_apps | แสดงรายการแอปพลิเคชันการประชุม |
ทีมและการเป็นสมาชิก
| เครื่องมือ | คำอธิบาย |
|---|---|
get_my_teams | รับทีมที่คุณสังกัด |
get_org_teams | รับทีมองค์กร |
create_team_invite | เชิญบุคคลเข้าร่วมทีม |
create_team_membership | สร้างการเป็นสมาชิกทีม |
get_team_memberships | รับการเป็นสมาชิกทีมทั้งหมด |
get_team_membership | รับการเป็นสมาชิกทีม |
update_team_membership | อัปเดตการเป็นสมาชิกทีม |
delete_team_membership | ลบการเป็นสมาชิกทีม |
องค์กร
| เครื่องมือ | คำอธิบาย |
|---|---|
get_org_memberships | รับการเป็นสมาชิกองค์กรทั้งหมด |
create_org_membership | สร้างการเป็นสมาชิกองค์กร |
get_org_membership | รับการเป็นสมาชิกองค์กร |
update_org_membership | อัปเดตการเป็นสมาชิกองค์กร |
delete_org_membership | ลบการเป็นสมาชิกองค์กร |
get_org_attributes | รับคุณลักษณะขององค์กร |
get_org_attribute | รับคุณลักษณะขององค์กร |
get_attribute_options | รับตัวเลือกสำหรับคุณลักษณะ |
get_user_attributes | รับคุณลักษณะที่กำหนดให้กับผู้ใช้ |
assign_attribute_to_user | กำหนดคุณลักษณะให้กับผู้ใช้ |
update_user_attribute | อัปเดตคุณลักษณะที่กำหนดให้กับผู้ใช้ |
unassign_attribute_from_user | ยกเลิกการกำหนดคุณลักษณะจากผู้ใช้ |
get_user_attribute_history | รับประวัติการกำหนดคุณลักษณะของผู้ใช้ |
ฟอร์มการกำหนดเส้นทาง
| เครื่องมือ | คำอธิบาย |
|---|---|
calculate_routing_form_slots | คำนวณช่วงเวลาตามการตอบแบบฟอร์มการกำหนดเส้นทาง |
get_org_routing_forms | รับฟอร์มการกำหนดเส้นทางขององค์กร |
get_org_routing_form_responses | รับการตอบแบบฟอร์มการกำหนดเส้นทาง |
แคตตาล็อก API
| เครื่องมือ | คำอธิบาย |
|---|---|
find_api_operation | ค้นหาแคตตาล็อกการดำเนินการ API v2 ทั้งหมด |
describe_api_operation | รับโครงร่างอินพุตสำหรับการดำเนินการ API |
call_api_operation | ดำเนินการใดๆ จากการดำเนินการ API v2 จากแคตตาล็อก |
ตัวอย่างพรอมต์
เมื่อเชื่อมต่อแล้ว คุณสามารถโต้ตอบกับ Cal.com โดยใช้ภาษาธรรมชาติ:
- "ฉันมีการจองอะไรบ้างในสัปดาห์นี้?"
- "สร้างประเภทกิจกรรม 30 นาทีชื่อ 'Quick Chat'"
- "ยกเลิกการประชุมกับ John ในวันพรุ่งนี้"
- "แสดงช่วงเวลาว่างของฉันสำหรับวันจันทร์หน้า"
- "เลื่อนการประชุม 2 โมงของฉันเป็นวันพฤหัสบดีบ่าย 3 โมง"
- "ฉันมีประเภทกิจกรรมอะไรบ้าง?"
แหล่งข้อมูลที่เกี่ยวข้อง
- คู่มือเอเจนต์ AI — สร้างเอเจนต์ AI โดยใช้ Cal.com API โดยตรง
- เอกสารอ้างอิง API v2 — เอกสารประกอบจุดสิ้นสุด API ทั้งหมด
- ที่เก็บ GitHub — ซอร์สโค้ด
เอกสารนี้สร้างและโฮสต์บน Mintlify ซึ่งเป็นแพลตฟอร์มเอกสารสำหรับนักพัฒนา