Provides the foundation for the MCP Gateway, transforming FastAPI endpoints into MCP tools that allow LLMs to interact with corporate APIs in a controlled manner.
Supports project version control and distribution through Git repository cloning.
Hosts the FastAPI-MCP framework that this gateway is based on, allowing contribution and access to the core functionality.
Serves as the runtime environment for the MCP Gateway, with version 3.8+ required for operation.
MCP Gateway – API & Self-Service Portal
This repository contains the MCP Gateway, an enterprise solution to expose, manage and consume tools (internal APIs) in a secure, scalable and auditable way, with RBAC authentication and self-service portal.
Summary
Related MCP server: Model Context Provider (MCP) Server
Overview
The MCP Gateway consists of:
Backend: FastAPI + RBAC + JWT + JSON persistence (NoSQL ready)
Frontend: React (Vite) running integrated with the backend (build in
/frontend/distserved as static)
Folder Structure
How to Spin (Development)
1. Backend (FastAPI)
2. Frontend (React)
Go to: http://localhost:5173 (dev) or http://localhost:8000 (prod)
3. Frontend Build for Production
The files will be generated in frontend/dist . FastAPI can serve these files automatically.
Features
JWT Login (user, group admin, global admin)
Group, User, and Tool Management (CRUD)
Dynamic creation of tools by group admin
Safe consumption of tools via portal
Healthcheck, registration, automatic documentation (Swagger)
Ready for NoSQL database integration and SSO
RBAC Structure Example
See data/rbac.json for example users, groups, and permissions.
Security
JWT, RBAC, share registry
Ready for CORS, HTTPS, rate limiting, etc.
API Documentation
Go to /docs for Swagger or /redoc for Redoc.
System Requirements
See the docs/REQUISITOS.md file for detailed functional, non-functional, and business requirements.
Complete Documentation
Detailed project documentation is centralized in the docs/ folder:
docs/REQUISITOS.md: System requirementsdocs/API.md: Endpoints and API usage examplesdocs/ARQUITETURA.md: Technical architecturedocs/SEGURANCA.md: Security and best practicesdocs/GOVERNANCA.md: Governance and rolesdocs/OPERACIONAL.md: Operation, monitoring and troubleshootingdocs/CHANGELOG.md: Version history
Good Practices and Observations
Keep dependencies up to date.
Use virtual environments for Python.
Always build the frontend before deploying to production.
See the documentation for the other modules in
docs/.Tip: Use issues and pull requests to propose changes and maintain a history of decisions.
This document should be reviewed and updated periodically to reflect changes in the design.