get_team_info
Always call when the user asks what team accounts they have, which teams they belong to / are on, or wants to switch teams — do NOT answer from memory or session context, which knows only the single currently-active team and will undercount. This tool is the only way to enumerate the full list. Returns every team you belong to, each with its full member roster. Read-only, no inputs.
Input Schema
{
"type": "object",
"properties": {}
}Output Schema
{
"type": "object",
"required": [
"teams"
],
"properties": {
"teams": {
"type": "array",
"items": {
"type": "object",
"required": [
"team_id",
"team_name",
"is_active",
"your_role",
"members"
],
"properties": {
"members": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"role",
"status"
],
"properties": {
"name": {
"type": "string",
"description": "Member name (or the invited email for pending invites)."
},
"role": {
"type": "string",
"description": "Member's role."
},
"email": {
"type": [
"string",
"null"
],
"description": "Member email."
},
"status": {
"type": "string",
"description": "active or invited."
},
"user_id": {
"type": [
"integer",
"null"
],
"description": "Numeric user id (what assigned_to expects). null for a pending invite."
}
}
},
"description": "The team's members."
},
"team_id": {
"type": "integer",
"description": "Numeric team id. Pass to set_active_team."
},
"is_active": {
"type": "boolean",
"description": "True for the caller's currently active team (exactly one)."
},
"team_name": {
"type": "string",
"description": "Team name."
},
"your_role": {
"type": "string",
"description": "The caller's role in this team (e.g. admin, editor, viewer)."
}
}
},
"description": "Every team the caller is an active member of."
}
}
}Instructions
Always use this when the user asks what team accounts they have, which teams they belong to / are on, or wants to switch teams — do not answer from memory or session context, which knows only the single currently-active team and will undercount (a user can belong to many teams). This tool is the only way to enumerate the full list. Returns every team you belong to, each with its full member roster. Read-only, no inputs. Also use it before assigning a plan or content to a teammate (to look up their numeric user_id — the value assigned_to expects), or to answer questions about the team's members and your role. Deliberately excludes credits/subscription — call get_current_user_info for those.
Parameters: none.
Output:
| Field | Type | Description |
|---|---|---|
teams |
array | Every team the caller is an active member of |
teams[].team_id |
integer | Numeric team id. Pass to set_active_team |
teams[].team_name |
string | Team name |
teams[].is_active |
boolean | True for the caller's currently active team (exactly one) |
teams[].your_role |
string | The caller's role in this team (e.g. admin, editor, viewer) |
teams[].members |
array | The team's members |
teams[].members[].user_id |
integer | null | Numeric user id (what assigned_to expects). null for a pending invite |
teams[].members[].name |
string | Member name (or the invited email for pending invites) |
teams[].members[].email |
string | null | Member email |
teams[].members[].role |
string | Member's role |
teams[].members[].status |
string | active or invited |
Example prompts:
- "Who's on my team?"
- "Assign this plan to Sarah" (look up Sarah's
user_id, thenupdate_plan)