Skip to main content
Glama

入学管理 MCP ハブ

ガバナンス対応の Model Context Protocol サーバーで、単一の MCP コントラクトを通じて、コース、バッチ、料金、リード、コールバックの各機能を 2 つの独立した AI チャットアプリに公開する。


これが示すこと

  • 1 つの MCP サーバー、2 つの独立したクライアント(ラーナー + カウンセラー)— 統合の重複なし

  • DB 資格情報、認証、監査、検証 — すべてサーバー側に一元化

  • 書き込みには確認ゲート(prepare → confirm)が必要 — LLM 単独ではリードを作成できない

  • すべてのツール呼び出しが監査される(アクター、クライアント、引数ハッシュ、結果、レイテンシ)

  • MCP なしの比較デモは、MCP がない場合に何を失うかを示す

アーキテクチャ


Related MCP server: ComplyOS

クイックスタート

# 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

http://localhost:8501 を開く — 2 つのチャットタブ(ラーナー + カウンセラー)。

MCP なしの比較: uv run streamlit run ui/no_mcp_demo.py --server.port 8502


試してみる

🎓 ラーナーアシスタント

プロンプト

動作

What courses do you have?

4 つのコースを一覧表示

Tell me about the agentic AI course

バッチ日程 + 料金見積もり + ポリシー

What is the admissions policy?

ポリシーのテキストを返す

I'd like a callback

リード作成前の ✅/❌ 確認ゲート

🎧 カウンセラーコンソール

プロンプト

動作

What courses are available?

4 つのコースを一覧表示

Show me upcoming batches for agentic AI

定員付きの 3 バッチ

Generate a fee quote for mlops

見積もり ID + 合計(INR)

List my leads

割り当てられたリードを表示

Update stage for SCAI-XXXXXXXX to enrolled

✅/❌ 確認ゲート

完全なプロンプトと期待される回答については RUN_GUIDE.md を参照。


アーキテクチャ

ポート

サービス

役割

5433

PostgreSQL

信頼できる情報源(コース、バッチ、リード、監査)

8010

MCP サーバー

ツール(11)+ リソース(8)+ プロンプト(2)、JWT 認証、RBAC、監査

8020

ラーナーホスト

LangGraph アプリ — ラーナー JWT、書き込み時の確認ゲート

8030

カウンセラーホスト

LangGraph アプリ — カウンセラー JWT、リード管理

8501

Streamlit UI

2 つのチャットタブ(MCP ベース)

8502

MCP なしデモ

同じフロー、DB 直接アクセス — MCP が何を防ぐかを示す

技術スタック: Python 3.11 · MCP SDK · LangGraph · FastAPI · SQLAlchemy 2 · PostgreSQL 16 · Pydantic v2 · Ollama (qwen3.5:2b) · Streamlit


主要コンセプト

コンセプト

場所

なぜ重要か

確認ゲート

leads_prepareleads_confirm_create

人間の ✅ なしでは LLM がリードを作成できない

冪等性

IdempotencyRepository(ペイロードハッシュ)

ネットワーク再試行で重複が発生しない

RBAC

_runner.py 内の ROLE_TOOLS マップ

ラーナーは他人のリードを見られない

監査

ToolAuditEvent テーブル

すべての呼び出しを記録:誰が、何を、結果、レイテンシ

ステートレス性

サーバー発行の ID(quote_idlead_id

セッションレスで水平スケーリングが可能


プロジェクト構造

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 16

テスト

uv run pytest              # all tests
uv run pytest -m unit      # just unit tests
uv run pytest -m contract  # contract tests

参考文献

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • F
    license
    Not graded
    quality
    D
    maintenance
    A 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.
  • A
    license
    Not graded
    quality
    B
    maintenance
    AI-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
  • F
    license
    Not graded
    quality
    C
    maintenance
    An 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.
  • F
    license
    Not graded
    quality
    B
    maintenance
    Single source of truth and control for agent-operated companies, managing business state with deterministic policy enforcement, seat identity, and hash-chained audit trail.

View all related MCP servers

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.

View all MCP Connectors

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/avivek-dwivedi/custom-mcp-server'

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