Token导航 LogoToken导航TokenDH.com
MCP UJI academic logo
运维云端stdio官方级别未说明来源级核验

MCP UJI academic

MCP Server

MCP UJI Academic Server是一个HTTP服务器,通过JSON-RPC 2.0协议提供Jaume I大学的学术数据访问,包括课程、学位、位置和日历信息。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude云端部署Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

AldanJJay

提供方

AldanJJay

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run start_server.py --host 127.0.0.1 --port 8084

详细介绍

MCP UJI 学术服务器

模型上下文协议(MCP)的HTTP服务器,用于公开哈维·伊·大学(UJI)的学术信息。它允许用户通过兼容的MCP客户端和简单的HTTP集成查询课程、学位、位置和官方日历。

✨ 关键特性

  • 🎓 统一访问学术数据(课程、学习、地点和时间表)
  • 🌐 当API提供时,支持多语言(加泰罗尼亚语、西班牙语和英语)
  • ⚡ 缓存到内存中以减少对UJI API的重复调用
  • 🛠 八款即开即用的MCP工具,兼容MCP Inspector
  • 🛡️ Pydantic模型和远程客户端的一致错误处理

🏗️ 建筑学

UJI Academic MCP服务器作为兼容的MCP客户端与Jaume I大学公共API之间的中介,通过JSON-RPC 2.0协议促进对学术数据的访问。

sequenceDiagram
    participant Cliente as Cliente MCP
(Claude Desktop, VS Code, etc.)
    participant Servidor as Servidor MCP
UJI Academic
    participant API as API UJI

    Cliente->>Servidor: Conectar a /mcp (HTTP)
    Servidor-->>Cliente: Confirmación de conexión

    Cliente->>Servidor: Llamada a herramienta
(e.g., get_subjects)
    activate Servidor
    Servidor->>API: Consulta datos académicos
(GET /api/subjects)
    API-->>Servidor: Respuesta JSON con datos
    Servidor-->>Cliente: Resultado de la herramienta
    deactivate Servidor

    Note over Cliente,Servidor: Comunicación vía JSON-RPC 2.0 sobre HTTP
    Note over Servidor,API: Comunicación HTTP con caché en memoria

🚀 快速启动

  1. 安装依赖项: git clone && cd MCP_UJI_academic && uv sync
  2. 启动服务器: uv run start_server.py --host 127.0.0.1 --port 8084
  3. 连接一个MCP客户端: 使用URL http://127.0.0.1:8084/mcp 在你首选的MCP客户端中(参见“🤖 连接MCP客户端”部分)。

对于Docker: docker compose up 并连接到 http://localhost:8084/mcp

🧱 先决条件

  • Python 3.12或更高版本
  • 紫外线 已安装为依赖管理器
  • 访问互联网以查询UJI的公共API
  • (可选)Docker 和 Docker Compose 用于容器化运行

🚀 安装与配置

git clone 
cd MCP_UJI_academic
uv sync

▶️ 服务器执行

注: 在连接任何MCP客户端之前,服务器必须已经运行。保持终端打开或在后台运行。
# Desarrollo local
uv run start_server.py --host 127.0.0.1 --port 8084

# Servidor accesible desde la red
uv run start_server.py --host 0.0.0.0 --port 8084

# Desarrollo con recarga automática
uv run start_server.py --host 127.0.0.1 --port 8084 --reload
start_server.py 他是一名一投即发的投手 mcp_server.py 使用指定的参数。如果你更倾向于直接使用Python,请运行 python start_server.py

🐳 使用 Docker 运行

注: 确保容器正在运行后再连接MCP客户端。服务器将在 http://localhost:8084

手动构建和运行镜像

docker build -t mcp-uji-academic .
docker run --rm -p 8084:8084 mcp-uji-academic

该API将可供使用于 http://localhost:8084你可以使用 Ctrl+C 或者使用 docker stop 如果你在后台运行它。

使用Docker Compose进行编排

# Levantar el servicio
docker compose up

# Levantar en segundo plano
docker compose up -d

# Detener y limpiar
docker compose down

文件 docker-compose.yml 它暴露了8084端口。如果你需要在另一个主机端口上提供服务,请调整映射(例如 - "9090:8084")。

🌐 主要的HTTP端点

方法路径描述
GET(GET请求) /服务器基本信息
GET(GET方法) /health快速状态检查
GET(GET请求) /toolsMCP工具列表及其输入方案
帖子/mcp兼容客户端的MCP JSON-RPC 2.0终端点

远程参考服务器

  • 基础URL: http://:8084
  • 端点MCP: http://:8084/mcp
  • 健康检查: http://:8084/health

当你将服务器发布到其他主机时,请将IP替换为你部署的IP。

🧰 可用的MCP工具

工具返回的数据主要参数
get_subjects分页显示的课程列表startlimitfull
search_subjects按课程代码或名称搜索课程querylanguage
get_degrees完整学位目录full
search_degrees学位搜索querylanguage
get_locations位置(楼宇、教室、实验室)full
search_locations搜索位置query
get_class_scheduleiCalendar格式的课程表yeardegree_id
get_exam_scheduleiCalendar格式的考试日程表yeardegree_id

所有工具都返回结构化的JSON数据,并在适用时提供多语言信息。

🤖 连接MCP客户

重要提示: 在连接任何客户端之前,MCP服务器必须正在运行(本地或Docker中)。请确认 curl http://127.0.0.1:8084/health o curl http://localhost:8084/health 用于Docker。

一般建议

  • MCP终端通过HTTP使用JSON-RPC 2.0协议;任何兼容的客户端都可以使用它。
  • 确保端口(8084 (默认情况下)可从你的机器或SSH隧道访问。
  • 对于公共环境,请根据您的策略添加身份验证或安全代理。
  • 如果你在本地使用Docker: 服务器将在 http://localhost:8084/mcp确保容器正在运行后再连接客户端。

MCP 检查员(npx)

npx @modelcontextprotocol/inspector
  1. 打开浏览器(通常打开 http://localhost:3000)。
  2. 选择 可流式传输的HTTP 作为交通工具。
  3. 输入端点URL(http://127.0.0.1:8084/mcp 如果你在本地使用 Docker,或者 http://:8084/mcp (对于远程服务器)。
  4. 脉搏 连接 并尝试使用任意一种可用的八种工具之一。

VS Code(MCP扩展)

添加到 settings.json 用户或工作区:

{
  "mcp.servers": {
    "mcp-uji-academic": {
      "transport": "http",
      "url": "http://127.0.0.1:8084/mcp"
    }
  }
}

如果你使用SSH隧道:

ssh -L 8084:localhost:8084 usuario@IP_SERVIDOR_REMOTO

并将URL更改为 http://127.0.0.1:8084/mcp

Claude Desktop(可译为“Claude桌面版”或根据上下文简化为“桌面版Claude”)

Claude Desktop(可译为“Claude桌面版”) 它可以自行调用远程HTTP服务器:它只执行本地命令。因此,你需要在你的机器上运行MCP服务器 之前 克劳德启动了它。

添加到你的 claude_desktop_config.json:

{
  "mcpServers": {
    "mcp-uji-academic": {
      "command": "uv",
      "args": [
        "run",
        "start_server.py",
        "--host",
        "127.0.0.1",
        "--port",
        "8084"
      ],
      "cwd": "/ruta/completa/a/MCP_UJI_academic"
    }
  }
}
  • 调整 cwd 到项目的实际路线。
  • 里面的命令 args 必须在一行内;JSON 不支持手动换行(\) 在字符串内部。
  • 修改文件后,重启Claude Desktop以重新加载设置。
npx @modelcontextprotocol/inspector 它是一个测试工具。VS Code和Claude需要各自的JSON配置。

🧪 测试与验证

# Test de integración (arranca el servidor temporalmente y verifica endpoints)
# Asegúrate de que el puerto 8084 esté libre antes de ejecutar
uv run python integration_test.py

# Checks manuales rápidos
curl http://127.0.0.1:8084/health
curl -X POST http://127.0.0.1:8084/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc": "2.0", "id": 1, "method": "ping"}'

📁 项目结构

MCP_UJI_academic/
├── api_client.py       # Cliente HTTP con caché y parseo iCalendar
├── integration_test.py # Prueba de arranque y endpoints HTTP
├── mcp_server.py       # FastAPI con endpoints HTTP y MCP JSON-RPC
├── models.py           # Modelos Pydantic para datos académicos
├── start_server.py     # Lanzador de conveniencia
├── pyproject.toml      # Configuración y dependencias
└── README.md           # Documentación (este archivo)

🛠️ 问题解决

问题如何解决
端口8084已被占用lsof -i :8084 以识别该进程。终止该进程或使用 --port 8001 以更改端口。
连接超时或被拒绝确认服务器正在运行,并且 curl http://:8084/health检查防火墙或SSH隧道。
与uv不一致的依赖项运行 uv sync --reinstall 以重新安装依赖项。
UJI公共API的错误检查服务器日志;API可能较慢或不稳定。请稍后再试。
Docker: 容器无响应确保端口已正确映射(-p 8084:8084)。 美国 docker logs 以查看日志。
Claude Desktop 无法连接确认命令中 claude_desktop_config.json 要正确,并且 cwd 指向项目路径。重启Claude。

🌍 使用的外部API

  • 基本URL: https://ujiapps.uji.es/lod-autorest/api/
  • 可用数据:课程、研究、地点和日历,格式为JSON/iCalendar

📄 许可和支持

  • 许可证:MIT
  • 有问题或遇到故障?请先打开一个议题,查看故障排除表或运行集成测试,再进行报告。

______________________________________________________________________

该项目旨在简化在MCP生态系统内访问UJI学术信息的程序化途径。利用并自动化您的教育流程!

目录标签

目录标签

PythonClaude云端部署学术数据本地部署JSON-RPCHTTP服务器大学信息数据缓存

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP