Skip to main content
Glama
jowpereira
by jowpereira

MCP Gateway – API und Self-Service-Portal

Dieses Repository enthält das MCP Gateway, eine Unternehmenslösung zum sicheren, skalierbaren und überprüfbaren Bereitstellen, Verwalten und Verwenden von Tools (internen APIs) mit RBAC-Authentifizierung und Self-Service-Portal.


Zusammenfassung


Related MCP server: Model Context Provider (MCP) Server

Überblick

Das MCP-Gateway besteht aus:

  • Backend: FastAPI + RBAC + JWT + JSON-Persistenz (NoSQL-fähig)

  • Frontend: React (Vite) läuft integriert mit dem Backend (eingebaut in /frontend/dist dient als statisch)


Ordnerstruktur

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
└── ...

Wie man spinnt (Entwicklung)

1. Backend (FastAPI)

python -m venv venv
.\venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload

2. Frontend (Reagieren)

cd frontend
npm install
npm run dev

Gehen Sie zu: http://localhost:5173 (dev) oder http://localhost:8000 (prod)

3. Frontend-Build für die Produktion

cd frontend
npm run build

Die Dateien werden in frontend/dist generiert. FastAPI kann diese Dateien automatisch bereitstellen.


Merkmale

  • JWT-Anmeldung (Benutzer, Gruppenadministrator, globaler Administrator)

  • Gruppen-, Benutzer- und Toolverwaltung (CRUD)

  • Dynamische Erstellung von Tools durch den Gruppenadministrator

  • Sicherer Werkzeugverbrauch über das Portal

  • Healthcheck, Registrierung, automatische Dokumentation (Swagger)

  • Bereit für NoSQL-Datenbankintegration und SSO


Beispiel für eine RBAC-Struktur

Beispiele für Benutzer, Gruppen und Berechtigungen finden Sie data/rbac.json .


Sicherheit

  • JWT, RBAC, Freigaberegistrierung

  • Bereit für CORS, HTTPS, Ratenbegrenzung usw.


API-Dokumentation

Gehen Sie zu /docs für Swagger oder /redoc für Redoc.


Systemanforderungen

Ausführliche funktionale, nicht funktionale und geschäftliche Anforderungen finden Sie in der Datei docs/REQUISITOS.md .


Vollständige Dokumentation

Eine ausführliche Projektdokumentation ist zentral im Ordner docs/ gespeichert:


Gute Praktiken und Beobachtungen

  • Halten Sie Abhängigkeiten auf dem neuesten Stand.

  • Verwenden Sie virtuelle Umgebungen für Python.

  • Erstellen Sie immer das Frontend, bevor Sie es in die Produktion bringen.

  • Sehen Sie sich die Dokumentation für die anderen Module in docs/ an.

  • Tipp: Verwenden Sie Probleme und Pull-Anfragen, um Änderungen vorzuschlagen und einen Verlauf der Entscheidungen zu pflegen.


Dieses Dokument sollte regelmäßig überprüft und aktualisiert werden, um Änderungen im Design zu berücksichtigen.

-
security - not tested
-
license - not tested
-
quality - not tested

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/jowpereira/mcp-server'

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