Skip to main content
Glama

buddypress_list_members

Retrieve BuddyPress community members with search, filtering by user IDs, member types, or exclusions to manage member lists efficiently.

Instructions

List BuddyPress members with optional filters

Input Schema

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

Implementation Reference

  • Handler that executes the buddypress_list_members tool by building query parameters from arguments and calling the BuddyPress members API.
    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}`);
  • Input schema for validating parameters of the buddypress_list_members tool.
    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' }, }, },
  • src/index.ts:130-144 (registration)
    Registration of the buddypress_list_members tool in the tools array used for listTools.
    { 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' }, }, }, },
  • Helper function for authenticated API requests to BuddyPress, used by the tool handler.
    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