Create workspace member
create_workspace_memberAdd or update a non–Super Connector workspace member. Email is required — this tool upserts by email. Do NOT use for new Super Connectors — use add_super_connector instead (it creates the user, assigns the Super Connector role, and places them in a category in one step). For new members (Requester, Admin, etc.): present an interactive add-member form UI with required fields Email, First Name, Last Name, plus optional Phone and LinkedIn URL. Never block submit on the optional fields. The form has NO role field — roles are assigned separately via add_role after this call succeeds. On form Submit: call THIS tool with all submitted identity fields. NEVER call add_role on form submit. Do not ask for identity fields in plain chat when a form is shown. For updates: if email was not provided, ask the user to supply it. If they do not know the email, collect other identifiers, call search_workspace_members to find matches, present the best match with name and email, and ask 'Is this the person you want to update?' — only call this tool after the target member is confirmed and email is known. Creates the platform User if needed, then creates or updates the workspace membership. Returns keycloak_user_id (internal — never say this to the user). Does NOT assign workspace roles. USER-FACING COPY after success: e.g. 'I've added Manthan to the workspace.' If a role was discussed earlier: 'Would you like me to assign the Requester role?' — never say 'create_workspace_member', 'membership created', 'no role assigned', or explain which tool ran.
Use when: Use to add or update workspace members who are NOT Super Connectors. If the user wants to add a Super Connector, use add_super_connector instead — do NOT call create_workspace_member or add_role for that flow. ADD flow (non-SC): (1) render add-member form → (2) user submits → (3) call create_workspace_member with all identity fields — NOT add_role. (4) If a role was discussed (e.g. Requester, Admin), call add_role after success using keycloak_user_id from the response. UPDATE flow without email: search via search_workspace_members, confirm identity, then call with resolved email.
Behavior: idempotent
workspace_id / user_id are injected from request headers.
Prerequisites (check before calling this tool): [REQUIRED] Email must be known and the target member confirmed before calling. Verify: If email was not provided, ask the user for it. If unavailable, collect name, LinkedIn URL, and/or phone, call search_workspace_members, show the top match(es) with name and email, and get explicit user confirmation ('Is this the person you want to update?') before proceeding. For new members, render the add-member form UI and wait for submit — do not call with guessed values.
Next steps (after this tool succeeds): [optional] [SUGGESTION] → call add_role: Tell the user they were added successfully (use their name). If a non–Super Connector role was discussed earlier, assign it via add_role (plain language confirmation only). Never mention tool names, API calls, membership records, or internal IDs.
Also returns pagination info (created_at, updated_at, created_by, updated_by, deleted_at, deleted_by).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| phone | No | ||
| last_name | No | ||
| first_name | No | ||
| linkedin_id | No | ||
| member_profile | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||