mcpField
M
meetergo

meetergo

远程服务
developer.meetergo.com生产力29 周前更新

关于 meetergo

meetergo 是面向需要处理日程及相关 CRM 任务的 Agent 的 MCP 服务。它提供预约变更、联系人、路由表单和网站助手设置等工具,可通过托管端点或本地进程连接。

主要功能

  1. 01查询空闲时段并管理预约
  2. 02管理会议类型和预订页面
  3. 03处理联系人和路由表单
  4. 04设置并测试网站助手
  5. 05通过托管 HTTP 或本地 stdio 连接

适用场景

  1. 01预订、改期或取消会议
  2. 02查看即将举行的预约和日历空档
  3. 03创建用于线索分流的资格表单
  4. 04配置并测试网站助手

MCP 相关

向 MCP 客户端提供 57 种日程安排、CRM、Mira 和配置工具。客户端可连接托管的 Streamable HTTP 端点,或通过 stdio 在本地运行软件包。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.meetergo.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npm@meetergo/mcp-server0.6.5

工具

详细介绍

meetergo MCP 服务

让 AI Agent 真正管理日历:查找空档、预约、改期、取消、查看即将安排的事项,并保持联系人记录准确。

请勿与位于 https://developer.meetergo.com/mcp 的 docs MCP 服务混淆;该服务用于搜索文档,不能更改任何内容。两者都很有用,且用途不同:

Docs MCP本服务
端点developer.meetergo.com/mcpmcp.meetergo.com/mcp,或通过 stdio 运行 npx
工具SearchMeetergo57 个日程安排、CRM、Mira 和配置工具
能预约吗?不能能
用途编写集成作为集成

设置

在 my.meetergo.com/integrations 创建个人访问令牌,其格式类似 rgo-…,然后将客户端指向托管服务,或通过 stdio 在本地运行此软件包。所有套餐都可以使用该令牌,包括 Free 套餐。

托管服务
https://mcp.meetergo.com/mcp

使用 Streamable HTTP,通过 Authorization: Bearer rgo-… 进行身份验证。路径很重要:mcp.meetergo.com 本身不是端点。对于支持远程 URL 和请求头的客户端:

{
  "mcpServers": {
    "meetergo": {
      "url": "https://mcp.meetergo.com/mcp",
      "headers": { "Authorization": "Bearer rgo-your_token_here" }
    }
  }
}
本地运行(npx)
{
  "mcpServers": {
    "meetergo": {
      "command": "npx",
      "args": ["-y", "@meetergo/mcp-server"],
      "env": { "MEETERGO_TOKEN": "rgo-your_token_here" }
    }
  }
}

兼容 Claude Desktop、Claude Code、Cursor,或任何支持 MCP 的应用。

限定令牌权限

创建令牌时,可以将其权限限制在 Agent 实际需要的功能范围内(日程安排、联系人和交易、Mira、表单、账户)。受限令牌无法访问这些范围之外的任何内容,包括读取操作,因此请为你打算使用的工具授予相应的权限组——仅 Mira 权限的令牌无法预约,仅日程安排权限的令牌无法读取你的知识库。

使用登录而非粘贴令牌

托管端点现已支持 OAuth 登录。发现信息发布于 /.well-known/oauth-protected-resource(RFC 9728),因此支持该功能的客户端可以从 MCP URL 发起流程。客户端采用预注册方式,而非通过动态客户端注册创建。对于 Claude 自定义连接器,请在高级设置中输入公开客户端 ID mcp-claude,并将客户端密钥留空。目录中的 Claude 和 ChatGPT 客户端已分别配置对应的提供方。

Cursor 和 Grok Bot

此仓库包含 Cursor 和 Grok Bot 共用的 Cursor Marketplace 插件。在“设置”>“插件”>“Marketplace”中安装 meetergo,然后完成浏览器登录。该插件连接到托管端点,并使用公开的 PKCE 客户端 ID mcp-cursor;无需粘贴客户端密钥或令牌。

在 Marketplace 列表发布前进行本地审核时,可将此仓库作为本地 Cursor 插件加载。其 .cursor-plugin/plugin.json 清单指向 mcp.json,其中包含相同的托管 URL 和 OAuth 客户端 ID。

个人访问令牌适用于所有 MCP 客户端和所有套餐,包括 Free 套餐。本页其余内容均以此为前提。

代表其他用户操作

个人访问令牌始终以其所有者身份操作。若要让 Agent 为整个公司服务——例如由助手代表多位同事预约——请使用 Platform API Key(ak_live:<uuid>:<secret>),并指定目标用户:

"env": {
  "MEETERGO_TOKEN": "ak_live:...",
  "MEETERGO_USER_ID": "the-user-uuid"
}

这两种令牌的要求截然相反,服务会在启动时检查这两项要求,而不是等到预约过程中才让你发现:

  • Platform API Key 必须设置 MEETERGO_USER_ID——API 几乎要求每个路由都指定操作者;
  • 个人访问令牌不得设置该变量——它始终以所有者身份操作,API 会直接拒绝此请求头。

使用托管端点时,操作者用户 ID 通过 X-Meetergo-Api-User-Id 请求头传递,而不是通过环境变量;同样的两项规则仍然适用,使用个人访问令牌发送此请求头会被拒绝。

环境

stdio 入口(meetergo-mcp,即 npx 运行的程序):

变量必填用途
MEETERGO_TOKEN是rgo-… 个人访问令牌或 ak_live:… 平台 API 密钥
MEETERGO_USER_ID使用平台 API 密钥时必填要以其身份操作的用户
MEETERGO_API_URLAPI 基础地址覆盖值,默认值为 https://api.meetergo.com/v4
MEETERGO_NEXT_URL渲染到小组件安装代码片段中的预约页面主机,默认值为 https://cal.meetergo.com
MEETERGO_TIMEOUT_MS每个请求的超时时间,默认值为 30000
自行运行托管入口

此软件包还提供 meetergo-mcp-http,这是运行在 https://mcp.meetergo.com/mcp 后面的 Streamable HTTP 入口。凭据通过每个请求的 Authorization 标头传入,而非从环境变量读取,因此一个进程可服务任意数量的账户——此处不会读取 MEETERGO_TOKEN 和 MEETERGO_USER_ID。它读取以下变量:

变量必填用途
PORT监听端口,默认值为 8080
MEETERGO_API_URLAPI 基础地址覆盖值,默认值为 https://api.meetergo.com/v4
MEETERGO_NEXT_URL渲染到小组件安装代码片段中的预约页面主机,默认值为 https://cal.meetergo.com
MEETERGO_DASHBOARD_URL计划额度错误中升级链接所用的控制面板主机,默认值为 https://my.meetergo.com
MCP_PUBLIC_URL此服务的公开 URL,默认值为 http://localhost:$PORT。只使用其 origin:origin + /mcp 即为资源标识符——发现文档中的 resource 字段,也是 OAuth 令牌必须在 aud 中携带的值。因此,https://host、https://host/ 和 https://host/mcp 是相同的设置。任何非绝对 http(s) URL 都会导致启动失败
OAUTH_ISSUER三项需全部设置或全部不设置授权服务器的 OpenID issuer,例如 https://login.meetergo.com/realms/meetergo。必须是绝对的 https 地址——交换过程会向其发送此服务的客户端密钥和用户令牌——否则进程将拒绝启动。末尾的斜杠会被去掉
OAUTH_CLIENT_ID三项需全部设置或全部不设置此服务将令牌交换成的机密客户端(RFC 8693)
OAUTH_CLIENT_SECRET三项需全部设置或全部不设置该客户端的密钥

三个 OAUTH_* 变量必须全部设置或全部不设置。 全部设置后,会先验证传入的访问令牌——包括 issuer、aud、typ: Bearer、对照 issuer 的 JWKS 验证 RS256 签名以及有效期——然后才将其交换为单独的上游 API 令牌。MCP 规范禁止转发客户端交给你的令牌,因此令牌交换不是一种优化,而是唯一可行的途径。

全部不设置时,进程仅接受不记名令牌:个人访问令牌和平台 API 密钥均可使用;两个 .well-known 路径都会返回 404;401 挑战不包含 resource_metadata;OAuth 令牌会被拒绝,而不会传递到上游。

设置一项或两项时,行为与上述仅接受不记名令牌的模式相同,不会启用部分 OAuth;此外还会写入警告日志 oauth_disabled_incomplete_config,列出缺少的变量。

重试

两个入口在此处的行为相同。速率限制和临时上游错误(429、502、503、504)最多总共尝试三次(即重试两次),并遵循 API 提供的 Retry-After。

不会盲目重试。 如果预约或取消操作以模糊的方式失败——例如超时、连接中断或 502——API 可能已经执行了操作,而且没有幂等键来确保再次尝试是安全的。此类情况只会重试读取操作;写入操作仅在收到 429 时重试,因为只有这一响应表明请求从未被处理。

单提示词引导设置

如果你的客户端支持 MCP 提示词,请运行 meetergo: onboard。否则请粘贴以下内容:

为我的公司设置 meetergo。先调用 get_me 和 get_setup_status,并告诉我目前已有的内容。然后使用 propose_conversion_setup 分析我的网站,并展示建议的设置方案——会议类型、 资格筛选问题、网站助手。在我批准之前,不要创建任何内容。 我批准后:创建缺少的内容,使用 create_qualification_form 将问题转换为路由表单, 抓取我的网站,然后通过 run_test_drive 证明一切正常,并向我展示判定结果。最后提供 安装代码片段;我粘贴后,使用 verify_widget_install 进行验证。

Agent 会审查现有内容、提出方案、等待你确认,然后进行配置;在正式上线之前,还会向你展示模拟访客通过你自己的助手完成预约的过程。第二个提示词 meetergo: weekly-review 会提取上周的对话,并提出为助手补充它未能回答的问题的答案。

计划限制

每个工具都会以结构化方式报告计划限制:触发了哪项限制,以及在哪里可以升级,让 Agent 能向你解释情况,而不是含糊地失败。get_me 还会返回一个 plan 区块(套餐等级、限制),以便可靠的 Agent 在你开始进行套餐无法完成的操作之前提醒你。连接服务本身不受限制——任何套餐(包括 Free)的令牌都能使用。

工具

共 57 个工具,覆盖端到端的日程安排。日程安排是大多数 Agent 的主要工作流程;其余工具则确保 Agent 无需退回到原始 REST 接口。

日程安排
工具会写入数据?用途
get_me确认令牌有效——发现内容为空时从这里开始
list_meeting_types可供预约的项目
get_availability指定会议类型的可预约时段
book_appointment是预约时段
reschedule_appointment是更改预约时间
cancel_appointment有破坏性取消预约,或移除一位参会者
list_appointments带筛选条件的分页日历
get_todays_appointments仅限今天
get_appointment获取一项预约的完整信息,包括 attendeeIds
add_guest是为预约添加访客邮箱
update_appointment_notes是回写通话准备内容或结果
create_one_time_booking_link是发送一次性链接,而不是代他人预约
list_calendar_connections已关联的日历
后续跟进
工具会写入数据?用途
send_quick_email是向参会者发送一次性邮件(每 5 分钟最多 5 封)
update_meeting_transcription是附加来自笔记工具的转录文本或摘要
会议类型
工具会写入数据?用途
get_meeting_type完整配置——更新前先读取
create_meeting_type是创建可预约的会议类型
update_meeting_type是修改会议类型
delete_meeting_type有破坏性移除会议类型;其页面将停止工作
预约页面
工具会写入数据?用途
get_personal_page颜色、页眉、链接、会议类型顺序
update_personal_page是更改品牌样式
路由表单
工具会写入数据?用途
list_routing_forms所有表单和漏斗
get_routing_form步骤、字段和路由规则
create_routing_form是创建资格筛选表单
update_routing_form是修改表单
delete_routing_form有破坏性移除表单;共享链接将失效
send_routing_form是通过邮件或 SMS 发送,或生成链接
list_form_recipients查看收件人和答复者
list_data_fields所有表单中可重复使用的字段
create_data_field是添加字段
CRM
工具是否会写入?用途
search_contacts创建重复联系人前先查找联系人
get_contact按 contactId 或预订中的 attendeeId 获取完整记录
create_contact是添加联系人
update_contact是编辑联系人
bulk_create_contacts是一次导入多个联系人(每分钟 3 次调用)
delete_contact破坏性操作移除联系人及其表单答案
Mira,网站助手

提供将网站从“没有助手”变为上线状态所需的一切,让助手能根据公司自己的网页 回答问题并预订会议。

工具是否会写入?用途
get_setup_status上线清单:已有内容、缺少内容以及下一步操作
get_mira_settings助手的完整配置——修改前先读取
update_mira_settings破坏性操作修改配置;返回之前的设置,方便还原
restore_mira_settings破坏性操作恢复之前某次更新时保存的快照
propose_conversion_setup读取已抓取的网站,并提出助手、资格筛选和预订设置方案
create_qualification_form是将提议的问题转换为真实、可编辑的路由表单
run_test_drive让脚本模拟访客与已保存的助手交谈;返回评估结果和对话记录
get_mira_widget_embed公钥、嵌入代码片段和预览 URL
verify_widget_install获取客户网站上的一个页面,并确认该页面提供的是他们自己的微件
answer_visitor_question是教助手回答它之前无法回答的问题
get_conversation_insights查看访客提出的问题,以及助手无法回答问题的情况
知识库
工具是否会写入?用途
crawl_company_website是导入网站内容,让助手能据此回答问题
get_crawl_status查看正在进行的抓取任务的进度
list_knowledge_documents查看已导入的内容
delete_knowledge_document破坏性操作移除文档;助手将不再引用该文档
search_company_knowledge检索用于回答问题的段落
Webhook
工具是否会写入?用途
list_webhooks查看正在使用的端点(每家公司最多 6 个)
create_webhook是注册 HTTPS 端点
update_webhook是修改 URL 或事件
delete_webhook破坏性操作移除端点;事件会立即停止

写入操作会携带 readOnlyHint: false,而以上标记为破坏性操作的项目 会携带 destructiveHint: true,这样宿主就能在 Agent 移除人类可能会忽略的内容前要求确认。

这些工具会为你做什么

API 会要求提供模型无法得知的信息。工具不会把这些样板内容写进文档字符串 后寄希望于模型理解,而是会直接提供这些信息:

  • book_appointment 会构建嵌套的 attendee 对象,为 receiveReminders 和必填的空 notes 设置默认值,并且在预约没有姓名时拒绝 该预约,而不是将空白姓名写入邀请。
  • get_availability 和 book_appointment 会确定需要计算哪些主持人。 API 在加载会议类型前就会对两者返回 Expected hostIds or queueId 错误,而模型只有 meetingTypeId。
  • create_meeting_type 会填充六个必填但无关紧要的 meetingInfo 字段(customChannelName、connectChannelName、空的 confirmationButton 等);缺少这些字段会导致整个请求被拒绝。架构中未列出的内容 都会通过 advanced 传递。
  • list_appointments 会提供必填的 page 和 pageSize,因为 API 没有为它们设置默认值。

开发

npm test          # vitest
npm run build     # tsc -> dist

测试断言的是传输格式,而不只是工具列表:每个工具调用的路径,以及 API 的 DTO 所要求的精确请求体结构。这是有意为之。0.1.x 发布了五个永远无法成功的工具——路径错误、查询键错误,而 BookingDto 要求嵌套的 attendee,请求体却是扁平结构——但所有测试都通过了,因为它们只检查工具是否存在。添加或更改工具时,必须将其请求固定为与 apps/api 中的路由一致。

评论

支持 Markdown

第一次接触 MCP?

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

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