Enterprise-grade security and management platform for Model Context Protocol (MCP) deployments. Discover, monitor, secure, and manage MCP servers with comprehensive tooling and real-time threat detection.
Aran MCP Sentinel provides comprehensive security, monitoring, and management capabilities for MCP server deployments. The platform enables organizations to discover, document, test, and secure MCP implementations with enterprise-grade tooling and real-time threat detection.
- Automated discovery of MCP endpoints and services
- Comprehensive catalog of available MCP servers and tools
- Version tracking and compatibility management
- Service health monitoring and status reporting
- Swagger-like API documentation for MCP endpoints
- Tool and endpoint specifications with usage examples
- Versioned documentation history
- Code snippets and integration guides
- Comprehensive test suite for MCP implementations
- Automated security scanning and vulnerability assessment
- OWASP MCP Top 10 compliance checking
- Real-time threat detection and risk scoring
- Integration with CI/CD pipelines
- Continuous uptime and performance monitoring
- Response time tracking and alerting
- Service availability metrics
- Historical trend analysis
- Secure configuration templates
- Deployment best practices and guidelines
- Environment validation
- Rollback and recovery procedures
- Language: Go 1.22+
- Web Framework: Gin
- Database: PostgreSQL (via Supabase)
- Authentication: JWT, Authelia, Clerk, Neon Auth
- Logging: Zap
- Configuration: YAML-based configuration
- Testing: Go Test
- Containerization: Docker
- Framework: Next.js 14 (App Router)
- Language: TypeScript 5.0+
- UI Library: React 18
- Styling: Tailwind CSS
- State Management: React Query
- Form Handling: React Hook Form with Zod validation
- UI Components: Radix UI with custom components
- Charts: Recharts
- Icons: Lucide React
- Database: Supabase (PostgreSQL)
- Deployment: Docker, Docker Compose, Kubernetes
- CI/CD: GitHub Actions
- Monitoring: Prometheus, Grafana
- Go 1.22 or later
- Node.js 18 or later
- Docker (optional, for containerized deployment)
- PostgreSQL database (Supabase recommended)
- Clone the repository:
git clone https://github.com/adhit-r/aran-mcp.git
cd aran-mcp- Navigate to the backend directory:
cd backend- Copy the example configuration:
cp configs/config.example.yaml configs/config.yaml-
Update
configs/config.yamlwith your database credentials and settings. -
Install Go dependencies:
go mod download- Run database migrations:
# Migrations are located in backend/migrations/
# Apply them to your PostgreSQL database- Start the backend server:
go run cmd/server/main.goThe API will be available at http://localhost:8080
- Navigate to the frontend directory:
cd frontend- Install dependencies:
npm install- Create a
.env.localfile with your configuration:
NEXT_PUBLIC_API_URL=http://localhost:8080- Start the development server:
npm run devThe frontend will be available at http://localhost:3000
- Build and start all services:
docker-compose up --build- Access the application:
- Frontend: http://localhost:3000
- Backend API: http://localhost:8080
The repository is organized following industry best practices for clarity and maintainability. See ORGANIZATION.md and docs/STRUCTURE.md for detailed structure documentation.
aran-mcp/
├── backend/ # Go backend application
│ ├── cmd/server/ # Main application entry point
│ ├── internal/ # Internal packages
│ │ ├── auth/ # Authentication handlers
│ │ ├── config/ # Configuration management
│ │ ├── database/ # Database models and connection
│ │ ├── discovery/ # MCP server discovery
│ │ ├── mcp/ # MCP protocol implementation
│ │ ├── monitoring/ # Health monitoring
│ │ └── security/ # Security testing
│ ├── configs/ # Configuration files
│ ├── migrations/ # Database migrations
│ └── go.mod # Go module definition
├── frontend/ # Next.js frontend application
│ ├── src/
│ │ ├── app/ # Next.js app router pages
│ │ ├── components/ # React components
│ │ ├── lib/ # Utility libraries
│ │ └── types/ # TypeScript type definitions
│ └── package.json
├── mcp-server/ # Reference MCP server implementation
├── docs/ # Documentation
│ ├── architecture/ # System architecture docs
│ ├── security/ # Security documentation
│ └── specs/ # Technical specifications
├── scripts/ # Utility scripts
├── monitoring/ # Prometheus and Grafana configs
└── docker-compose.yml # Docker Compose configuration
GET /api/v1/mcp/servers- List all MCP serversGET /api/v1/mcp/servers/:id- Get server detailsPOST /api/v1/mcp/servers- Register a new MCP serverPUT /api/v1/mcp/servers/:id- Update server configurationDELETE /api/v1/mcp/servers/:id- Remove a serverGET /api/v1/mcp/servers/:id/status- Get server health status
POST /api/v1/discovery/scan- Scan for MCP serversGET /api/v1/discovery/endpoints- List discovered endpointsPOST /api/v1/discovery/endpoints/:id/scan- Scan specific endpoint
POST /api/v1/security/test- Run security testsGET /api/v1/security/tests/:id- Get test resultsGET /api/v1/security/owasp- OWASP MCP Top 10 compliance
GET /api/v1/monitoring/health/:server_id- Check server healthPOST /api/v1/monitoring/health/check-all- Check all serversGET /api/v1/monitoring/servers- List monitored serversGET /api/v1/monitoring/alerts- Get monitoring alerts
GET /health- Service health status
For comprehensive API documentation, see docs/API_DOCUMENTATION.md.
The backend uses YAML configuration files located in backend/configs/. Copy config.example.yaml to config.yaml and update with your settings:
server:
port: 8080
host: "0.0.0.0"
database:
host: "localhost"
port: 5432
user: "postgres"
password: "password"
name: "aran_mcp"
ssl_mode: "disable"
auth:
jwt_secret: "your-secret-key"
token_expiry: "24h"Create a .env.local file in the frontend directory:
NEXT_PUBLIC_API_URL=http://localhost:8080
NEXTAUTH_SECRET=your-secret-here
NEXTAUTH_URL=http://localhost:3000Aran MCP Sentinel implements comprehensive security measures integrated with the SAFE-MCP threat modeling framework:
- Threat Modeling: Structured threat intelligence using MITRE ATT&CK methodology with 81 documented techniques
- Prompt Injection Detection: Real-time detection of malicious prompt manipulation attempts (SAFE-T1102)
- Tool Poisoning Prevention: Validation of tool metadata and capabilities (SAFE-T1001)
- Privilege Abuse Monitoring: Tracking and alerting on excessive permissions (SAFE-T1104, SAFE-T1309)
- Authentication: Multiple authentication providers (JWT, Authelia, Clerk, Neon Auth)
- Input Validation: Comprehensive input sanitization and validation (SAFE-M-4, SAFE-M-5)
- Secure Communication: TLS/SSL for all communications
- Credential Management: Secure storage and rotation of API keys
- Behavioral Monitoring: Anomaly detection using baseline analysis (SAFE-M-11)
- Mitigation Framework: 47 actionable security controls with effectiveness ratings
Aran integrates the SAFE-MCP framework providing:
- 14 Tactical Categories: Complete MITRE ATT&CK-aligned threat coverage
- Real-time Detection: Pattern matching for known attack techniques
- Risk Assessment: Automated threat scoring and mitigation recommendations
- Compliance Mapping: Links to MITRE ATT&CK for regulatory compliance
See Threat Modeling Documentation for complete details.
The platform addresses the OWASP MCP Top 10 security risks:
- Prompt Injection
- Tool Poisoning
- Privilege Abuse
- Tool Shadowing
- Indirect Prompt Injection
- Sensitive Data Exposure
- Command/SQL Injection
- Rug Pull Attacks
- Denial of Wallet/Service
- Authentication Bypass
For detailed security documentation, see docs/security/SECURITY_ARCHITECTURE.md.
cd backend
go build -o bin/server cmd/server/main.gocd frontend
npm run buildBackend tests:
cd backend
go test ./...Frontend tests:
cd frontend
npm testBackend linting:
cd backend
golangci-lint runFrontend linting:
cd frontend
npm run lintWe welcome contributions from the community. Please see CONTRIBUTING.md for guidelines.
- Fork the repository
- Create a feature branch from
main - Make your changes following our coding standards
- Write tests for new functionality
- Ensure all tests pass
- Submit a pull request
Comprehensive documentation is available in the docs/ directory:
- API Documentation - Complete API reference
- System Architecture - Architecture overview
- Security Architecture - Security design
- Roadmap - Development roadmap
- Testing Guide - Testing documentation
This project is licensed under the MIT License - see the LICENSE file for details.
For issues, questions, or contributions:
- GitHub Issues: https://github.com/adhit-r/aran-mcp/issues
- Documentation: See the
docs/directory
Built on the Model Context Protocol specification. Special thanks to the open source community and contributors.