A comprehensive collection of Model Context Protocol (MCP) servers for AI automation, specifically designed for enterprise use and optimized for the Indonesian market. Built by CampShure for scalable business automation.
- π Calendar Server: Google Calendar integration for scheduling automation
- π Filesystem Server: Secure file management with workspace isolation
- π GitHub Server: Repository management and automation
- π§ Gmail Server: Email automation and management
- π Perplexity Server: AI-powered search and knowledge retrieval
- π¬ Slack Server: Team communication automation
- π€οΈ Weather Server: Weather data and alerts from National Weather Service
- π Full CI/CD Pipeline: Automated testing, building, and deployment
- π³ Docker Containerization: Scalable container-based architecture
- π Security First: User isolation, rate limiting, comprehensive security
- π Monitoring: Health checks, logging, and performance metrics
- π Indonesian Market Ready: Timezone, language, and business optimizations
- Docker & Docker Compose: Container runtime
- Python 3.11+: Programming language
- Git: Version control
- Nginx (optional): Reverse proxy
- Valid API Keys: For external services (Gmail, Slack, GitHub, Perplexity)
git clone https://github.com/classifyingcompany/mcp-servers.git
cd mcp-servers# Create virtual environment
python -m venv venv
source venv/bin/activate # Linux/Mac
# venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txt
# Run status check
python check_status.py
# Start development server
python main.py# Run automated deployment script
./deploy.sh
# Configure environment
cp .env.example .env
nano .env # Edit with your configuration
# Start all services
sudo systemctl start mcp-servers
# Check status
docker-compose ps# Essential Configuration (.env)
ENVIRONMENT=production
SECRET_KEY=your-super-secret-key
API_KEY=your-mcp-api-key
# Indonesian Market Settings
DEFAULT_TIMEZONE=Asia/Jakarta
DEFAULT_LANGUAGE=id
BABEL_LOCALE=id_ID
# API Keys
GMAIL_CLIENT_ID=your-gmail-client-id
GMAIL_CLIENT_SECRET=your-gmail-client-secret
SLACK_BOT_TOKEN=xoxb-your-slack-token
GITHUB_TOKEN=your-github-token
PERPLEXITY_API_KEY=your-perplexity-keyRequired secrets for automated deployment:
PRODUCTION_HOST: your-server.com
PRODUCTION_USER: deploy-user
SSH_PRIVATE_KEY: |
-----BEGIN OPENSSH PRIVATE KEY-----
your-ssh-private-key-here
-----END OPENSSH PRIVATE KEY-----
SSH_PORT: 22
SLACK_WEBHOOK_URL: https://hooks.slack.com/services/...graph TB
A[GitHub Repository] --> B[GitHub Actions CI/CD]
B --> C[Docker Build]
C --> D[Production Server]
D --> E[Docker Compose Stack]
E --> F[MCP Servers Container]
E --> G[Redis Cache]
E --> H[PostgreSQL Database]
E --> I[Nginx Reverse Proxy]
E --> J[Monitoring Stack]
F --> K[Calendar Server]
F --> L[Gmail Server]
F --> M[Slack Server]
F --> N[GitHub Server]
F --> O[Filesystem Server]
F --> P[Perplexity Server]
F --> Q[Weather Server]
- Code Push: Developer pushes to main branch
- Testing: Automated pytest, linting, security scans
- Building: Docker image creation with optimization
- Deployment: SSH deployment to production server
- Health Checks: Verify all services are healthy
- Notifications: Slack notification of deployment status
# Deploy via GitHub Actions
gh workflow run deploy.yml
# Or deploy locally
docker-compose up -d --build
# Check deployment status
./health_check.sh# Overall health check
python check_status.py
# Service status
sudo systemctl status mcp-servers
# Container logs
docker-compose logs -f mcp-servers
# Individual server health
curl http://localhost:8000/health- Grafana Dashboard:
http://your-server:3000 - Prometheus Metrics:
http://your-server:9090 - Log Analysis:
/opt/mcp-servers/logs/
# Manual backup
/usr/local/bin/backup-mcp-servers
# Automated daily backups (configured via cron)
# View backup status
ls -la /var/backups/mcp-servers/# All tests
python -m pytest tests/ -v
# Specific server tests
python -m pytest tests/test_all_servers.py::TestWeatherServer -v
# Coverage report
python -m pytest tests/ --cov=. --cov-report=html# Test Indonesian-specific features
python -m pytest tests/test_all_servers.py::TestIndonesianMarketFeatures -v# Get Indonesian weather alerts
await get_alerts("ID") # Indonesia weather alerts
# Jakarta weather forecast
await get_forecast(-6.2088, 106.8456) # Jakarta coordinates# Create meeting in Jakarta timezone
await create_event(
title="Team Standup",
start_datetime="2024-01-15T09:00:00+07:00", # WIB timezone
end_datetime="2024-01-15T09:30:00+07:00"
)# Indonesian market research
await research_indonesian_market(
topic="fintech Indonesia 2024",
focus_areas=["regulations", "digital banking", "investment"]
)
# Competitor analysis
await analyze_competitors(
company_or_industry="ride-sharing Indonesia",
include_financials=True
)- Create server file:
your_server.py - Follow MCP pattern:
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("your-server")
@mcp.tool()
async def your_function(param: str) -> str:
"""Your function description."""
return "result"
def main():
mcp.run(transport='stdio')- Update configuration: Add to
main.pyandcheck_status.py - Add tests: Create tests in
tests/ - Update documentation
- Timezone: Default to
Asia/Jakarta - Language: Support Indonesian (
id) and English (en) - Business Hours: 09:00-17:00 WIB
- Local Holidays: Indonesian national and religious holidays
- Currency: IDR support in financial calculations
mcp-servers/
βββ .github/
β βββ workflows/ # CI/CD pipeline
β βββ ISSUE_TEMPLATE/ # Issue templates
β βββ PULL_REQUEST_TEMPLATE.md
βββ tests/ # Test suite
βββ monitoring/ # Prometheus & Grafana configs
βββ logs/ # Application logs
βββ user-workspaces/ # User file isolation
βββ ssl/ # SSL certificates
β
βββ calendar_server.py # π
Google Calendar integration
βββ filesystem_server.py # π File management
βββ github_server.py # π GitHub automation
βββ gmail_server.py # π§ Email automation
βββ perplexity_server.py # π AI search
βββ slack_server.py # π¬ Team communication
βββ weather_server.py # π€οΈ Weather data
β
βββ main.py # Main application entry
βββ check_status.py # Health monitoring
βββ requirements.txt # Dependencies
βββ Dockerfile # Container definition
βββ docker-compose.yml # Multi-service setup
βββ nginx.conf # Reverse proxy
βββ deploy.sh # Deployment script
βββ .env.example # Environment template
βββ README.md # This documentation
- Fork the repository
- Create feature branch:
git checkout -b feature/amazing-feature - Follow Indonesian coding standards and documentation
- Add tests for new functionality
- Commit changes:
git commit -m 'Add amazing Indonesian feature' - Push to branch:
git push origin feature/amazing-feature - Open Pull Request with detailed description
- Python: Follow PEP 8 with Indonesian comments where helpful
- Documentation: English primary, Indonesian examples
- Testing: Comprehensive test coverage required
- Security: Security-first approach for enterprise use
This MCP servers collection is specifically optimized for Indonesian businesses:
- π’ Enterprise Ready: Tested with Indonesian corporations
- π Local Integration: Support for Indonesian banking, payment systems
- π± Mobile Optimized: Mobile-first approach for Indonesian users
- π Compliance: Aligned with Indonesian data protection regulations
- π° Cost Effective: Optimized for Indonesian cloud infrastructure costs
This project is licensed under the MIT License - see the LICENSE file for details.
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π§ Email: contact@campshure.com
- π Website: CampShure.com
- FastMCP: Excellent MCP framework
- National Weather Service: Reliable weather data
- Indonesian Developer Community: Feedback and contributions
- CampShure Team: Indonesian AI automation platform
Built with β€οΈ for Indonesian businesses by the CampShure team
Democratizing AI automation for Indonesian enterprises