MCP Gateway – API и портал самообслуживания
В этом репозитории содержится MCP Gateway — корпоративное решение для предоставления, управления и использования инструментов (внутренних API) безопасным, масштабируемым и проверяемым способом с аутентификацией RBAC и порталом самообслуживания.
Краткое содержание
Related MCP server: Model Context Provider (MCP) Server
Обзор
Шлюз MCP состоит из:
Бэкэнд: FastAPI + RBAC + JWT + сохранение JSON (поддержка NoSQL)
Фронтенд: React (Vite), работающий в связке с бэкендом (встроенный
/frontend/distиспользуется как статический)
Структура папки
mcp-server/
├── app/ # Backend FastAPI
│ ├── main.py # Entrypoint
│ ├── config.py # Configurações
│ ├── auth.py # Autenticação/JWT
│ ├── utils/ # Utilitários (RBAC, dependências)
│ └── groups/
│ ├── routes.py # Rotas (APIs)
│ └── tools.py # Utilitários de permissão
├── data/ # Dados persistentes
│ └── rbac.json # Usuários, grupos, permissões
├── frontend/ # Portal React (Vite)
│ ├── src/ # Código-fonte React
│ └── dist/ # Build de produção (servido pelo FastAPI)
├── requirements.txt # Dependências Python
├── README.md # Este documento
└── ...Как прясть (Разработка)
1. Бэкэнд (FastAPI)
python -m venv venv
.\venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload2. Фронтенд (React)
cd frontend
npm install
npm run devПерейдите по адресу: http://localhost:5173 (dev) или http://localhost:8000 (prod)
3. Сборка фронтенда для производства
cd frontend
npm run buildФайлы будут созданы в frontend/dist . FastAPI может обслуживать эти файлы автоматически.
Функции
Вход JWT (пользователь, администратор группы, глобальный администратор)
Управление группами, пользователями и инструментами (CRUD)
Динамическое создание инструментов администратором группы
Безопасное потребление инструментов через портал
Проверка здоровья, регистрация, автоматическое документирование (Swagger)
Готовность к интеграции с базой данных NoSQL и SSO
Пример структуры RBAC
Примеры пользователей, групп и разрешений см. в data/rbac.json .
Безопасность
JWT, RBAC, общий реестр
Готов к CORS, HTTPS, ограничению скорости и т. д.
API-документация
Перейдите в /docs для Swagger или /redoc для Redoc.
Системные требования
Подробные функциональные, нефункциональные и бизнес-требования см. в файле docs/REQUISITOS.md
Полная документация
Подробная документация проекта централизована в папке docs/ :
docs/REQUISITOS.md: Системные требованияdocs/API.md: Конечные точки и примеры использования APIdocs/ARQUITETURA.md: Техническая архитектураdocs/SEGURANCA.md: Безопасность и передовой опытdocs/GOVERNANCA.md: Управление и ролиdocs/OPERACIONAL.md: Эксплуатация, мониторинг и устранение неполадокdocs/CHANGELOG.md: История версий
Хорошие практики и наблюдения
Поддерживайте зависимости в актуальном состоянии.
Используйте виртуальные среды для Python.
Всегда создавайте интерфейс перед развертыванием в рабочей среде.
Проверьте документацию по другим модулям в
docs/.Совет: используйте запросы на внесение изменений и ведите историю решений.
Данный документ следует периодически пересматривать и обновлять для отражения изменений в конструкции.