Skip to main content
Glama

buddypress_favorite_activity

Mark activity items as favorites or remove them from favorites to highlight important community content and personalize user feeds in BuddyPress sites.

Instructions

Favorite or unfavorite an activity item

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesActivity ID

Implementation Reference

  • Handler that toggles favorite status of an activity item by sending a PUT request to the BuddyPress /activity/{id}/favorite endpoint.
    else if (name === 'buddypress_favorite_activity') { result = await buddypressRequest(`/activity/${args.id}/favorite`, 'PUT'); }
  • src/index.ts:117-127 (registration)
    Tool registration in the tools array, defining name, description, and input schema (requires activity ID).
    { name: 'buddypress_favorite_activity', description: 'Favorite or unfavorite an activity item', inputSchema: { type: 'object', properties: { id: { type: 'number', description: 'Activity ID', required: true }, }, required: ['id'], }, },
  • Input schema validation for the tool, requiring a numeric activity ID.
    inputSchema: { type: 'object', properties: { id: { type: 'number', description: 'Activity ID', required: true }, }, required: ['id'], },
  • Shared helper function used by all BuddyPress tools to make authenticated API requests.
    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