MCP-Server-Claude-Gemini-OpenAI

Chris443C/MCP-Server-Claude-Gemini-OpenAI

3.1

If you are the rightful owner of MCP-Server-Claude-Gemini-OpenAI and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A secure Model Control Platform (MCP) server that provides controlled access to Claude, Gemini, and ChatGPT APIs with comprehensive data loss prevention (DLP) and file upload blocking capabilities.

Secure MCP Server - Claude, Gemini, ChatGPT

A secure Model Control Platform (MCP) server that provides controlled access to Claude, Gemini, and ChatGPT APIs with comprehensive data loss prevention (DLP) and file upload blocking capabilities.

🛡️ Security Features

  • File Upload Blocking: Prevents any file uploads to external services
  • DLP Scanning: Real-time content analysis for sensitive data
  • Network Isolation: Controlled egress with firewall rules
  • Authentication: JWT-based user authentication
  • Audit Logging: Comprehensive request/response logging
  • Rate Limiting: Prevents abuse and resource exhaustion

🏗️ Architecture

[Web Interface] → [FastAPI Gateway] → [DLP Scanner] → [AI Model APIs]
                      ↓
                [Audit Logger]
                      ↓
                [Redis Cache]

🚀 Quick Start

Prerequisites

  • Python 3.9+
  • Node.js 18+ (for frontend)
  • Redis (for caching and sessions)
  • ClamAV (for malware scanning)

Installation

  1. Clone and setup backend:
git clone <repository>
cd MCP-Server-Claude-Gemini-OpenAI
pip install -r requirements.txt
  1. Setup frontend:
cd frontend
npm install
npm run build
  1. Configure environment:
cp .env.example .env
# Edit .env with your API keys and settings
  1. Run the server:
python main.py

🔧 Configuration

Environment Variables

Create a .env file with:

# API Keys
OPENAI_API_KEY=your_openai_key
ANTHROPIC_API_KEY=your_anthropic_key
GOOGLE_API_KEY=your_google_key

# Security
SECRET_KEY=your_secret_key
JWT_ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=30

# Redis
REDIS_URL=redis://localhost:6379

# DLP Settings
MAX_CONTENT_LENGTH=1048576
BLOCKED_DOMAINS=dropbox.com,drive.google.com,onedrive.live.com

# Monitoring
PROMETHEUS_PORT=9090
LOG_LEVEL=INFO

🎯 Usage

  1. Access the web interface: http://localhost:8000
  2. Authenticate with your credentials
  3. Select a model (Claude, Gemini, or ChatGPT)
  4. Enter your prompt (file uploads are automatically blocked)
  5. View responses with full audit trail

🔒 Security Measures

File Upload Prevention

  • Content-type validation
  • File signature detection
  • Size limits enforcement
  • Malware scanning with ClamAV

Network Controls

  • Egress firewall rules
  • Proxy-based DLP
  • Domain blocking
  • Rate limiting

Data Protection

  • Input sanitization
  • Output filtering
  • Audit logging
  • Session management

📊 Monitoring

  • Prometheus metrics at /metrics
  • Health checks at /health
  • Audit logs in structured format
  • Real-time alerts for security events

🚨 Security Alerts

The system monitors for:

  • File upload attempts
  • Large data transfers
  • Unusual API usage patterns
  • Authentication failures
  • DLP violations

📝 API Documentation

Once running, visit:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Submit a pull request

📄 License

MIT License - see LICENSE file for details

🆘 Support

For security issues, please contact the security team directly. For general support, create an issue in the repository.