关于 42min
42min 为开发者和 Agent 提供会议安排 API 及官方 MCP 服务,供其连接 42min 账户。公开仓库包含机器可读的工具契约、OpenAPI 规范和 Cursor 插件。
主要功能
- 01Cursor 插件提供 43 个日程安排工具
- 02公开 REST API 和 OpenAPI 3.1 规范
- 03机器可读的 MCP 工具模式与权限范围
- 04支持 OAuth 2.1 和个人访问令牌
- 05带签名验证的 Webhook 接收示例
适用场景
- 01将 Cursor Agent 连接到 42min 账户
- 02根据 OpenAPI 规范构建 API 客户端
- 03检查 MCP 工具参数和所需权限范围
- 04验证接收的 42min Webhook 签名
MCP 相关
https://api.42min.us/mcp 的远程 MCP 服务向 MCP 客户端提供 42min 日程安排工具。它支持 OAuth 2.1、动态客户端注册和个人访问令牌。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.42min.us/mcpclaude mcp add --transport http us-42min-meetings https://api.42min.us/mcp{"mcpServers":{"us-42min-meetings":{"type":"http","url":"https://api.42min.us/mcp"}}}在 Cursor 中打开{"servers":{"us-42min-meetings":{"type":"http","url":"https://api.42min.us/mcp"}}}在 VS Code 中打开{"mcpServers":{"us-42min-meetings":{"type":"http","url":"https://api.42min.us/mcp"}}}{"mcpServers":{"us-42min-meetings":{"serverUrl":"https://api.42min.us/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
42min 开发者
42min 的公开打包内容和接口契约。此仓库包含基于 42min 构建或将 AI Agent 连接到 42min 所需的内容。产品本身为闭源。
| REST API | https://api.42min.us/v1 |
| MCP 服务 | https://api.42min.us/mcp |
| 文档 | 42min.us/help/api |
| 状态 | OAuth 2.1、动态客户端注册、个人访问令牌 |
此处包含的内容
plugins/42min
适用于 Cursor 的 42min 插件。通过 OAuth 将编辑器的 Agent 连接到你的 42min 账户,并提供 43 种日程安排工具。请参阅其 README。
任何 MCP 客户端都可以不使用此插件,直接连接到 https://api.42min.us/mcp。服务会发布 OAuth 受保护资源元数据,因此符合规范的客户端可以自行发现其他所有信息。
openapi/42min.v1.yaml
公开 REST API 的 OpenAPI 3.1 描述,可用于生成客户端、导入 Postman 或 Bruno,以及提供给编码 Agent。
该文件由人工编写,并通过契约测试套件与运行中的 API 进行核对。测试套件会调用每个有文档说明的端点,并根据这些架构验证实际响应、标头和错误正文。正是通过这种方式,我们发现了初稿中的 7 处错误,其中两处会导致每个生成的客户端在每次写入预约时都无法正常工作。如果某个端点存在但没有文档说明,或反之,路由覆盖率检查就会导致构建失败。
这些检查在我们的私有仓库中运行,因为它们会使用真实数据库启动 API,无法在此运行。此仓库中的 CI 会确保该文件是有效的 OpenAPI 3.1 文档,避免格式错误的规范交到你手中。
如果你发现此文件与 API 存在不一致,问题很可能出在文件上:请提交问题。
server.json
官方 MCP Registry 条目。该条目声明这是一个通过可流式 HTTP 在 https://api.42min.us/mcp 上提供服务的远程服务,因此基于注册表的目录可以直接列出它,无需任何人手动填写表单。
mcp/tools.json
MCP 契约的机器可读快照:其中包含每个工具的参数 JSON Schema、所需作用域、是否会写入数据,以及客户端用于判断何时在调用前征求你同意的注解。该文件由运行中的工具注册表生成,而非手动维护,并由测试加以把关;如果二者不一致,测试就会失败。
如果你正在构建客户端,可以阅读此文件,也可以将其提供给编码 Agent。插件 README 中的表格是同一内容的人类可读摘要。
examples/webhook-receiver
一个仅约 120 行且无需依赖的可用接收器,并附有针对 verify.js 的 10 项测试。集成出问题时,签名验证是常见原因:通常是因为验证了重新序列化后的正文,而不是原始字节;无论怎么读文档,这一点都不容易看出来。复制 verify.js 即可继续。
基于此 API 构建
- n8n 社区节点(
n8n-nodes-42min)。 提供预约、事件类型、时段和当前用户,以及一个内置签名验证、可响应每种 Webhook 事件的触发器。它在你自己的 n8n 中运行,因此预约数据从 42min 直接传到你的服务,不会经过其他地方。
用一段话了解身份验证
两种机制。OAuth 2.1 搭配 PKCE,供代表用户行事的应用使用,并支持动态客户端注册,因此客户端无需提交支持工单即可自行注册。个人访问令牌供代表个人行事的脚本使用。两者都包含作用域;API 会拒绝令牌作用域未涵盖的任何操作。令牌以其用户的身份行事:它只能查看和更改该成员在 42min 中有权限操作的内容。因此,通过普通用户连接的应用只能访问该用户的预订,通过管理员连接的应用则可以访问整个组织的内容。发现文档位于 /.well-known/oauth-authorization-server 和 /.well-known/oauth-protected-resource。
详细信息:身份验证。
开始构建前值得了解的事项
- 修改预订的调用支持
Idempotency-Key。 使用同一个键重试。使用新键会创建第二个预订。键与令牌所属用户及单个端点绑定。 PATCH /v1/bookings/{uid}使用 ETag。 读取 ETag,并通过If-Match将其发回;如果发生并发编辑,请求会明确失败,而不会静默覆盖更改。- 目前还没有测试环境。 写入操作会作用于生产环境:发送真实邮件并创建真实日历事件。请在你拥有的活动类型上进行测试,并在完成后清理。(我们的帮助页面中“沙盒”另有所指,即按凭据隔离 Webhook 订阅。)
- 忽略未知的响应字段。 我们可能不作通知就添加字段;完整的版本管理政策和六个月的弃用保证,请参阅 CHANGELOG.md。
支持
如有 API 错误、规范错误或插件问题,请提交 issue。安全问题请发送至 [email protected],不要提交到 issue 跟踪器:请参阅 SECURITY.md。
许可证
MIT。请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。