iGuat-MCP
iGuat-MCP
Servicio MCP (Model Context Protocol) de solo lectura para los datos del campus de iGuihang. El proyecto se basa en Python, FastMCP y Streamable HTTP, y expone consultas de horarios, clases y campus como herramientas estándar que los clientes de IA pueden invocar.
Este proyecto solo ofrece capacidades de consulta; no modifica el miniprograma de WeChat ni los datos académicos de origen.
Funcionalidades
Obtener la lista completa de semestres, el semestre actual y el siguiente
Buscar clases por especialidad, grado y palabra clave de clase
Consultar el horario de una clase, semestre y semana específicos
Consultar el horario de una persona específica y eliminar los campos de identidad antes de devolver la respuesta
Inferir el campus según la información de la especialidad
Caché de horarios con TTL integrado, límite de concurrencia y comprobación de estado
Protección de las interfaces MCP y de administración mediante Bearer API Key
Soporte para actualizar en caliente el token de origen a través de la interfaz de administración
Soporte para despliegue con Docker, variables de entorno y Docker Secrets
Related MCP server: gaokao-helper-worker-mcp
Herramientas MCP
Herramienta | Descripción |
| Obtiene la lista completa de semestres, incluidos el actual y el siguiente |
| Obtiene el semestre actual |
| Busca clases según condiciones |
| Obtiene el horario de una clase, semestre y semana específicos |
| Consulta el horario por nombre o número de estudiante; la respuesta elimina los campos de identidad |
| Infiere el campus según la información de la especialidad |
Pila tecnológica
Python 3.11+
MCP / FastMCP
HTTPX
Uvicorn
Pytest
Docker
Inicio rápido
Ejecución local
git clone https://github.com/Strayed2SE/iGuat-MCP.git
cd iGuat-MCP
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[test]"
cp .env.example .env
# 按下方说明配置环境变量后启动
python server.pyEl servicio escucha por defecto en 0.0.0.0:8000:
MCP:
http://127.0.0.1:8000/mcpComprobación de estado:
http://127.0.0.1:8000/healthz
Cabeceras de solicitud del cliente MCP:
Authorization: Bearer <MCP_PUBLIC_API_KEY>Docker
docker build -t iguat-mcp .
docker run --rm -p 8000:8000 --env-file .env iguat-mcpEn producción se recomienda usar la forma NAME_FILE para cargar configuraciones sensibles desde Docker Secrets o archivos de solo lectura:
docker run --rm -p 8000:8000 \
-e IGUAT_USER_TOKEN_FILE=/run/secrets/iguat_token \
-e IGUAT_MAIN_SIGN_KEY_FILE=/run/secrets/main_sign_key \
-e MCP_PUBLIC_API_KEY_FILE=/run/secrets/public_key \
-e MCP_ADMIN_API_KEY_FILE=/run/secrets/admin_key \
--mount type=bind,src=/secure/secrets,dst=/run/secrets,ro \
iguat-mcpConfiguración
Copie .env.example y ajuste según sea necesario:
Variable | Propósito |
| Token de consulta de origen |
| Clave de firma de la interfaz principal |
| Clave de firma de la interfaz de clases |
| Clave de firma de la interfaz CSM |
| Clave de firma de la interfaz de antiguos alumnos |
| Clave de firma de la interfaz del sitio |
| Clave de acceso de los clientes MCP |
| Clave de acceso de la interfaz de administración |
| Dirección y puerto de escucha del servicio |
| Segundos de caché de horarios; ponga |
| Número máximo de concurrencia |
| Límite de consulta de clases por especialidad |
| Si se leen las variables de entorno de proxy y certificados del sistema |
Actualizar el token de origen
Cuando el token de origen caduca, el administrador puede actualizar el token en memoria sin reiniciar el servicio:
curl -X PUT http://127.0.0.1:8000/admin/token \
-H "Authorization: Bearer <MCP_ADMIN_API_KEY>" \
-H "Content-Type: application/json" \
-d '{"token":"<NEW_TOKEN>"}'Pruebas
pip install -e ".[test]"
pytest -qNotas de seguridad
No envíe tokens reales, claves de firma, API Keys ni
.enval repositorio.El servicio no devuelve tokens, firmas ni campos de identidad personal a los clientes MCP.
Por defecto no se leen las variables de entorno de proxy del sistema; solo configure
IGUAT_TRUST_ENV=1si el entorno de despliegue realmente lo requiere.
Proyectos relacionados
Sistema de consulta de la enciclopedia de Guihang: base de conocimiento del campus y sistema de preguntas y respuestas inteligente que integra este servicio MCP.
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
- AlicenseNot gradedqualityDmaintenanceEnables querying academic data such as subjects, degrees, locations, and schedules from Universitat Jaume I via MCP tools.MIT
- FlicenseNot gradedqualityCmaintenanceProvides read-only access to Guangdong gaokao data, enabling searches for schools, scores, and data files via MCP.
- AlicenseNot gradedqualityBmaintenanceProvides MCP tools to read SJTU Canvas data, download course files, and access video/subtitle resources without authentication simulation.MIT
- FlicenseNot gradedqualityCmaintenanceEnables querying student information such as marks, attendance, pending assignments, and timetables from a MySQL database through MCP tools.
Related MCP Connectors
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
XFA's remote MCP server — query device posture, compliance, policies & CVEs. Read-only.
A paid remote MCP for AI SDK data query MCP, built to return verdicts, receipts, usage logs, and aud
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/Strayed2SE/iGuat-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server