mcp-gateway
A plugin-based gateway that orchestrates other MCPs and allows developers to build upon it enterprise-grade agents.
claude mcp add --transport stdio lasso-security-mcp-gateway mcp-gateway --mcp-json-path ~/.cursor/mcp.json -p basic -p lasso
How to use
MCP Gateway acts as a central hub that loads and manages multiple MCP servers described in a single mcp.json configuration. It reads the root mcp.json to discover proxied MCPs, starts and supervises their lifecycles, and provides a unified interface for discovering and interacting with all proxied MCPs. The gateway also intercepts requests and responses to sanitize sensitive information and includes a security scanner to assess server reputation and risks before loading MCPs. You can query metadata about all available proxied MCPs and then invoke capabilities (tools) from those proxies via the gateway using the run_tool capability. Typical usage is to run the gateway with a path to your mcp.json and enable plugins (such as basic masking or tracing) to enforce guardrails across all proxied MCPs.
How to install
Prerequisites:
- Python 3.8+ and pip (recommended)
- Optional: Docker if you prefer containerized deployment
Install (recommended):
pip install mcp-gateway
Basic usage (local install):
mcp-gateway --mcp-json-path ~/.cursor/mcp.json -p basic -p lasso
Using Docker:
docker build -t mcp/gateway .
docker run --rm -i \
-v /path/to/mcp.json:/config/mcp.json:ro \
-e LASSO_API_KEY=<your-key> \
-p 8000:8000 \
mcp/gateway \
--mcp-json-path /config/mcp.json \
-p basic -p lasso
If you prefer to pin a specific version, install with a version tag, for example:
pip install mcp-gateway==<version>
Additional notes
Environment variables and configuration tips:
- LASSO_API_KEY can be provided when running the gateway in Docker to enable secure interactions with LASSO services via the gateway.
- You can pass multiple plugins via -p, for example: -p basic -p presidio to enable token masking and additional security features.
- The gateway reads mcp.json from the path you supply with --mcp-json-path. Ensure the file exists and contains a valid mcpServers section.
- When integrating proxied MCPs (e.g., filesystem, other custom MCPs), you can configure each under the top-level servers key in the mcp.json, including command and arguments specific to that server.
- If you run into permission or path issues on macOS/Linux, ensure the mounted paths and volume mounts in Docker are accessible by the running user.
Related MCP Servers
mcp-for-beginners
This open-source curriculum introduces the fundamentals of Model Context Protocol (MCP) through real-world, cross-language examples in .NET, Java, TypeScript, JavaScript, Rust and Python. Designed for developers, it focuses on practical techniques for building modular, scalable, and secure AI workflows from session setup to service orchestration.
better-chatbot
Just a Better Chatbot. Powered by Agent & MCP & Workflows.
MassGen
🚀 MassGen is an open-source multi-agent scaling system that runs in your terminal, autonomously orchestrating frontier models and agents to collaborate, reason, and produce high-quality results. | Join us on Discord: discord.massgen.ai
multimodal-agents-course
An MCP Multimodal AI Agent with eyes and ears!
mcp-toolbox-sdk-python
Python SDK for interacting with the MCP Toolbox for Databases.
sample-agentic-ai-demos
Collection of examples of how to use Model Context Protocol with AWS.