Skip to main content
Glama
aakarsh1227

MCP Enterprise Gateway

by aakarsh1227

MCP Enterprise Gateway

A production-grade MCP (Model Context Protocol) proxy server with enterprise security features including JWT authentication, SQL AST guardrails, Kafka audit logging, and rate limiting.

Architecture

┌─────────────────┐     ┌──────────────────────────────────────────────────────┐
│  Cursor IDE /   │────▶│              MCP Enterprise Gateway                 │
│  Claude Desktop │     │  ┌─────────────┐  ┌─────────────┐  ┌──────────┐  │
│  n8n Workflow   │     │  │ JWT Auth    │  │ Rate Limit   │  │ SQL AST   │  │
└─────────────────┘     │  │ Middleware  │─▶│ (Redis)      │─▶│ Guardrails│  │
                        │  └─────────────┘  └─────────────┘  └──────────┘  │
                        │         │                                   │       │
                        │         ▼                                   ▼       │
                        │  ┌─────────────┐                    ┌──────────┐  │
                        │  │ PostgreSQL  │◀────────────────────│ Kafka    │  │
                        │  │ (Telemetry) │                     │ (Audit)  │  │
                        │  └─────────────┘                    └──────────┘  │
                        └──────────────────────────────────────────────────────┘

Related MCP server: mcp-guardian

Features

Phase 1: Security & Identity

  • JWT Verification - All requests require valid Bearer token

  • Role-Based Access Control - 5 roles: admin, senior_analyst, junior_analyst, hr_admin, readonly

  • Redis Rate Limiting - Sliding window rate limits (100 req/min per user)

Phase 2: SQL AST Guardrails

  • Blocks destructive operations: DROP, DELETE, TRUNCATE, ALTER

  • Enforces table-level access policies

  • Column-level PII redaction

  • Automatic LIMIT injection for SELECT queries

Phase 3: Observability

  • /healthz - Basic liveness check

  • /readyz - Full dependency check (PostgreSQL + Kafka)

  • Kafka audit events for all query attempts

Quick Start

# Start all services
docker-compose up --build -d

# Verify health
curl http://localhost:3000/healthz
curl http://localhost:3000/readyz

# Get SSE connection (requires JWT)
curl -N http://localhost:3000/sse \
  -H "Authorization: Bearer <YOUR_JWT_TOKEN>"

# Send tool call
curl -X POST "http://localhost:3000/message?sessionId=<SESSION_ID>" \
  -H "Authorization: Bearer <YOUR_JWT_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "query_enterprise_db",
      "arguments": {
        "sql": "SELECT * FROM users LIMIT 10;",
        "userRole": "admin"
      }
    }
  }'

Environment Variables

Variable

Default

Description

PORT

3000

HTTP server port

DATABASE_URL

postgres://...

PostgreSQL connection string

KAFKA_BROKER

kafka:29092

Kafka broker address

JWT_SECRET

(required)

JWT signing secret

REDIS_URL

redis://localhost:6379

Redis for rate limiting

Table Access Policies

Table

Allowed Roles

Blocked Columns

salary_records

admin, hr_admin

ssn, credit_card_no, bank_account_no

user_passwords

admin

password_hash, salt

pii_data

admin, hr_admin

credit_card_no, tax_id, passport_no

audit_logs

all

-

users

all

password

Client Integrations

Cursor IDE

# Copy config
cp integrations/.cursor/mcp.json ~/.cursor/mcp.json

Claude Desktop

Edit ~/.claude_desktop_config.json:

{
  "mcpServers": {
    "enterprise-gateway": {
      "transport": "sse",
      "url": "http://localhost:3000/sse"
    }
  }
}

n8n Workflow

Import integrations/n8n/mcp-trigger.json and set MCP_GATEWAY_TOKEN environment variable.

Generate JWT Token

const jwt = require('jsonwebtoken');
const token = jwt.sign(
  { sub: 'user_123', role: 'admin', email: 'admin@corp.com' },
  'super_secret_enterprise_key_2026',
  { expiresIn: '24h' }
);
console.log(token);

Development

# Local development
npm install
npm run dev

# Run tests
npm test

# Type check
npx tsc --noEmit
F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    An enterprise infrastructure layer for the Model Context Protocol that provides authentication, RBAC, audit logging, and rate limiting for tool calls. It acts as a secure proxy between AI agents and MCP servers to ensure security and compliance in production environments.
    30
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Security, cost, and health governance proxy for MCP infrastructure. Enforces YAML-configurable security policies (blocklists, rate limits, token budgets), tracks real token costs via tiktoken, monitors server health with live JSON-RPC probes. Features OAuth 2.1/OIDC with RBAC, web dashboard, payload normalization, semantic shell AST analysis, mTLS, and a formal STRIDE threat model.
    4
    365
    3
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    MCP server for AI agent security guardrails. Provides input validation, prompt injection detection, PII redaction, output filtering, policy enforcement, rate limiting, and comprehensive audit logging.
    46
    1
    MIT
  • F
    license
    -
    quality
    D
    maintenance
    A production-ready MCP OAuth 2.1 server implementation with analytics and security monitoring, enabling secure authentication for MCP clients like Claude Desktop and Cursor.
    4

View all related MCP servers

Related MCP Connectors

  • An MCP server for Arcjet - the runtime security platform that ships with your AI code.

  • Hosted MCP server for LLM cost estimation, model comparison, and budget-aware routing.

  • Security firewall for AI agents — scans MCP calls for injection, secrets, and risks.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aakarsh1227/Gateway-Project-using-N8N'

If you have feedback or need assistance with the MCP directory API, please join our Discord server