Amba

Groups

User-created groups/guilds with configurable visibility, member limits, and roles.

Groups let users form communities within your app. They support public/private visibility, configurable member limits, and role-based membership.

SDK usage

Create a group

const group = await client.groups.create({
  name: 'Fitness Warriors',
  description: 'A group for fitness enthusiasts',
  is_public: true,
  max_members: 50,
});

Search public groups

const groups = await client.groups.search({ q: 'fitness', limit: 20 });

Join/leave a group

await client.groups.join('group_xxx');
await client.groups.leave('group_xxx');

Get my groups

const myGroups = await client.groups.getMine();
// Returns: [{ role: "owner", groups: { name: "Fitness Warriors", ... } }]

List group members

const members = await client.groups.getMembers('group_xxx');

Client API reference

MethodPathDescription
POST/client/groupsCreate a group
GET/client/groups/mineList user's groups
GET/client/groups/searchSearch public groups
POST/client/groups/:id/joinJoin a group
POST/client/groups/:id/leaveLeave a group
GET/client/groups/:id/membersList group members

MCP tools

ToolDescription
amba_create_groupCreate a group with name, visibility, and max members
amba_list_groupsList all groups in a project

Example

Agent: "Create a VIP group for premium users"

amba_create_group({
  project_id: "proj_xxx",
  name: "VIP Lounge",
  owner_id: "admin_user_xxx",
  description: "Exclusive group for premium members",
  is_public: false,
  max_members: 500
})

Database tables

TablePurpose
groupsGroup definitions with name, visibility, metadata
group_membersMembership records with user ID, group ID, and role

On this page