add_circle_member
Add a pending Circle member by name with an optional WhatsApp phone; capture their messenger identity later via a single-use enrollment link.
Instructions
Add a pending member to a Circle by name, with an optional pre-declared WhatsApp phone. The Telegram chat id is captured later when the member taps the enrollment deep link.
Agent usage: after adding a member, call invite_circle_member to mint the single-use enrollment link the member taps to bind their messenger identity.
ACCESS: needs a Proof account. Set PROOF_API_KEY and restart this server, then call this tool again. start_login does NOT open this tool.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Circle ID to add the member to | |
| name | Yes | Display name of the member | |
| whatsapp_phone | No | E.164 WhatsApp phone with a leading + (optional, declared) |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | MongoDB ObjectId | |
| name | No | ||
| status | No | ||
| enrolled_at | No | ||
| has_telegram | No | Whether the member has a Telegram channel (declared or verified) | |
| has_whatsapp | No | Whether the member has a WhatsApp channel (declared or verified) | |
| mesh_opt_out | No | The member sent /opt_out: they receive no drills, reminders or checks they did not start themselves | |
| mesh_opted_in | No | ||
| last_verified_at | No | When this member last CONFIRMED an identity check asked of them — i.e. last proved it was them. Null until they have. | |
| enrolled_phone_hint | No | Masked form of the phone the contact proved when they enrolled (the Telegram shared contact or the WhatsApp sender) — country prefix and last four digits only, never the full number. Lets the owner see who actually joined. Null until the member enrolls, and for members enrolled before it was recorded. |