Students Architecture MCP Server
Students Architecture
Beispielprojekt, das eine REST-API und eine MCP-Schnittstelle zur Verwaltung von Studenten implementiert.
Autor: MsC Felipe Buitrago Carmona
Zugehörigkeit: Abteilung für Systeme und Informatik, Fakultät für Künstliche Intelligenz und Ingenieurwesen, Universität von Caldas
Beschreibung:
Schichtenarchitektur:
presentation(REST + MCP),business(Service),data(Repositories),models(DTOs und Entitäten).Unterstützt Persistenz in JSON und SQLite sowie dynamische Auswahl über
.env.
Anforderungen
Python 3.12+ (virtuelle Umgebung empfohlen)
Abhängigkeiten aufgeführt in
requirements.txt.
Schnellinstallation
Erstellen und aktivieren Sie ein virtualenv:
python -m venv venv
& venv\Scripts\Activate.ps1Abhängigkeiten installieren:
pip install -r requirements.txtKonfiguration (.env)
Kopieren oder erstellen Sie eine
.env-Datei im Stammverzeichnis mit Werten wie:
FASTMCP_STATELESS_HTTP=true
REPO_TYPE=json # o sqlite
JSON_PATH=students.json
SQLITE_PATH=students.db
API_PORT=5000
MCP_PORT=9000Das Ändern von REPO_TYPE zwischen json und sqlite wählt die Persistenzimplementierung aus.
Hinweis: Starten Sie den Server nach dem Ändern der .env-Datei neu, damit die Repository-Factory sie einliest.
REST-API ausführen (Entwicklung)
venv\Scripts\python.exe -m uvicorn main_api_rest_server:app --reload --port 5000MCP-Server ausführen
venv\Scripts\python.exe main_mcp_server.pyHauptrouten (REST)
GET /students— Studenten auflistenPOST /students— Student erstellenGET /students/{id}— Student abrufenPUT /students/{id}— aktualisierenDELETE /students/{id}— löschen
curl-Beispiel zum Erstellen eines Studenten:
curl -X POST http://localhost:5000/students -H "Content-Type: application/json" -d '{"name":"Ana","email":"ana@example.com","age":21,"career":"Ingenieria","semester":4}'Nützliche Hinweise
Wenn Sie einen Debugger (z. B. PyCharm) verwenden und einen
TypeErrorim Zusammenhang mitloop_factorysehen, enthält der Startvorgang eine Kompatibilität fürasyncio.runinmain_api_rest_server.py.Pydantic zeigt eine Warnung an, wenn Sie
orm_modemit v2 verwenden; es wird empfohlen, bei der Migration auf Pydantic v2from_attributeszu verwenden.
Claude Desktop Konfiguration
Installieren Sie Claude Desktop, gehen Sie dann unten links zum Benutzernamen, dann zum Bereich Einstellungen, dann zum Bereich Entwickler, Konfiguration bearbeiten und fügen Sie das folgende JSON ein.
{
"mcpServers": {
"students_architecture": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"http://localhost:9000/mcp",
"--allow-http"
],
"env": {
"MCP_TRANSPORT_STRATEGY": "http-only"
}
}
},
"preferences": {
"coworkScheduledTasksEnabled": false,
"sidebarMode": "chat",
"coworkWebSearchEnabled": true,
"ccdScheduledTasksEnabled": false
}
}Kontakt MsC Felipe Buitrago Carmona felipe.buitrago@ucaldas.edu.co Abteilung für Systeme und Informatik Universität von Caldas
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/CesarRL23/MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server