Skip to main content
Glama

buddypress_list_members

Retrieve BuddyPress community members with filters for search, member type, user IDs, and pagination to manage and analyze user data.

Instructions

List BuddyPress members with optional filters

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (default: 1)
per_pageNoItems per page (default: 20)
searchNoSearch term
user_idsNoComma-separated user IDs
member_typeNoMember type
excludeNoComma-separated user IDs to exclude

Implementation Reference

  • Executes the buddypress_list_members tool by constructing URLSearchParams from input arguments (page, per_page, search, user_ids as include, member_type, exclude) and calling the buddypressRequest helper with GET to /members endpoint.
    else if (name === 'buddypress_list_members') { const params = new URLSearchParams(); if (args.page) params.append('page', String(args.page)); if (args.per_page) params.append('per_page', String(args.per_page)); if (args.search) params.append('search', String(args.search)); if (args.user_ids) params.append('include', String(args.user_ids)); if (args.member_type) params.append('member_type', String(args.member_type)); if (args.exclude) params.append('exclude', String(args.exclude)); result = await buddypressRequest(`/members?${params}`); }
  • src/index.ts:130-144 (registration)
    Registers the buddypress_list_members tool in the tools array, including name, description, and inputSchema definition used for tool listing and validation.
    { name: 'buddypress_list_members', description: 'List BuddyPress members with optional filters', inputSchema: { type: 'object', properties: { page: { type: 'number', description: 'Page number (default: 1)' }, per_page: { type: 'number', description: 'Items per page (default: 20)' }, search: { type: 'string', description: 'Search term' }, user_ids: { type: 'string', description: 'Comma-separated user IDs' }, member_type: { type: 'string', description: 'Member type' }, exclude: { type: 'string', description: 'Comma-separated user IDs to exclude' }, }, }, },
  • Input schema definition for the buddypress_list_members tool, specifying properties for pagination, search, filtering by user IDs, member type, and exclusion.
    inputSchema: { type: 'object', properties: { page: { type: 'number', description: 'Page number (default: 1)' }, per_page: { type: 'number', description: 'Items per page (default: 20)' }, search: { type: 'string', description: 'Search term' }, user_ids: { type: 'string', description: 'Comma-separated user IDs' }, member_type: { type: 'string', description: 'Member type' }, exclude: { type: 'string', description: 'Comma-separated user IDs to exclude' }, }, },
  • Shared helper function used by all BuddyPress tools, including buddypress_list_members, to make authenticated HTTP requests to the BuddyPress REST API.
    async function buddypressRequest( endpoint: string, method: string = 'GET', body?: any ): Promise<any> { const url = `${BUDDYPRESS_URL}/wp-json/buddypress/v2${endpoint}`; const auth = Buffer.from(`${BUDDYPRESS_USERNAME}:${BUDDYPRESS_PASSWORD}`).toString('base64'); const options: any = { method, headers: { 'Authorization': `Basic ${auth}`, 'Content-Type': 'application/json', }, }; if (body && method !== 'GET') { options.body = JSON.stringify(body); } const response = await fetch(url, options); if (!response.ok) { const errorText = await response.text(); throw new Error(`BuddyPress API Error (${response.status}): ${errorText}`); } return await response.json(); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vapvarun/buddypress-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server