Skip to main content
Glama

schedule_weekly_posts

Plan and create weekly social media content schedules for art supply stores. Automatically organize posts by date, set posting frequency, and feature specific products to maintain consistent online presence.

Instructions

Create a weekly posting schedule with varied content types. Saves hours of planning time.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
focusProductsNoComma-separated products to feature this week
postsPerDayYesNumber of posts per day (1-3 recommended)
startDateYesWeek start date (YYYY-MM-DD)

Implementation Reference

  • Handler implementation for the schedule_weekly_posts tool. Generates a 7-day social media posting schedule with randomized post types, times, and featured products. Returns formatted schedule text with suggestions for further tool usage.
    case 'schedule_weekly_posts': { const startDate = String(args?.startDate || ''); const postsPerDay = Number(args?.postsPerDay || 1); const focusProducts = String(args?.focusProducts || ''); const products = focusProducts ? focusProducts.split(',').map(p => p.trim()) : ['Acrylic Paint', 'Brushes', 'Canvas']; const postTypes = ['product_feature', 'behind_the_scenes', 'customer_spotlight', 'tip_of_the_day', 'promotion']; const schedule = []; const start = new Date(startDate); for (let day = 0; day < 7; day++) { const currentDate = new Date(start); currentDate.setDate(start.getDate() + day); const dateStr = currentDate.toISOString().split('T')[0]; const dayName = currentDate.toLocaleDateString('en-US', { weekday: 'long' }); for (let post = 0; post < postsPerDay; post++) { const postType = postTypes[Math.floor(Math.random() * postTypes.length)]; const product = products[Math.floor(Math.random() * products.length)]; schedule.push({ date: dateStr, day: dayName, time: post === 0 ? '10:00 AM' : post === 1 ? '2:00 PM' : '6:00 PM', type: postType, suggestion: `${postType.replace('_', ' ').toUpperCase()}: Feature ${product}` }); } } return { content: [{ type: 'text', text: `📅 Weekly Posting Schedule\n📍 Week of ${startDate}\n\n${schedule.map(s => `${s.day}, ${s.date} @ ${s.time}\n ${s.suggestion}` ).join('\n\n')}\n\n💡 Use 'generate_post_ideas' for specific content, then 'post_to_social_media' to publish!` }] }; }
  • Tool schema definition including name, description, and inputSchema for validation. Part of the tools array registered with the MCP server.
    { name: 'schedule_weekly_posts', description: 'Create a weekly posting schedule with varied content types. Saves hours of planning time.', inputSchema: { type: 'object', properties: { startDate: { type: 'string', description: 'Week start date (YYYY-MM-DD)' }, postsPerDay: { type: 'number', description: 'Number of posts per day (1-3 recommended)' }, focusProducts: { type: 'string', description: 'Comma-separated products to feature this week' }, }, required: ['startDate', 'postsPerDay'], }, },
  • src/index.ts:516-518 (registration)
    Registration of all tools including schedule_weekly_posts via the ListToolsRequestSchema handler, which returns the complete tools array containing the tool definition.
    server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools }; });

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/wspotter/mcpart'

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