eventpulse-mcp
v1.0.0
Published
EventPulse MCP Server - Hyper-local event-driven marketing campaigns for small businesses
Maintainers
Readme
EventPulse MCP Server
🎉 Hyper-local event-driven marketing campaigns for small businesses using AI
EventPulse is a Model Context Protocol (MCP) server that generates culturally-aware marketing campaigns for festivals and events. Perfect for small businesses looking to engage their local communities with authentic, multilingual content.
🚀 Features
- 🌍 Multi-language Support: Generate campaigns in Hindi, Gujarati, English, Tamil, Bengali, and Marathi
- 🎭 Cultural Intelligence: Leverages regional insights and cultural nuances
- 🎊 Festival-Specific Content: Optimized for Indian festivals and celebrations
- 🏪 Business-Specific Offers: Tailored promotional content for different business types
- 📱 Social Media Ready: Content optimized for WhatsApp, Instagram, Facebook, and Twitter
- ⚡ Real-time Generation: Fast AI-powered campaign creation
- 🔧 MCP Compatible: Works with any MCP-compatible client (Claude, etc.)
🎊 Supported Festivals
- 🪔 Diwali
- 🌈 Holi
- 🌙 Eid
- 💃 Navratri
- 🎗️ Raksha Bandhan
- 🐘 Ganesh Chaturthi
- 👫 Karva Chauth
- 🎄 Christmas
🏪 Supported Business Types
- 🍬 Sweet Shops
- 👗 Clothing Stores
- 🍽️ Restaurants
- 💎 Jewelry Shops
- 📱 Electronics Stores
- 💄 Beauty Salons
- 🌸 Flower Shops
- 🎁 Gift Shops
📦 Installation
Prerequisites
- Node.js 18+
- npm or yarn
- OpenAI API key (optional - works with mock data for testing)
Setup
Clone the repository
git clone <repository-url> cd eventpulse-mcpInstall dependencies
npm installConfigure environment
cp .env.example .env # Edit .env with your OpenAI API key (optional)Test the installation
npm run test:manual
🔧 Usage
As MCP Server
Start the MCP server
npm run mcpConfigure in your MCP client (e.g., Claude Desktop)
{ "mcpServers": { "eventpulse": { "command": "node", "args": ["path/to/eventpulse-mcp/src/mcp-server.js"], "env": { "OPENAI_API_KEY": "your-key-here" } } } }
As REST API Server
Start the API server
npm startMake requests to the API
curl -X POST http://localhost:3000/v1/generate-campaign \ -H "Content-Type: application/json" \ -d '{ "business_type": "sweet_shop", "event": "diwali", "language": "hindi", "location": "Mumbai", "goal": "increase_sales" }'
🛠️ MCP Tools
generate_festival_campaign
Generate a complete marketing campaign for a festival.
Parameters:
business_type(required): Type of businessevent(required): Festival or event namelanguage(required): Content languagelocation(optional): Business locationgoal(optional): Marketing objectivebudget(optional): Budget level
Example:
{
"business_type": "sweet_shop",
"event": "diwali",
"language": "hindi",
"location": "Mumbai",
"goal": "increase_sales"
}get_festival_insights
Get cultural insights and best practices for festival marketing.
Parameters:
event(required): Festival nameregion(optional): Regional context
📊 API Endpoints
GET /
Health check and server information
POST /v1/generate-campaign
Generate marketing campaign
GET /docs
API documentation
Example Response
{
"campaign_id": "ep_1704123456_abc123def",
"timestamp": "2024-01-01T10:00:00.000Z",
"campaign_content": {
"whatsapp_message": "🪔 दीपावली की शुभकामनाएं! Special Diwali offers at our sweet shop! 🍬✨",
"social_media_posts": [
"🪔✨ Celebrating the Festival of Lights with traditional sweets and joy! Visit us for authentic Diwali treats. #Diwali #TraditionalSweets",
"🎊 Special Diwali collection now available! Don't miss our exclusive festive offers. #DiwaliOffers #SweetTreats"
],
"hashtags": ["#Diwali", "#FestivalOfLights", "#TraditionalSweets", "#Mumbai"],
"promotional_offers": [
"Special Diwali collection: traditional sweets",
"Buy 2 get 1 free on selected items",
"Free gift wrapping with festive packaging"
]
},
"scheduling_suggestions": {
"optimal_time": "10:00 AM",
"campaign_duration": "5-7 days before festival",
"peak_engagement": "morning and evening hours"
}
}🧪 Testing
# Run all tests
npm run test:all
# Test core functionality
npm run test:manual
# Test API server
npm test
# Test MCP functionality
npm run test:mcp🔧 Development
Project Structure
eventpulse-mcp/
├── src/
│ ├── server.js # REST API server
│ ├── mcp-server.js # MCP protocol server
│ ├── campaign-generator.js # Core campaign logic
│ ├── content-enhancer.js # Content enhancement
│ └── utils.js # Utility functions
├── data/
│ ├── festivals.json # Festival data
│ ├── templates.json # Content templates
│ └── regional-hashtags.json # Hashtag data
├── test/
│ ├── test-manual.js # Manual functionality tests
│ ├── test-server.js # API server tests
│ └── test-mcp-simple.js # MCP functionality tests
└── package.jsonAdding New Festivals
- Add festival data to
data/festivals.json - Add templates to
data/templates.json - Update validation in
src/utils.js - Add test cases
Adding New Languages
- Add language templates to
data/templates.json - Add cultural context to festival data
- Update validation in
src/utils.js - Test with sample campaigns
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
📄 License
MIT License - see LICENSE file for details
🆘 Support
- 📖 Check the
/docsendpoint for API documentation - 🧪 Run tests to verify functionality
- 📝 Check logs for debugging information
Made with ❤️ for small businesses and festival celebrations
