Enables intelligent event discovery, natural language querying, and AI-powered recommendations for Meetup events, with support for both REST and GraphQL APIs.
MCP Meetup-Claude Integration Server
Overview
This is a production-quality Model Communication Protocol (MCP) server that seamlessly integrates Meetup.com's event discovery APIs with Anthropic's Claude LLM. The server enables intelligent event discovery, natural language querying, and AI-powered recommendations for Meetup events.
Architecture
Core Components
- MCP Protocol Handler (
MeetupClaudeMCPServer
)- Manages client connections and tool definitions
- Handles resource management and server lifecycle
- Provides standardized MCP interface
- Authentication Manager (
AuthenticationManager
)- OAuth2 flow implementation for Meetup.com
- Token lifecycle management and refresh
- Secure credential handling
- Event Discovery Engine (
EventDiscoveryEngine
)- Natural language query parameter extraction
- Dual API support (REST and GraphQL)
- Intelligent event filtering and ranking
- Prompt Augmentation Service (
PromptAugmentationService
)- Context-aware prompt enhancement
- Event data formatting for LLM consumption
- Smart relevance filtering
- Claude Integration (
ClaudeIntegration
)- Anthropic API client management
- Response generation and error handling
- Configurable model parameters
Data Flow
Quick Start
Prerequisites
- Python 3.8+
- Meetup.com account
- Anthropic API account
Installation
API Setup Instructions
1. Meetup.com OAuth Setup
- Visit Meetup OAuth Consumers
- Click "Create New Consumer"
- Fill in application details:
- Application Name: Your app name
- Application Website: Your website or GitHub repo
- Redirect URI:
http://localhost:8080/oauth/callback
- Application Description: Brief description of your use case
- Save the generated:
- Client ID
- Client Secret
2. Anthropic API Setup
- Visit Anthropic Console
- Create account or sign in
- Navigate to API Keys section
- Generate new API key
- Copy the API key securely
3. Environment Configuration
Required environment variables in .env
:
Optional configuration:
MCP Tools
1. search_meetup_events
Search for Meetup events using natural language queries.
Parameters:
query
(string, required): Natural language search querymax_results
(integer, optional): Maximum events to return (default: 20)
Example:
2. augment_prompt_with_events
Enhance a user prompt with relevant event data for context.
Parameters:
prompt
(string, required): User prompt to augment
Example:
3. get_event_recommendations
Get AI-powered event recommendations using Claude with event context.
Parameters:
query
(string, required): Natural language query for recommendationspreferences
(string, optional): Additional preferences or constraints
Example:
4. get_oauth_url
Get Meetup OAuth authorization URL for authentication setup.
Parameters: None
MCP Resources
1. meetup://config
Current server configuration and status information.
2. meetup://auth/status
Authentication status with Meetup.com including token validity.
Natural Language Query Examples
The server intelligently extracts parameters from natural language:
Time-based queries:
- "events today"
- "what's happening tomorrow"
- "events this week"
Location-based queries:
- "events near me"
- "meetups in San Francisco"
- "remote events only"
Topic-based queries:
- "Python programming meetups"
- "data science events"
- "startup networking"
- "AI and machine learning"
Combined queries:
- "Python events near me today"
- "remote data science meetups this week"
- "free networking events in San Francisco"
Error Handling
The server includes comprehensive error handling for:
- Authentication errors: Missing credentials, expired tokens
- API errors: Rate limiting, network failures, invalid queries
- Data processing errors: Malformed events, empty results
Security Considerations
- Environment variable configuration prevents credential exposure
- OAuth2 flow implementation follows security best practices
- No persistent storage of user queries or personal data
- Configurable logging levels to control information exposure
Development
Project Structure
Testing
Basic testing can be done by running the server and using MCP client tools:
Extending the Server
The modular design makes it easy to extend:
- Additional APIs: Add other event platforms in
EventDiscoveryEngine
- Enhanced filtering: Extend
extract_query_parameters
method - Caching: Add Redis or memory caching in
PromptAugmentationService
- Additional tools: Add new MCP tools in
_setup_tools
method
Troubleshooting
Common Issues
- Authentication failures
- Verify client ID and secret are correct
- Check redirect URI matches OAuth consumer settings
- Ensure access token hasn't expired
- No events found
- Try broader search terms
- Check location spelling and format
- Verify time parameters are reasonable
- API rate limiting
- Reduce query frequency
- Implement request caching
- Check API quota usage
- Claude integration errors
- Verify Anthropic API key is valid
- Check API quota and billing status
- Review prompt length and complexity
Debug Mode
Enable debug logging:
Health Checks
Check server status using MCP resources:
Contributing
Development Workflow
- Fork repository
- Create feature branch
- Implement changes with tests
- Update documentation
- Submit pull request
Code Standards
- Follow PEP 8 style guidelines
- Use type hints throughout
- Maintain comprehensive docstrings
- Include unit tests for new features
License
MIT License - see LICENSE file for details.
Support
For issues and questions:
- Check troubleshooting section
- Review configuration and setup
- Create detailed bug report with logs
- Include reproduction steps and environment details
Version: 1.0.0
Last Updated: 2025-07-27
Author: Generated for Dan Shields
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A Model Communication Protocol server that connects Meetup.com's event discovery APIs with Anthropic's Claude LLM, enabling intelligent event discovery and natural language querying for Meetup events.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that allows Claude to query the Untappd beer database API for searching beers and retrieving detailed beer information.Last updated -JavaScript
- -securityFlicense-qualityA Model Context Protocol server that enables Claude users to access specialized OpenAI agents (web search, file search, computer actions) and a multi-agent orchestrator through the MCP protocol.Last updated -9Python
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that enables Claude or other LLMs to fetch content from URLs, supporting HTML, JSON, text, and images with configurable request parameters.Last updated -31PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables AI assistants to manage meeting data, including creating meeting bots, searching transcripts, and organizing calendar events.Last updated -18TypeScriptMIT License