预约服务API

一个封装agenda.ch预约API的服务,用于VAPI语音代理或其他MCP客户端进行预约管理。

  • by PickleSoda
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 PickleSoda/mcp-agenda

使用说明

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