Agenda.ch MCP服务器
包装agenda.ch预订API以便与VAPI语音代理或其他MCP客户端一起使用的MCP服务器。
配置
复制 .env.example 到 .env 并设置以下变量:
PORT=3000
COMPANY_ID=12345
NODE_ENV=development工具
便利工具
get_services
获取已配置公司的可用服务(类/子类)。
- 输入:
company_id(可选),location_id(可选) - 退货:服务列表
id(bookableId)、名称、价格和相关信息location_ids.
get_available_slots
获取特定服务的可用时隙。
- 输入:
- service_id:服务的ID(来自 get_services) - location_id:位置ID(来自 get_services) - date:YYYY-MM-DD格式的日期 - agenda_id:可选(默认为“任何人”)
- 退货:插槽列表
datetime(开始时间)和agenda_id需要预订。
create_booking
为选定的老虎机创建预订。简化包装 confirm_booking.
- 输入:
- service_id:服务ID - location_id:位置ID - start:开始时间(插槽中的日期时间字符串) - agenda_id:议程ID(来自插槽) - customer_firstname, customer_lastname, customer_email, customer_phone
- 退货:预订确认详情。
原始API工具
以下工具提供对Agenta.ch API终结点的直接访问:
get_company_info
获取完整的公司信息,包括地点、资源和乘客类别。
- 输入:
company_id(可选),locale(默认为“en”)
get_classes
获取类/类别(原始API响应)。有助于探索服务层次结构。
- 输入:
company_id(可选),locale(默认为“en”)
get_agendas
获取与公司相关的议程。
- 输入:
company_id(可选),locale(默认为“en”)
get_bookables
获取可预订服务(原始API响应)。
- 输入:
company_id(可选),locale(默认为“en”)
get_availabilities
获取原始可用性数据(按日期嵌套结构)。
- 输入:
- service_id:服务ID - location_id:位置ID - date:YYYY-MM-DD格式的日期 - agenda_id:可选(默认为“任何人”) - range:可选(默认为“3个月”)
configure_booking
在确认之前配置预订。返回必填字段和验证状态。
- 输入:
- email:客户电子邮件 - service_id:服务ID - participant_count:参与者人数(默认1) - phone_number:客户电话号码
confirm_booking
确认预订并完全控制所有参数。
- 输入:
- bookable_id:服务ID - location_id:位置ID - start:开始时间(ISO字符串) - email:客户电子邮件 - detail:客户详细信息对象(名字、姓氏、手机等) - participant_count:参与者人数(默认1) - agenda_id:议程ID - …和其他可选参数(booking_mode、referer等)
cancel_appointment
取消现有约会。
- 输入:
- appointment_id:预约ID - credential_id:凭证ID(来自预订确认) - credential_key:凭证密钥(来自预订确认) - message:取消原因
发展
npm install
npm run dev构建
npm run build
npm start