KSU ESS MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@KSU ESS MCP ServerWhat are the education records for student 660112345?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
KSU ESS API Server & MCP Server
ระบบ middleware สำหรับเชื่อมต่อกับ KSU ESS (Education Support System) SOAP Web Service ของมหาวิทยาลัยกาฬสินธุ์ ประกอบด้วย:
REST API Server - สำหรับระบบสารสนเทศทางการศึกษา (Web/Mobile)
MCP Server - สำหรับ AI Agents (Claude Desktop, Gemini, etc.)
📋 บริการที่ให้
บริการ | คำอธิบาย |
ข้อมูลพื้นฐานนักศึกษา | ชื่อ-สกุล, คณะ, สาขา, หลักสูตร, อ.ที่ปรึกษา |
สถานะนักศึกษา | กำลังศึกษา, พ้นสภาพ, สำเร็จการศึกษา |
โครงสร้างหลักสูตร | ชื่อหลักสูตร, ค้นหาหลักสูตร |
โครงสร้างรายวิชา | หมวดวิชา, กลุ่มวิชา, รายวิชา (tree structure) |
แผนการเรียน | รายวิชาทั้งหมด / รายเทอม |
วิชายกเว้น | วิชาที่ได้รับการยกเว้น |
ผลการเรียน | เกรด, GPA, GPS, หน่วยกิต (transcript) |
ผลการลงทะเบียน | ตารางเรียน, สถานที่, อาจารย์ผู้สอน |
Related MCP server: Digital Twin MCP Server
🚀 การติดตั้ง
1. ติดตั้ง Dependencies
npm install2. ตั้งค่า Environment Variables
cp .env.example .envแก้ไขไฟล์ .env:
ESS_USERNAME=your_ess_username
ESS_PASSWORD=your_ess_password
API_PORT=3000
API_KEY=your_api_key # เว้นว่างไว้สำหรับ development mode3. รัน API Server
# Development (hot reload)
npm run dev:api
# Production
npm run build
npm run start:apiServer จะเริ่มทำงานที่ http://localhost:3000
4. รัน MCP Server
# Development
npm run dev:mcp
# Production
npm run build
npm run start:mcp📖 API Documentation
เมื่อรัน API Server แล้ว เข้าดูเอกสาร API ได้ที่:
Swagger UI: http://localhost:3000/api/docs
OpenAPI JSON: http://localhost:3000/api/docs.json
🔗 API Endpoints
System
Method | Endpoint | คำอธิบาย |
|
| Health check |
Students
Method | Endpoint | คำอธิบาย |
|
| ข้อมูลพื้นฐาน |
|
| สถานะนักศึกษา |
Curriculum
Method | Endpoint | คำอธิบาย |
|
| หลักสูตรของนักศึกษา |
|
| ค้นหาหลักสูตร |
|
| โครงสร้างรายวิชา |
Education Plan
Method | Endpoint | คำอธิบาย |
|
| แผนการเรียนทั้งหมด |
|
| แผนรายเทอม |
|
| วิชายกเว้น |
Education Records
Method | Endpoint | คำอธิบาย |
|
| ผลการเรียนทั้งหมด |
|
| ผลการเรียนรายเทอม |
Registration
Method | Endpoint | คำอธิบาย |
|
| การลงทะเบียนทั้งหมด |
|
| การลงทะเบียนรายเทอม |
🤖 MCP Server Configuration
สำหรับ Claude Desktop
เพิ่มใน claude_desktop_config.json:
{
"mcpServers": {
"ksu-ess": {
"command": "node",
"args": ["d:/devSpace/API/dist/mcp/server.js"],
"env": {
"ESS_USERNAME": "your_username",
"ESS_PASSWORD": "your_password"
}
}
}
}MCP Tools ที่ให้บริการ (12 tools)
Tool | คำอธิบาย |
| ดึงข้อมูลพื้นฐานนักศึกษา |
| ดึงสถานะนักศึกษา |
| ดึงหลักสูตรของนักศึกษา |
| ค้นหาหลักสูตร |
| ดึงโครงสร้างรายวิชา |
| ดึงแผนการเรียนทั้งหมด |
| ดึงแผนการเรียนรายเทอม |
| ดึงวิชายกเว้น |
| ดึงผลการเรียนทั้งหมด |
| ดึงผลการเรียนรายเทอม |
| ดึงผลการลงทะเบียนทั้งหมด |
| ดึงผลการลงทะเบียนรายเทอม |
🔒 Authentication
API Server
ใช้ API Key ผ่าน header
X-API-Keyถ้าไม่ตั้ง
API_KEYใน.envจะเปิดให้ใช้ได้อิสระ (development mode)
ESS Web Service
ใช้ Rijndael-256 (CBC, PKCS7) encryption สำหรับรหัสผ่าน
Key ได้จาก
GetEncryptKey()ใช้ได้ตลอดจนกว่าจะเปลี่ยน
📁 โครงสร้างโปรเจกต์
src/
├── core/ # Shared Core (ใช้ร่วมกันทั้ง API & MCP)
│ ├── types.ts # TypeScript interfaces
│ ├── crypto.ts # Rijndael-256 encryption
│ ├── ess-client.ts # SOAP Client wrapper
│ └── errors.ts # Custom error classes
├── api/ # REST API Server
│ ├── server.ts # Express.js entry point
│ ├── middleware/
│ │ ├── auth.ts # API Key authentication
│ │ ├── error-handler.ts
│ │ └── rate-limiter.ts
│ └── routes/
│ ├── health.ts
│ ├── students.ts
│ ├── curriculum.ts
│ ├── education-plan.ts
│ ├── education-records.ts
│ └── registration.ts
└── mcp/ # MCP Server
├── server.ts # MCP entry point
└── tools/
├── student-tools.ts
├── curriculum-tools.ts
├── education-tools.ts
└── registration-tools.ts🛠 Technology Stack
Runtime: Node.js + TypeScript
API Framework: Express.js
SOAP Client: soap (npm)
Encryption: rijndael-js (Rijndael-256 CBC PKCS7)
MCP SDK: @modelcontextprotocol/sdk
Validation: Zod
API Docs: Swagger (swagger-jsdoc + swagger-ui-express)
📝 License
MIT
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.
Latest Blog Posts
- 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/worapotso/KSU_ESS_API-MCP_server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server