mcpField
M
Meet.bot

Meet.bot

本地服务
github.com/poolside-venturesAI 与智能体120 周前更新

关于 Meet.bot

Meet.bot MCP 将 AI 助手连接到 Meet.bot Booking Page API,用于管理预约页面、查询空闲时段和预订会议。支持本地 stdio 与远程 HTTP/SSE,认证信息随连接提供。

主要功能

  1. 01列出预约页面并查看详情
  2. 02查找可预约时段
  3. 03为访客预订会议
  4. 04管理预约 Webhook
  5. 05支持本地 stdio 和远程 HTTP/SSE

适用场景

  1. 01提出会议时间前查询空闲情况
  2. 02通过 AI 助手预订会议
  3. 03查看预约页面及其详情
  4. 04接收预约变更通知

MCP 相关

向 MCP 客户端提供 Meet.bot 的排期、预订和 Webhook 操作工具。HTTP/SSE 模式使用 Bearer 令牌认证;stdio 模式使用 `MEETBOT_AUTH_TOKEN` 环境变量。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"meetbot": {
"command": "npx",
"args": [
"-y",
"@meetbot/mcp"
],
"env": {
"MEETBOT_AUTH_TOKEN": "<MEETBOT_AUTH_TOKEN>"
}
}
}
}
启动命令npx -y @meetbot/mcp
需要配置的环境变量
MEETBOT_AUTH_TOKEN密钥

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@meetbot/mcp

工具

8

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

Meet.bot MCP(Model Context Protocol)

面向 Meet.bot Booking Page API 的 Model Context Protocol(MCP)服务,让 AI 助手能够使用日程安排和预订功能。

这是什么?

此 MCP 服务可将 AI 助手(例如 Claude、ChatGPT,以及其他支持 MCP 的助手)连接到你的 Meet.bot 账户,让它们代表你安排会议。你不必手动复制预订链接或查看日历,只需告诉 AI 助手“下周安排一次与 John 的 30 分钟会议”,它就会通过你的 MeetBot 日程页面完成预订。

工作原理:

  1. 将 MeetBot API 令牌连接到 MCP 服务
  2. 配置 AI 助手以使用此 MCP 服务
  3. 让 AI 助手安排会议——它可以检查你的空闲时间、查找可用时段,并直接通过你的 MeetBot 账户预订会议

对于希望自动安排会议并让 AI 助手智能管理日历的繁忙专业人士来说,这尤其有用。

如果你还没有账户,可以在 https://meet.bot 免费注册。

功能

  • 完整的 API 覆盖范围:实现 Meet.bot Booking Page API v1 的所有端点
  • 类型安全:完整支持 TypeScript,并提供全面的类型定义
  • 运行时验证:使用 Zod schema 验证输入并确保数据完整性
  • 身份验证支持:Bearer 令牌身份验证
  • 错误处理:稳健的错误处理,并提供详细的错误消息
  • 健康检查:使用 /v1/pages 端点进行内置健康监控
  • 符合 MCP 协议:完整实现 Model Context Protocol 服务
  • 双模式支持:可在本地运行(stdio),也可远程运行(HTTP/SSE)
  • 已部署至生产环境:在线运行于 https://mcp.meet.bot
  • 可用于生产环境:经过全面测试和验证,可用于生产环境

安装

npm install @meetbot/mcp

快速开始

1. 安装和配置
# Install the package
npm install @meetbot/mcp

# Or install globally for CLI usage
npm install -g @meetbot/mcp
2. 身份验证

身份验证不是工具,而是基于连接的:

  • **HTTP/SSE(远程,例如 https://mcp.meet.bot)**:连接时,在请求头中发送 Authorization: Bearer <your_api_token>。服务会在该会话中使用此令牌进行所有 API 调用。
  • Stdio(本地):启动服务时设置 MEETBOT_AUTH_TOKEN 环境变量(例如 MEETBOT_AUTH_TOKEN=your_token npx @meetbot/mcp)。

这里没有 configure_meetbot 或类似工具;AI 会使用下方的工具,身份验证则由连接处理。

3. 使用可用工具

MCP 服务提供以下工具:

获取日程页面
await get_scheduling_pages();
// Returns all scheduling pages for the authenticated user
获取页面信息
await get_page_info({
  page: "https://meet.bot/user/30min"
});
// Returns detailed information about a specific scheduling page
获取可用时段
await get_available_slots({
  page: "https://meet.bot/user/30min",
  count: 10,
  start: "2025-01-01",
  end: "2025-01-31",
  timezone: "America/New_York",
  booking_link: true
});
// Returns available booking slots with optional filters
预订会议
await book_meeting({
  page: "https://meet.bot/user/30min",
  guest_email: "[email protected]",
  guest_name: "Jane Doe",
  notes: "Meeting to discuss project requirements",
  start: "2025-01-15T14:00:00Z"
});
// Books a new meeting slot
健康检查
await health_check();
// Verifies API connectivity using the /v1/pages endpoint
Webhook

在会议预订、改期或取消的第一时间收到通知。对于每个事件(booking_received、booking_rescheduled、booking_cancelled),Meet.bot 都会向你的 URL POST 一个经过 JWT 签名(HS256)的 JSON 载荷,其格式与合作伙伴 webhook 相同。

// List your webhooks
await list_webhooks();

// Create (omit id) or update (pass id) a webhook
await set_webhook({
  webhook_url: "https://your-app.example.com/meetbot-hook",
  description: "CRM sync",
  coverage: "all",   // or "selected" with pages: [<page id>, ...]
  scope: "self"      // team admins can use "team" to also receive teammates' bookings
});
// Returns the webhook including the shared secret used to verify the signature.

// Delete a webhook
await delete_webhook({ id: 123 });

部署选项

MCP 服务可在两种模式下运行:

1. 本地模式(Stdio 传输)

用于与 Claude Desktop 等 AI 助手进行本地集成。使用 stdio 传输进行通信。

# Run locally
npx @meetbot/mcp

# Or with environment variable
MEETBOT_AUTH_TOKEN="your_token" npx @meetbot/mcp
2. HTTP 模式(SSE 传输)

使用 HTTP/SSE 传输进行远程部署。这样就可以通过网络访问 MCP 服务。

运行 HTTP 服务
# Build and start the HTTP server
npm run build
npm run start:http

# Or with custom port
PORT=8080 npm run start:http

# Or run directly with npx
npx meetbot-mcp-http
服务端点
  • SSE 端点:GET /sse - 建立用于 MCP 通信的 SSE 连接
  • 消息端点:POST /messages?sessionId=<id> - 接收客户端消息
  • 健康检查:GET /health - 查看服务健康状态
身份验证

所有请求都必须在 Authorization 请求头中包含 Bearer 令牌:

Authorization: Bearer <your-meetbot-api-token>

同一个令牌也用于向 Meet.bot API 进行身份验证。

测试 HTTP 服务

本地测试:

# Health check (should fail without auth)
curl http://localhost:3000/health

# Health check with authentication
curl -H "Authorization: Bearer YOUR_TOKEN" http://localhost:3000/health

# Connect to SSE endpoint
curl -N -H "Authorization: Bearer YOUR_TOKEN" http://localhost:3000/sse

# Or use the test script
./test-http-server.sh YOUR_TOKEN

生产环境测试:

# Test the live deployment
curl -H "Authorization: Bearer YOUR_TOKEN" \
     https://mcp.meet.bot/health

# Expected response:
# {"status":"ok","service":"meetbot-mcp"}
部署

HTTP 服务可部署到多个平台:

  • Railway:railway up ✅ 已在 https://mcp.meet.bot 上线
  • Fly.io:fly launch && fly deploy
  • Google Cloud Run:基于容器的部署
  • AWS App Runner:基于容器的部署
  • 任意 VPS:直接使用 Node.js 运行

示例:连接到生产环境

# Your MCP client should connect to:
# https://mcp.meet.bot/sse

# With Authorization header:
# Authorization: Bearer <your-meetbot-api-token>

Dockerfile 示例:

FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY dist ./dist
EXPOSE 3000
CMD ["node", "dist/cli-http.js"]

MCP 集成

与 AI 助手搭配使用

此 MCP 服务可与 Claude、ChatGPT 等支持 Model Context Protocol 的 AI 助手集成。

配置示例
{
  "mcpServers": {
    "meetbot": {
      "command": "npx",
      "args": ["@meetbot/mcp"],
      "env": {
        "MEETBOT_AUTH_TOKEN": "your_bearer_token_here"
      }
    }
  }
}
可用的 MCP 工具

该服务向 AI 助手提供 8 个工具:

  1. get_scheduling_pages - 列出所有预约页面
  2. get_page_info - 获取页面详情
  3. get_available_slots - 查找可用时间段
  4. book_meeting - 预约会议
  5. health_check - 使用 /v1/pages 端点验证 API 连接
  6. list_webhooks - 列出你的外发预约 webhook
  7. set_webhook - 创建或更新 webhook(booking_received / booking_rescheduled / booking_cancelled)
  8. delete_webhook - 删除 webhook

身份验证由连接提供(远程连接使用 HTTP 标头中的 Bearer token,本地 stdio 使用 MEETBOT_AUTH_TOKEN);没有单独的配置工具。

测试与验证

该软件包已通过全面测试和验证:

✅ MCP 协议合规性:完整支持 JSON-RPC 2.0
✅ 工具发现:已正确公开所有 5 个工具
✅ 错误处理:可妥善响应错误
✅ 类型安全:完整支持 TypeScript
✅ 架构验证:使用 Zod 验证输入
✅ 可用于生产环境:已使用真实 MCP 客户端测试

软件包统计信息
  • 软件包大小:12.8 kB(解包后 58.0 kB)
  • 测试覆盖:21 项测试通过
  • 依赖项:3 个生产依赖项
  • TypeScript:100% 类型覆盖率
  • 构建状态:✅ 通过
  • npm Registry:已发布并可用

使用示例

作为库使用
import { MeetbotClient, MeetbotMCPServer } from '@meetbot/mcp';

// Use as a direct API client
const client = new MeetbotClient({
  authToken: 'your_token'
});

// Use as an MCP server
const server = new MeetbotMCPServer();
await server.run();
作为 MCP 服务使用
# Run the MCP server
npx @meetbot/mcp

# Or install globally
npm install -g @meetbot/mcp
meetbot-mcp

API 参考

MeetbotClient

用于直接集成的核心 API 客户端:

import { MeetbotClient } from '@meetbot/mcp';

const client = new MeetbotClient({
  authToken: 'your_token'
});

// Get all scheduling pages
const pages = await client.getPages();

// Get page information
const pageInfo = await client.getPageInfo({
  page: 'https://meet.bot/user/30min'
});

// Get available slots
const slots = await client.getSlots({
  page: 'https://meet.bot/user/30min',
  count: 20
});

// Book a meeting
const booking = await client.bookSlot({
  page: 'https://meet.bot/user/30min',
  guest_email: '[email protected]',
  guest_name: 'Jane Doe',
  start: '2025-01-15T14:00:00Z'
});
数据类型

所有 API 响应均具有完整的类型定义:

interface BookSlot {
  success: boolean;
  page: string;
  guest_email: string;
  guest_name: string;
  notes?: string;
  start: string;
  ical_uid: string;
}

interface PageInfo {
  title: string;
  duration: number;
  url: string;
  owner_name: string;
  max_days_into_the_future: number;
}

interface Slots {
  count: number;
  duration: number;
  slots: SlotDetails[];
}

配置

环境变量

你可以使用环境变量配置 MCP 服务:

export MEETBOT_AUTH_TOKEN="your_bearer_token"

# Then run the server
meetbot-mcp
身份验证

身份验证基于连接,而非工具:

  • HTTP/SSE:连接到 MCP 服务时,在请求标头中发送 Authorization: Bearer <token>。
  • Stdio:运行服务时设置 MEETBOT_AUTH_TOKEN(例如 MEETBOT_AUTH_TOKEN=your_token meetbot-mcp)。

开发

运行测试
npm test
npm run test:watch
代码检查
npm run lint
npm run lint:fix

CLI 用法

该软件包包含一个命令行界面,可用于运行 MCP 服务:

# Install globally
npm install -g @meetbot/mcp

# Run the MCP server
meetbot-mcp

# Or run directly with npx (no installation required)
npx @meetbot/mcp
环境变量

你可以使用环境变量配置服务:

export MEETBOT_AUTH_TOKEN="your_bearer_token"

# Then run the server
meetbot-mcp

错误处理

对于常见问题,MCP 服务会提供详细的错误消息:

  • 配置错误:缺少或无效的配置参数
  • 身份验证错误:无效的令牌
  • API 错误:来自 Meet.bot API 的详细错误消息
  • 验证错误:输入验证失败,并指出具体字段错误

贡献

  1. Fork 此仓库
  2. 创建功能分支
  3. 修改代码
  4. 为新功能添加测试
  5. 提交 pull request

许可证

MIT 许可证 - 详情请参阅 LICENSE 文件。

支持

更新日志

1.2.10
  • 修复(stdio 启动崩溃):stdio 服务(npx @meetbot/mcp)声明了工具处理程序,却未声明 tools 能力,因此 MCP SDK 抛出“Server does not support tools”错误,进程在启动时退出。现在已声明 capabilities.tools;服务可以正常启动并响应 initialize 和 tools/list(无需令牌即可查看信息)。
1.2.9
  • 服务卡片:新增 /.well-known/mcp/server-card.json,用于发现和手动查看元数据(工具、提示词、身份验证)
  • Smithery 质量:新增工具注释(audience、priority)、更丰富的参数说明,以及用于质量评分的提示词能力
  • 提示词(技能):新增六个供 Smithery 和客户端使用的 MCP 提示词:schedule_meeting、check_availability、book_for_guest、share_booking_link、list_my_pages、suggest_times,并完整支持 prompts/list 和 prompts/get
1.2.7
  • 示例配置更新:从示例配置中移除过时的 MEETBOT_BASE_URL(基础 URL 已硬编码为 https://meet.bot)
1.2.6
  • 文档更新:将生产环境 URL 从 Railway 更新为 https://mcp.meet.bot
  • 完善 README:新增“这是什么?”部分,说明 MCP 的用途,以及如何通过 MeetBot 账户安排会议
  • 用户引导:新增免费注册 Meet.bot 账户的链接
1.2.5
  • Jest 配置:更新 Jest 配置以支持 ES 模块
  • 构建改进:TypeScript 编译时排除测试文件
  • 发布:完善发布检查清单和文档
1.1.1
  • ES 模块修复:修复 Railway 和其他 Node.js 部署环境中的 ES 模块兼容性问题
  • 导入扩展名:为所有相对导入添加正确的 .js 扩展名
  • 在线部署:成功部署至 https://mcp.meet.bot
  • 生产环境验证:确认已在生产环境中正常运行
1.1.0
  • HTTP/SSE 传输:新增支持 SSE 传输的 HTTP 服务,可用于远程部署
  • Bearer 令牌身份验证:为 HTTP 端点实现身份验证
  • 多模式支持:可作为本地 stdio 服务或远程 HTTP 服务运行
  • 已就绪,可部署:新增适用于 Railway、Fly.io 等平台的 Dockerfile 和部署配置
  • 健康检查端点:新增 /health 端点,用于监控
  • 会话管理:正确处理会话,并在传输结束时进行清理
  • 已满足生产就绪要求:完整实现 HTTP 功能,并提供身份验证和错误处理
1.0.4
  • 修复健康检查:现在使用真实的 /v1/pages 端点,而非虚假的健康检查端点
  • 更新文档:明确说明健康检查的实现细节
  • 提升可靠性:健康检查现在可以正确验证 API 连通性
1.0.3
  • 简化配置:移除对 baseUrl 的要求——现在已硬编码为 https://meet.bot
  • 更新文档:简化配置示例
  • 改善用户体验:用户只需提供 authToken
1.0.2
  • 修复身份验证:移除不受支持的 sessionId 参数
  • 更正 API URL:将 api.meet.bot 更新为 meet.bot
  • 更新文档:提供准确的身份验证示例
1.0.1
  • 完善文档:提供包含使用示例的完整 README
  • MCP 集成指南:新增 AI 助手配置示例
  • 测试结果:新增验证和测试信息
1.0.0
  • 首次发布——面向 Meet.bot API 的生产就绪 MCP 服务
  • 完整的 API 覆盖——包含 Meet.bot Booking Page API v1 的所有端点
  • TypeScript 支持——提供全面的类型定义,确保完整的类型安全
  • 运行时验证——使用 Zod 模式验证输入并确保数据完整性
  • MCP 服务实现——完全符合 Model Context Protocol 规范
  • CLI 工具——用于运行 MCP 服务的命令行界面
  • 错误处理——健壮的错误处理机制,并提供详细信息
  • 身份验证——支持 Bearer 令牌身份验证
  • 健康检查——内置 API 连接监控,使用 /v1/pages 端点
  • 测试——全面的测试套件,包含 21 项通过的测试
  • 文档——完整的 API 文档和使用示例
  • 功能测试——已通过真实 MCP 客户端请求验证
  • npm 发布——已成功发布到 npm registry

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。