Admissions MCP Hub
Admissions MCP Hub
Ein verwalteter Model Context Protocol-Server, der Kurs-, Kursdurchgang-, Gebühren-, Lead- und Rückruffunktionen über einen einzigen MCP-Vertrag für zwei unabhängige KI-Chat-Apps bereitstellt.
Was das zeigt
Ein MCP-Server, zwei unabhängige Clients (Lernender + Berater) — keine doppelten Integrationen
DB-Zugangsdaten, Auth, Audit, Validierung — alles zentral auf dem Server
Schreibvorgänge erfordern ein Bestätigungs-Gate (prepare → confirm) — ein LLM kann keinen Lead allein erstellen
Jeder Tool-Aufruf wird auditiert (Akteur, Client, Args-Hash, Ergebnis, Latenz)
Eine No-MCP-Vergleichsdemo zeigt, was man ohne MCP verlieren würde

Related MCP server: ComplyOS
Schnellstart
# 1. PostgreSQL
docker compose up -d postgres
# 2. Migrate + seed
uv sync
uv run alembic upgrade head
uv run python scripts/seed_demo.py
# 3. Start services (4 terminals)
uv run uvicorn services.mcp_server.app:asgi_app --port 8010
uv run uvicorn services.learner_host.api:app --port 8020
uv run uvicorn services.counsellor_host.api:app --port 8030
uv run streamlit run ui/app.py --server.port 8501Öffnen Sie http://localhost:8501 — zwei Chat-Tabs (Lernender + Berater).
No-MCP-Vergleich:
uv run streamlit run ui/no_mcp_demo.py --server.port 8502
Ausprobieren
🎓 Lernassistent
Prompt | Was passiert |
| Listet 4 Kurse auf |
| Termine der Kursdurchgänge + Gebührenangebot + Richtlinien |
| Gibt Richtlinientext zurück |
| ✅/❌ Bestätigungs-Gate vor der Lead-Erstellung |
🎧 Beraterkonsole
Prompt | Was passiert |
| Listet 4 Kurse auf |
| 3 Kursdurchgänge mit Plätzen |
| Angebots-ID + Gesamtsumme (INR) |
| Zeigt zugewiesene Leads |
| ✅/❌ Bestätigungs-Gate |
Siehe RUN_GUIDE.md für vollständige Prompts + erwartete Antworten.
Architektur
Port | Service | Rolle |
5433 | PostgreSQL | Zentrale Datenquelle (Kurse, Kursdurchgänge, Leads, Audit) |
8010 | MCP Server | Tools (11) + Resources (8) + Prompts (2), JWT-Auth, RBAC, Audit |
8020 | Learner Host | LangGraph-App – Lernender-JWT, Bestätigungs-Gate für Schreibvorgänge |
8030 | Counsellor Host | LangGraph-App – Berater-JWT, Lead-Verwaltung |
8501 | Streamlit UI | Zwei Chat-Tabs (MCP-basiert) |
8502 | No-MCP Demo | Gleicher Ablauf, direkter DB-Zugriff – zeigt, wovor MCP schützt |
Stack: Python 3.11 · MCP SDK · LangGraph · FastAPI · SQLAlchemy 2 · PostgreSQL 16 · Pydantic v2 · Ollama (qwen3.5:2b) · Streamlit
Kernkonzepte
Konzept | Wo | Warum es wichtig ist |
Bestätigungs-Gate |
| LLM kann ohne menschliches ✅ keinen Lead erstellen |
Idempotenz |
| Netzwerk-Wiederholungen erzeugen keine Duplikate |
RBAC |
| Lernender kann die Leads anderer Personen nicht sehen |
Audit |
| Jeder Aufruf wird protokolliert: wer, was, Ergebnis, Latenz |
Zustandslosigkeit | Server-generierte IDs ( | Horizontale Skalierung ohne Sitzungen |
Projektstruktur
scai-mcp-admissions/
├── services/
│ ├── mcp_server/ # MCP server (tools, resources, prompts, auth, audit)
│ ├── learner_host/ # LangGraph learner app (port 8020)
│ └── counsellor_host/ # LangGraph counsellor app (port 8030)
├── ui/
│ ├── app.py # Streamlit — 2 chat tabs (MCP)
│ └── no_mcp_demo.py # Streamlit — no-MCP comparison (direct DB)
├── packages/
│ ├── contracts/ # Pydantic tool inputs/outputs + domain models
│ ├── shared/ # Config, LLM adapter, JWT tokens
│ └── observability/ # Structured logging, tracing
├── scripts/
│ ├── seed_demo.py # Seed 4 courses, 4 batches, 4 fee plans, 3 policies
│ ├── issue_dev_token.py # Issue dev JWTs for manual testing
│ └── run_demo_checks.py # Smoke tests against running server
├── tests/ # unit, contract, integration, security, e2e
├── migrations/ # Alembic migrations
├── data/demo_seed/ # Seed data + knowledge_base.json
├── mcp_concept.ipynb # MCP concept notebook (what/why/how/scale/use cases)
├── mcp_flow_diagram.mmd # Mermaid source for architecture diagram
├── mcp_flow_diagram.png # Rendered architecture diagram
├── RUN_GUIDE.md # Step-by-step run guide with test prompts
└── docker-compose.yml # PostgreSQL 16Tests
uv run pytest # all tests
uv run pytest -m unit # just unit tests
uv run pytest -m contract # contract testsReferenzen
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA production-grade, LLM-agnostic MCP server that integrates AI models with tools for managing subscriptions, organizations, and payments via the Updation API. It features Redis-backed conversation memory, structured logging, and role-based access control for secure, scalable orchestration.
- AlicenseNot gradedqualityBmaintenanceAI-native compliance auditing engine for enterprise LMS, enabling querying compliance status, running audits, and validating assignment rules through natural language with MCP clients like Claude or Cursor.Business Source 1.1
- FlicenseNot gradedqualityCmaintenanceAn MCP server that enables AI agents to safely query and act on school data (attendance, fees, student records) with strict role-based access control and a two-step write approval flow.
- FlicenseNot gradedqualityBmaintenanceSingle source of truth and control for agent-operated companies, managing business state with deterministic policy enforcement, seat identity, and hash-chained audit trail.
Related MCP Connectors
Runtime AI governance: decision gates, human approval, hash-chained audit, compliance mapping.
Enterprise AI Control Plane: governance, guardrails, spend tracking, compliance & smart routing.
Odoo ERP for AI agents: hosted OAuth endpoint, gated writes, one endpoint for every instance.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/avivek-dwivedi/custom-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server