自助注册
大多数代理使用您已有的账户运行:您设置代理,它通过浏览器登录。本指南介绍另一条路径,即代理没有账户,完全从终端自行创建一个。使用 CLI 或 curl 验证电子邮件地址并创建组织、工作区和凭据。本地 stdio MCP 需要先保存凭据才能启动;托管的 MCP 不提供注册工具。您需要能访问电子邮件收件箱以获取验证码。通过 Bird CLI 或 MCP 服务器完成的注册会归属到执行注册的工具。
使用 CLI
要使用以下 CLI 命令,你需要安装 bird CLI。注册和验证与区域无关,不需要初始配置。在最后一步,将 --region(us1 或 eu1)传递给 create-org,以选择账户及其数据存储的区域。不需要主机名或环境变量。
1. 请求登录验证码
bird auth signup 会发送一个六位数的登录验证码到邮箱。如果邮箱地址是新的,验证该验证码会同时创建账户。它使用与仪表板相同的免密魔法链接流程,因此邮件中的验证码是你唯一需要的。请保留该邮箱地址以供下一步使用。
bird auth signup you@example.com
# { "email": "you@example.com", "status": "code_sent" }2. 验证邮箱
六位数验证码通过邮件送达,因此它来自 CLI 之外:从收件箱中读取它。将验证码与相同的邮箱地址一起传递给 bird auth verify-email,该命令会完成登录,并为全新账户返回一个一次性的 onboarding_ticket。
bird auth verify-email you@example.com --code 123456
# { "onboarding_ticket": "...", "user_id": "usr_..." }3. 创建组织
bird auth create-org 使用该票据创建你的组织和工作区,然后存储生成的凭据,使 CLI 和本地 stdio MCP 服务器从此以新账户身份进行认证。此操作仅限一次:第二次调用会返回 409。--region 选择账户及其数据存储的区域(us1 或 eu1),并将请求路由到该区域;CLI 会从中推导出主机地址,因此你无需设置 URL。
bird auth create-org "Acme" --workspace-name "Production" --region us1 --onboarding-ticket "YOUR_ONBOARDING_TICKET"确认凭据可用:
bird auth status # authenticated: true, valid: true账户已创建并完成认证。代理现在可以使用 CLI 来配置通道和发送消息。
运行前检查 CLI 的输入
每个步骤都自带描述且不需要凭据,因此代理可以在发送任何请求之前规划整个流程。bird auth --help 打印有序的流程,--example 打印可编辑的请求体,--response-schema 打印每个命令返回的字段。
使用 curl
你需要 curl 和 jq,但不需要 Bird CLI、MCP 连接、API 密钥或浏览器会话。在同一个 shell 中运行命令,如果请求失败则停止。在开始之前选择 us1 或 eu1;组织创建请求必须发送到与其 region 匹配的主机。
umask 077
BIRD_SIGNUP_DIR=$(mktemp -d)
BIRD_REGION=us1
BIRD_BASE_URL="https://${BIRD_REGION}.platform.bird.com"
BIRD_EMAIL=you@example.com私有目录保存验证响应和凭据。请将这些文件排除在版本控制、聊天记录和共享日志之外。
1. 请求登录验证码
jq -n --arg email "$BIRD_EMAIL" '{email: $email}' |
curl --fail-with-body --silent --show-error \
"$BIRD_BASE_URL/v1/auth/magic-link" \
-H 'Content-Type: application/json' --data-binary @-成功的请求返回 204,没有响应体。从邮件中读取六位数验证码;它在 15 分钟后过期。响应不会透露账户是否已存在。
2. 验证邮箱
将 123456 替换为邮件中的验证码。保存响应但不打印其引导票据:
BIRD_CODE=123456
jq -n --arg email "$BIRD_EMAIL" --arg code "$BIRD_CODE" \
'{email: $email, code: $code}' |
curl --fail-with-body --silent --show-error \
"$BIRD_BASE_URL/v1/auth/magic-link/verify-code" \
-H 'Content-Type: application/json' --data-binary @- \
--output "$BIRD_SIGNUP_DIR/verified.json"
jq -e '.onboarding_ticket | type == "string" and length > 0' \
"$BIRD_SIGNUP_DIR/verified.json" > /dev/null仅在验证成功且票据检查顺利退出时继续。新验证的账户会收到一个一次性的 onboarding_ticket。已有组织的现有账户不需要此注册流程;如果验证需要 MFA,请改为完成现有账户的登录流程。
3. 创建组织和工作区
选择你的组织名称和工作区名称,确保 region 与 BIRD_BASE_URL 一致。此请求使用票据,因此不需要 cookie jar 或 bearer 令牌:
jq -n --arg region "$BIRD_REGION" \
--slurpfile verified "$BIRD_SIGNUP_DIR/verified.json" \
'{org_name: "Acme", workspace_name: "Production", region: $region,
onboarding_ticket: $verified[0].onboarding_ticket}' |
curl --fail-with-body --silent --show-error \
"$BIRD_BASE_URL/v1/auth/onboarding" \
-H 'Content-Type: application/json' --data-binary @- \
--output "$BIRD_SIGNUP_DIR/account.json"成功的响应为 201,包含 organization、workspace、access_token、token_type 和 expires_in,以及签发时附带的刷新令牌。访问令牌在 expires_in 中指定的秒数后过期。请安全存储响应。这是一次性的账户设置;已有组织的账户会收到 409。
4. 发起经过认证的请求
将 bearer 请求头写入私有的 curl 配置文件,然后读取凭据背后的身份信息:
jq -er '.access_token | select(type == "string" and length > 0) |
"header = \"Authorization: Bearer \(.)\""' \
"$BIRD_SIGNUP_DIR/account.json" > "$BIRD_SIGNUP_DIR/curl-auth.conf"
curl --fail-with-body --silent --show-error \
--config "$BIRD_SIGNUP_DIR/curl-auth.conf" "$BIRD_BASE_URL/v1/auth/me"200 身份响应确认凭据可用。后续的 API 调用使用相同的 bearer 请求头和区域主机。Curl 不会将凭据安装到 CLI 或 MCP 客户端中;请在删除临时目录之前将保存的凭据移入应用程序的密钥存储。