Students Architecture MCP Server
Архитектура студентов
Пример проекта, реализующего REST API и интерфейс MCP для управления студентами.
Автор: Магистр Фелипе Буйтраго Кармона
Аффилиация: Департамент систем и информатики, Факультет искусственного интеллекта и инженерии, Университет Кальдас
Описание:
Многоуровневая архитектура:
presentation(REST + MCP),business(сервис),data(репозитории),models(DTO и сущности).Поддержка сохранения данных в JSON и SQLite с динамическим выбором через
.env.
Требования
Python 3.12+ (рекомендуется виртуальное окружение)
Зависимости, перечисленные в
requirements.txt.
Быстрая установка
Создать и активировать виртуальное окружение:
python -m venv venv
& venv\Scripts\Activate.ps1Установить зависимости:
pip install -r requirements.txtКонфигурация (.env)
Скопировать или создать файл
.envв корневой директории со следующими значениями:
FASTMCP_STATELESS_HTTP=true
REPO_TYPE=json # o sqlite
JSON_PATH=students.json
SQLITE_PATH=students.db
API_PORT=5000
MCP_PORT=9000Изменение REPO_TYPE между json и sqlite выбирает реализацию сохранения данных.
Примечание: после изменения .env перезапустите сервер, чтобы фабрика репозиториев применила настройки.
Запуск REST API (разработка)
venv\Scripts\python.exe -m uvicorn main_api_rest_server:app --reload --port 5000Запуск сервера MCP
venv\Scripts\python.exe main_mcp_server.pyОсновные маршруты (REST)
GET /students— список студентовPOST /students— создать студентаGET /students/{id}— получить студентаPUT /students/{id}— обновитьDELETE /students/{id}— удалить
Пример curl для создания студента:
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}'Полезные заметки
Если вы используете отладчик (например, PyCharm) и видите
TypeError, связанный сloop_factory, запуск содержит совместимость дляasyncio.runвmain_api_rest_server.py.Pydantic выдает предупреждение при использовании
orm_modeв версии v2; рекомендуется использоватьfrom_attributesпри миграции на Pydantic v2.
Конфигурация Claude Desktop
Установите Claude Desktop, затем перейдите в левый нижний угол, где отображается имя пользователя, затем в раздел Настройки, далее в раздел Разработчик, Редактировать конфигурацию и вставьте следующий JSON.
{
"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
}
}Контакты Магистр Фелипе Буйтраго Кармона felipe.buitrago@ucaldas.edu.co Департамент систем и информатики Университет Кальдас
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