Mcp

Mcp

🚀 Moodle MCP 服务器

Moodle MCP 服务器是一个基于 MCP(模型上下文协议)的服务器,它能让大语言模型(LLMs)与 Moodle 平台进行交互,以管理课程、学生、作业和测验等内容。

✨ 主要特性

学生管理工具

  • list_students - 获取课程中注册学生的列表
    • 显示每个学生的 ID、姓名、电子邮件和最后访问时间

作业管理工具

  • get_assignments - 获取课程中所有可用的作业
    • 包含作业的 ID、名称、描述、截止日期和最高分数等信息
  • get_student_submissions - 查看学生对特定作业的提交情况
    • 需要作业 ID,可选学生 ID
  • provide_assignment_feedback - 为学生的作业提交提供分数和评论
    • 需要学生 ID、作业 ID、分数和反馈评论

测验管理工具

  • get_quizzes - 获取课程中所有可用的测验
    • 包含测验的 ID、名称、描述、开放/关闭日期和最高分数等信息
  • get_quiz_attempts - 查看学生对特定测验的尝试情况
    • 需要测验 ID,可选学生 ID
  • provide_quiz_feedback - 为测验尝试提供评论
    • 需要尝试 ID 和反馈评论

📦 安装指南

环境要求

  • Node.js(v14 或更高版本)
  • 具有适当权限的 Moodle API 令牌
  • Moodle 课程 ID

安装步骤

  1. 克隆此仓库:
git clone https://github.com/your-username/moodle-mcp-server.git
cd moodle-mcp-server
  1. 安装依赖:
npm install
  1. 创建一个 .env 文件,并进行如下配置:
MOODLE_API_URL=https://your-moodle.com/webservice/rest/server.php
MOODLE_API_TOKEN=your_api_token
MOODLE_COURSE_ID=1  # 替换为你的课程 ID
  1. 构建服务器:
npm run build

💻 使用示例

与 Claude 配合使用

要在 Claude Desktop 中使用该服务器,需添加服务器配置:

在 MacOS 系统中:~/Library/Application Support/Claude/claude_desktop_config.json
在 Windows 系统中:%APPDATA%/Claude/claude_desktop_config.json

{
"mcpServers": {
"moodle-mcp-server": {
"command": "/path/to/node",
"args": [
"/path/to/moodle-mcp-server/build/index.js"
],
"env": {
"MOODLE_API_URL": "https://your-moodle.com/webservice/rest/server.php",
"MOODLE_API_TOKEN": "your_moodle_api_token",
"MOODLE_COURSE_ID": "your_course_id"
},
"disabled": false,
"autoApprove": []
}
}
}

对于 Windows 用户,路径需使用反斜杠:

{
"mcpServers": {
"moodle-mcp-server": {
"command": "C:\\path\\to\\node.exe",
"args": [
"C:\\path\\to\\moodle-mcp-server\\build\\index.js"
],
"env": {
"MOODLE_API_URL": "https://your-moodle.com/webservice/rest/server.php",
"MOODLE_API_TOKEN": "your_moodle_api_token",
"MOODLE_COURSE_ID": "your_course_id"
},
"disabled": false,
"autoApprove": []
}
}
}

配置完成后,Claude 就能与你的 Moodle 课程进行交互,实现以下功能:

  • 查看学生列表及其提交情况
  • 为作业提供评论和分数
  • 查看测验尝试并提供反馈

📚 详细文档

开发

若要进行开发并实现自动重建,可运行以下命令:

npm run watch

调试

MCP 服务器通过标准输入输出进行通信,这可能会使调试变得困难。我们建议使用 MCP Inspector

npm run inspector

Inspector 会提供一个 URL,你可以在浏览器中访问调试工具。

获取 Moodle API 令牌

  1. 以管理员身份登录到你的 Moodle 网站
  2. 进入网站管理 > 插件 > 网络服务 > 管理令牌
  3. 创建一个具有管理课程所需权限的新令牌
  4. 复制生成的令牌,并将其添加到你的 .env 文件中

🔧 技术细节

安全注意事项

  • 切勿共享你的 .env 文件或 Moodle API 令牌
  • 确保 MCP 服务器仅能访问其需要管理的课程
  • 使用具有最低必要权限的令牌

📄 许可证

本项目采用 MIT 许可证。

  • 0 关注
  • 0 收藏,25 浏览
  • system 提出于 2025-10-03 00:27

相似服务问题

相关AI产品