MCP Server

工具参考

BeeSSL MCP Server 提供的全部工具,包括各自的作用与调用时的注意事项。

以下是 MCP Server 提供的全部工具。多数情况下无需了解具体的工具名称——用自然语言提出请求即可,助手会自行选择。本文供需要了解调用细节时参考。

工具一览

工具作用使用说明
inspect_certificate检测任意域名当前在用的证书:到期时间、证书链、主机名匹配与具体问题。不限于本站签发的证书。查本站申请的进度是 get_certificate_order,两者查的不是一回事。
request_certificate申请证书,返回需要添加的 DNS TXT 记录。对同一域名重复调用是安全的:已有进行中的申请会被返回,而不是新建一张、白烧一次当日额度。
check_dns_record_propagation记录添加好之后调用,检查是否已在权威 NS 上生效并推进签发。不要用它轮询 CA 结果。没查到时会说明是哪台 NS 返回了什么。
get_certificate_order查询一张申请的当前状态和 DNS 记录。CA 验证要几分钟到几小时,不要高频轮询。
download_certificate取回已签发的证书。fullchain 直接返回,私钥只给一次性下载链接,不进对话。
get_deployment_instructions给出 Nginx、Apache、Caddy、宝塔、K8s、IIS 的配置片段与重载命令。不确定用户用哪一种时省略参数,会返回全部可选项让用户自己选,而不是替他猜。
list_certificate_orders列出账号下的所有证书及到期时间。
cancel_certificate_order取消一张尚未签发完成的申请。已签发的证书不归它管,那是吊销。
list_monitors列出所有被监控的地址,含当前状态与证书到期时间。
add_monitor把一个地址加入监控,每天检测两次,出问题发邮件。账号没有通知邮箱时会直接拒绝——加一个不会告警的监控等于没加。
set_monitor_active暂停或恢复一个监控项。「别再提醒我了」用暂停,历史还在;暂停的监控项仍占用额度。
remove_monitor删除一个监控项,释放一个监控额度。连同检测历史与告警记录一起删除,不可恢复。
recheck_monitor立刻检测一个监控项,不等下一次例行扫描。已暂停的监控项会被直接拒绝,而不是排一个不会执行的任务。
get_notifications列出最近的签发结果与监控告警。每条都带对象的当前状态,三周前的「即将到期」旁边写着「正常」就不必再转述。
get_account_quota查询套餐额度用量(含监控数),并告知通知邮箱是否已设置。
set_notification_email设置或清除接收通知的邮箱。手机号登录的账号可能没有邮箱,那样签发结果和到期提醒会静默发不出去。

调用时的注意事项

三种「看证书」的方式

工具看的是什么
inspect_certificate任意域名此刻真实在用的证书,与由谁签发无关
get_certificate_order本站受理的某一张申请的进展
list_monitors已加入持续监控的地址,及其最近一次检测结果

检测与查询是两件事

inspect_certificate 连接域名并读取它此刻真实在用的证书,与该证书由谁签发无关——其他服务商签发的、自签的、配置有误的,都能查出并说明原因。

get_certificate_order 查询的是本站受理的某一张申请的进展。它看不到本站之外签发的证书。

「某某域名的证书还有多久到期」应使用前者;「我提交的那张申请到哪一步了」应使用后者。

检测结果缓存一小时,同一域名短时间内重复调用不会重复握手,也不会额外计入次数。

重复申请是安全的

对同一域名重复调用 request_certificate 不会创建第二张申请,而是返回已有的那一张。这一行为是刻意设计的:助手在上下文丢失后重新提交是常见情况,若每次都新建申请,会迅速耗尽当日的申请次数。

不要用于轮询

check_dns_record_propagation 用于确认 TXT 记录是否已在权威域名服务器上生效,不应用来轮询 CA 的验证结果。CA 验证耗时从数分钟到数小时不等,高频调用不会加快其速度。

查询申请当前状态请使用 get_certificate_order,同样应控制频率。

取消与吊销的区别

cancel_certificate_order 只能取消尚未签发完成的申请。已经签发的证书无法通过它撤回,那属于吊销操作,不在该工具的范围内。

申请前确认额度

get_account_quota 返回当前套餐的额度与已用量。在批量申请前先调用一次,可以避免中途因超出限制而失败。

通知邮箱可能为空

本站使用手机号登录,账号未必填写过邮箱。而证书签发成功、签发失败与到期前的续期提醒仅通过邮件发送——未设置邮箱时这些通知不会送达,且不会产生任何报错。

get_account_quota 会一并返回当前是否已设置。未设置时可通过 set_notification_email 补充;传入 null 则为清除,等同于关闭全部邮件通知。

暂停与删除的区别

不希望继续收到某个地址的告警时,应使用 set_monitor_active 将其暂停:监控项与检测历史都会保留,随时可以恢复。

remove_monitor 会连同检测历史与告警记录一并删除,且无法恢复。两者的另一个区别在额度:暂停的监控项仍然占用套餐的监控数量,删除才会释放。

recheck_monitor 对已暂停的监控项不生效——检测任务会被跳过,因此该工具会直接拒绝,而不是排入一个不会执行的任务。

监控告警依赖通知邮箱

add_monitor 在账号未设置通知邮箱时会直接拒绝。这是刻意的:监控的全部价值在于出问题时能通知到人,没有邮箱的监控不会产生任何提醒,也不会报错。

get_notifications 返回的条目中,delivered_by_emailfalse 表示该通知从未发出——记录存在,但当时账号没有可投递的地址。

部署配置不应由助手推测

get_deployment_instructions 省略 target 参数调用时,返回全部可选的服务器软件;带上 target 时返回该软件的配置片段、文件路径与重载命令。

服务器软件不明确时应先询问,而非直接假定为 Nginx:配置错误的后果是站点无法访问。

续期后需重新下载证书文件并再次执行重载命令,否则服务器仍会继续提供旧证书。

错误处理

工具返回的错误信息中包含可供操作者判断的具体内容。DNS 检查未通过时,会说明是哪一台权威域名服务器返回了什么值,而不是仅返回「未生效」——后者无法据以采取任何行动。

常见错误的排查方法见 DNS 验证申请状态说明